Reinstalar Linux

Sucede con regularidad

Índice

Necesito tener una secuencia estándar de tareas postinstalación para referencia, así que la registro aquí.

Muy vacío ubuntu desktop

¿Dónde?

Normalmente uso distribuciones basadas en ubuntu. La instalación más reciente es Mint 21.3 (basada en ubuntu 22.04).

¿Cómo?

algunas herramientas agradables

sudo apt-get install git git-lfs gimp mc flameshot htop nvtop chkservice

# si el trabajo gráfico está en el horizonte
sudo apt-get install imagemagick
git lfs install

# si se requiere manipulación de pdf
sudo apt-get install poppler-utils

manipulación de json

Ejemplos ver en Hoja de trucos de Bash

sudo apt-get install jq jo

Instalar controladores de NVidia

Método 1

Eliminar controladores de NVidia locales

sudo apt-get purge 'nvidia*'
sudo apt-get autoremove
sudo apt-get autoclean

Añadir PPA y actualizar referencias de paquetes locales

sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update

Verificar qué versión de controlador recomienda NVidia para su dispositivo

ubuntu-drivers devices

Instalarla

sudo apt-get install nvidia-driver-535
sudo reboot

Verificar que pueda ver su GPU y ver qué versión está instalada

nvidia-smi

Método 2

Ver aquí para su versión del sistema operativo: https://developer.nvidia.com/cuda-downloads

Para instalar la versión del módulo del kernel abierto:

sudo apt-get install -y nvidia-driver-555-open
sudo apt-get install -y cuda-drivers-555

Instalar CUDA

El mismo NVidia oficial: https://developer.nvidia.com/cuda-downloads

wget https://developer.download.nvidia.com/compute/cuda/repos/ubuntu2204/x86_64/cuda-ubuntu2204.pin
sudo mv cuda-ubuntu2204.pin /etc/apt/preferences.d/cuda-repository-pin-600
wget https://developer.download.nvidia.com/compute/cuda/12.9.0/local_installers/cuda-repo-ubuntu2204-12-9-local_12.9.0-575.51.03-1_amd64.deb
sudo dpkg -i cuda-repo-ubuntu2204-12-9-local_12.9.0-575.51.03-1_amd64.deb
sudo cp /var/cuda-repo-ubuntu2204-12-9-local/cuda-*-keyring.gpg /usr/share/keyrings/
sudo apt-get update
sudo apt-get -y install cuda-toolkit-12-9

flatpacks

vlc, obsidian, nextcloud desktop, foliate, dbeaver

ungoogled-chromium

https://github.com/ungoogled-software/ungoogled-chromium

echo 'deb http://download.opensuse.org/repositories/home:/ungoogled_chromium/Ubuntu_Jammy/ /' | sudo tee /etc/apt/sources.list.d/home:ungoogled_chromium.list
curl -fsSL https://download.opensuse.org/repositories/home:ungoogled_chromium/Ubuntu_Jammy/Release.key | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/home_ungoogled_chromium.gpg > /dev/null
sudo apt update
sudo apt install ungoogled-chromium

golang

Esta instalación instala una versión bastante antigua, actualmente 1.18

sudo apt-get install golang-go

así que, vaya a https://go.dev/dl/ y elija su versión más reciente, luego,

sudo bash

y

wget https://go.dev/dl/go1.24.3.linux-amd64.tar.gz
rm -rf /usr/local/go && tar -C /usr/local -xzf go1.24.3.linux-amd64.tar.gz

luego agregue a $HOME/.profile

export PATH=$PATH:/usr/local/go/bin

luego

source $HOME/.profile
go version

vs code

https://code.visualstudio.com/docs/setup/linux

Instalar el paquete deb (debe descargarlo primero). La instalación del paquete .deb instalará automáticamente el repositorio de apt y la clave de firma para habilitar la actualización automática usando el gestor de paquetes del sistema.

O hágalo manualmente a continuación:

sudo apt-get install wget gpg
wget -qO- https://packages.microsoft.com/keys/microsoft.asc | gpg --dearmor > packages.microsoft.gpg
sudo install -D -o root -g root -m 644 packages.microsoft.gpg /etc/apt/keyrings/packages.microsoft.gpg
sudo sh -c 'echo "deb [arch=amd64,arm64,armhf signed-by=/etc/apt/keyrings/packages.microsoft.gpg] https://packages.microsoft.com/repos/code stable main" > /etc/apt/sources.list.d/vscode.list'
rm -f packages.microsoft.gpg

Luego actualice la caché de paquetes e instale el paquete usando:

sudo apt install apt-transport-https
sudo apt update
sudo apt install code # o code-insiders

Instalar extensiones de vs code:

Python, C#, Go, Hugohelper, Front Matter CMS, React*, Flutter

El vs code estándar tiene algunos datos de uso - parcialmente eliminados en configuración:usuario:aplicación:telemetría=>apagado … pero aún así …

VSCodium flatpack es la versión sin telemetría, no muy atrás.

Python y Anaconda

Instalar pip

sudo apt install python3-pip

https://www.anaconda.com/download/success

descargar la versión linux como

wget https://repo.anaconda.com/archive/Anaconda3-2024.06-1-Linux-x86_64.sh

y ejecutarlo

bash Anaconda3-2024.06-1-Linux-x86_64.sh

prestar atención al final:

Si prefiere que el entorno base de conda no se active al inicio,
   ejecute el siguiente comando cuando conda esté activado:

conda config --set auto_activate_base false

Puede revertir esto ejecutando `conda init --reverse $SHELL`? [sí|no]

hugo

https://gohugo.io/installation/linux/

por ejemplo esto: https://github.com/gohugoio/hugo/releases/tag/v0.124.1

descargar e instalar hugo_extended_0.124.1_linux-amd64.deb

kubectl

https://kubernetes.io/docs/tasks/tools/install-kubectl-linux/#install-using-native-package-management

sudo apt-get update
# apt-transport-https puede ser un paquete falso; si es así, puede omitir ese paquete
sudo apt-get install -y apt-transport-https ca-certificates curl
# Si la carpeta /etc/apt/keyrings no existe, debe crearse antes del comando curl, lea la nota a continuación.
# sudo mkdir -p -m 755 /etc/apt/keyrings
curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.29/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg
sudo chmod 644 /etc/apt/keyrings/kubernetes-apt-keyring.gpg # permite que los programas APT no privilegiados lean este anillo de claves
# Esto sobrescribe cualquier configuración existente en /etc/apt/sources.list.d/kubernetes.list
echo 'deb [signed-by=/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.29/deb/ /' | sudo tee /etc/apt/sources.list.d/kubernetes.list
sudo chmod 644 /etc/apt/sources.list.d/kubernetes.list   # ayuda a herramientas como command-not-found a funcionar correctamente
sudo apt-get update
sudo apt-get install -y kubectl

claves ssh

copiar claves ssh a ~/.ssh

luego copiar id a todas las direcciones ip en su laboratorio

ssh-copy-id username@ipaddr

docker

sudo docker images

desinstalar existente

for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done

Instalar usando el repositorio de apt

# Añadir la clave oficial de Docker:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Añadir el repositorio a las fuentes de Apt:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$VERSION_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

si usa derivados de ubuntu necesita usar UBUNTU_CODENAME en lugar de VERSION_CODENAME, como

# Añadir la clave oficial de Docker:
sudo apt-get update
sudo apt-get install ca-certificates curl
sudo install -m 0755 -d /etc/apt/keyrings
sudo curl -fsSL https://download.docker.com/linux/ubuntu/gpg -o /etc/apt/keyrings/docker.asc
sudo chmod a+r /etc/apt/keyrings/docker.asc

# Añadir el repositorio a las fuentes de Apt:
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.asc] https://download.docker.com/linux/ubuntu \
  $(. /etc/os-release && echo "$UBUNTU_CODENAME") stable" | \
  sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update

Instalar la última versión:

sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin

Verificar

sudo docker run hello-world

Opcionalmente, agregar el usuario actual al grupo docker

usermod -aG docker $USER

portainer

Para comenzar, necesitará:

  • La última versión de Docker instalada y funcionando
  • Acceso sudo en la máquina que alojará la instancia del servidor de Portainer
  • Por defecto, el servidor de Portainer expondrá la interfaz de usuario a través del puerto 9443 y expondrá un servidor de túnel TCP a través del puerto 8000. El último es opcional y solo es necesario si planea usar las características de cálculo de Edge con agentes de Edge.

Requisitos:

  • SELinux está deshabilitado en la máquina que ejecuta Docker. Si requiere SELinux, deberá pasar la bandera –privileged a Docker al desplegar Portainer.

Primero, cree el volumen que usará el servidor de Portainer para almacenar su base de datos:

sudo docker volume create portainer_data

Luego, descargue e instale el contenedor del servidor de Portainer:

sudo docker run -d -p 8000:8000 -p 9443:9443 --name portainer --restart=always -v /var/run/docker.sock:/var/run/docker.sock -v portainer_data:/data portainer/portainer-ce:latest

verificar

sudo docker ps

Navegar a: https://localhost:9443

El nombre de usuario es admin, establezca la contraseña en la interfaz de usuario

Agente de Portainer en Kubernetes

Crear entorno de k8s, agente

kubectl apply -f https://downloads.portainer.io/ce2-19/portainer-agent-k8s-lb.yaml
kubectl get services --all-namespaces

luego copiar y pegar la dirección ip externa del servicio de portainer en la interfaz de usuario, no olvide el puerto 9001

.netcore sdk

https://learn.microsoft.com/en-gb/dotnet/core/install/linux-ubuntu-install?tabs=dotnet8&pivots=os-linux-ubuntu-2204

sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-8.0 aspnetcore-runtime-8.0

o si no se espera aspnet

sudo apt-get update && \
  sudo apt-get install -y dotnet-sdk-8.0 dotnet-runtime-8.0

Dependencias

Cuando instala con un gestor de paquetes, estas bibliotecas se instalan para usted. Pero, si instala .NET manualmente o publica una aplicación autocontenida, deberá asegurarse de que estas bibliotecas estén instaladas:

  • libc6
  • libgcc-s1
  • libgssapi-krb5-2
  • libicu70
  • liblttng-ust1
  • libssl3
  • libstdc++6
  • libunwind8
  • zlib1g

Las dependencias pueden instalarse con el comando apt install. El siguiente fragmento demuestra la instalación de la biblioteca zlib1g:

sudo apt install zlib1g

awscli

Para instalar awscli desde el repositorio de ubuntu (en julio de 2024 obtendrá v1.22.34-1):

sudo apt install awscli

Para verificar la versión de awscli instalada en su pc:

aws --version

O para obtener la versión más reciente recién hecha por Amazon (2.0): https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html

actualmente:

curl "https://awscli.amazonaws.com/awscli-exe-linux-x86_64.zip" -o "awscliv2.zip"
unzip awscliv2.zip
sudo ./aws/install --bin-dir /usr/local/bin --install-dir /usr/local/aws-cli --update

Terraform

Terraform puede instalarse de muchas maneras, vea aquí: https://developer.hashicorp.com/terraform/install

Estoy instalando desde el repositorio de hashicorp para ubuntu

wget -O- https://apt.releases.hashicorp.com/gpg | sudo gpg --dearmor -o /usr/share/keyrings/hashicorp-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/hashicorp-archive-keyring.gpg] https://apt.releases.hashicorp.com $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/hashicorp.list
sudo apt update && sudo apt install terraform

Y para linux mint tenga cuidado, el instalador de terraform no funciona correctamente. Verifique las salidas de estos comandos

lsb_release -cs

cat /etc/upstream-release/lsb-release 

Ahora vaya a Fuentes de Software y reemplace en Hashicorp ‘virginia’ con ‘Jammy’ y vuelva a ejecutar

sudo apt update && sudo apt install terraform

Para verificar que terraform se instaló correctamente, ejecute

terraform version

Control de servicios de systemd

Puede usar

systemctl status
systemctl stop some-service
systemctl disable some-service 

o puede usar chkservice

sudo apt-get install chkservice

sudo chkservice

Enlaces útiles