Riinstallare Linux
Accade regolarmente
Occorre avere una sequenza standard di compiti post-installazione di riferimento, quindi la registro qui.
Dove
Di solito uso distro basate su ubuntu. L’ultima installazione è Mint 21.3 (basata su ubuntu 22.04).
Come
alcuni strumenti utili
sudo apt-get install git git-lfs gimp mc flameshot htop nvtop chkservice
# se il lavoro grafico è previsto
sudo apt-get install imagemagick
git lfs install
# se necessario manipolare alcuni pdf
sudo apt-get install poppler-utils
manipolazione json
Esempi si vedono in Bash Cheat Sheet
sudo apt-get install jq jo
Installazione dei driver NVidia
Metodo 1
Rimuovi i driver NVidia locali
sudo apt-get purge 'nvidia*'
sudo apt-get autoremove
sudo apt-get autoclean
Aggiungi il PPA e aggiorna le referenze locali dei pacchetti
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt-get update
Verifica quale versione del driver NVidia raccomanda per il tuo dispositivo
ubuntu-drivers devices
Installa
sudo apt-get install nvidia-driver-535
sudo reboot
Verifica che possa vedere la tua GPU e quale versione è installata
nvidia-smi
Metodo 2
Vedi qui per la versione del tuo sistema operativo: https://developer.nvidia.com/cuda-downloads
Per installare la versione del modulo kernel open:
sudo apt-get install -y nvidia-driver-555-open
sudo apt-get install -y cuda-drivers-555
Installazione CUDA
Lo stesso NVidia ufficiale: 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
Questo installa una versione abbastanza vecchia, attualmente 1.18
sudo apt-get install golang-go
quindi, vai a https://go.dev/dl/ e scegli la tua versione più recente, quindi,
sudo bash
e
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
poi aggiungi a $HOME/.profile
export PATH=$PATH:/usr/local/go/bin
poi
source $HOME/.profile
go version
vs code
https://code.visualstudio.com/docs/setup/linux
Installa il pacchetto deb (devi scaricarlo prima). L’installazione del pacchetto .deb installerà automaticamente il repository apt e la chiave di firma per abilitare l’aggiornamento automatico utilizzando il gestore pacchetti del sistema.
Oppure fai lo stesso manualmente qui sotto:
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
Poi aggiorna la cache dei pacchetti e installa il pacchetto utilizzando:
sudo apt install apt-transport-https
sudo apt update
sudo apt install code # o code-insiders
Installare le estensioni di vs code:
Python, C#, Go, Hugohelper, Front Matter CMS, React*, Flutter
Il vs code standard ha alcuni dati di telemetria - parzialmente rimossi nelle impostazioni: user:application:telemetry=>off … ma non completamente …
VSCodium flatpack è una versione senza telemetria, non molto indietro.
Python e Anaconda
Installa pip
sudo apt install python3-pip
https://www.anaconda.com/download/success
scarica la versione linux come
wget https://repo.anaconda.com/archive/Anaconda3-2024.06-1-Linux-x86_64.sh
e eseguilo
bash Anaconda3-2024.06-1-Linux-x86_64.sh
presta attenzione alla fine:
Se preferisci che l'ambiente base di conda non venga attivato all'avvio,
esegui il seguente comando quando conda è attivato:
conda config --set auto_activate_base false
Puoi annullare questa operazione eseguendo `conda init --reverse $SHELL`? [yes|no]
hugo
https://gohugo.io/installation/linux/
per esempio questo: https://github.com/gohugoio/hugo/releases/tag/v0.124.1
scarica e installa hugo_extended_0.124.1_linux-amd64.deb
kubectl
sudo apt-get update
# apt-transport-https potrebbe essere un pacchetto finto; se è così, puoi saltare quel pacchetto
sudo apt-get install -y apt-transport-https ca-certificates curl
# Se la cartella /etc/apt/keyrings non esiste, dovrebbe essere creata prima del comando curl, leggi la nota qui sotto.
# 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 # permette ai programmi APT non privilegiati di leggere questa chiave
# Questo sovrascrive qualsiasi configurazione esistente in /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 # aiuta gli strumenti come command-not-found a funzionare correttamente
sudo apt-get update
sudo apt-get install -y kubectl
chiavi ssh
copia le chiavi ssh in ~/.ssh
poi copia l’id in tutti gli ipaddrs del tuo laboratorio
ssh-copy-id username@ipaddr
docker
sudo docker images
disinstalla l’esistente
for pkg in docker.io docker-doc docker-compose docker-compose-v2 podman-docker containerd runc; do sudo apt-get remove $pkg; done
Installazione utilizzando il repository apt
# Aggiungi la chiave ufficiale di 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
# Aggiungi il repository a Apt sources:
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
se utilizzi derivati di ubuntu devi utilizzare UBUNTU_CODENAME invece di VERSION_CODENAME, come
# Aggiungi la chiave ufficiale di 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
# Aggiungi il repository a Apt sources:
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
Installa l’ultima versione:
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin
Verifica
sudo docker run hello-world
Opzionalmente, aggiungi l’utente corrente al gruppo docker
usermod -aG docker $USER
portainer
- https://www.portainer.io/install
- https://docs.portainer.io/start/install-ce
- https://docs.portainer.io/start/install-ce/server
- https://docs.portainer.io/start/install-ce/server/docker/linux
Per iniziare, avrai bisogno di:
- L’ultima versione di Docker installata e funzionante
- Accesso sudo sulla macchina che ospiterà l’istanza del server Portainer
- Per default, Portainer Server esporrà l’interfaccia utente sulla porta 9443 e un server tunnel TCP sulla porta 8000. L’ultimo è opzionale e è necessario solo se hai intenzione di utilizzare le funzionalità Edge con agenti Edge.
Requisiti:
- SELinux è disabilitato sulla macchina che esegue Docker. Se necessiti di SELinux, dovrai passare il flag –privileged a Docker quando deployerai Portainer.
Prima, crea il volume che Portainer Server utilizzerà per archiviare il suo database:
sudo docker volume create portainer_data
Poi, scarica e installa il container Portainer Server:
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
controlla
sudo docker ps
Naviga a: https://localhost:9443
L’username è admin, imposta la password nell’interfaccia utente
Agent di Portainer per Kubernetes
Crea l’ambiente k8s, l’agente
kubectl apply -f https://downloads.portainer.io/ce2-19/portainer-agent-k8s-lb.yaml
kubectl get services --all-namespaces
poi copia e incolla l’indirizzo ip esterno del servizio portainer nell’interfaccia utente, non dimenticare la porta 9001
.netcore sdk
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-8.0 aspnetcore-runtime-8.0
o se non si prevede aspnet
sudo apt-get update && \
sudo apt-get install -y dotnet-sdk-8.0 dotnet-runtime-8.0
Dipendenze
Quando installi con un gestore pacchetti, queste librerie vengono installate per te. Ma, se installi manualmente .NET o pubblichi un’app autocontenuta, devi assicurarti che queste librerie siano installate:
- libc6
- libgcc-s1
- libgssapi-krb5-2
- libicu70
- liblttng-ust1
- libssl3
- libstdc++6
- libunwind8
- zlib1g
Le dipendenze possono essere installate con il comando apt install. Il seguente frammento dimostra l’installazione della libreria zlib1g:
sudo apt install zlib1g
awscli
Per installare awscli dal repository ubuntu (a luglio 2024 ti dà v1.22.34-1):
sudo apt install awscli
Per controllare la versione di awscli installata sul tuo pc:
aws --version
Oppure per ottenere la versione più aggiornata appena rilasciata da Amazon (2.0): https://docs.aws.amazon.com/cli/latest/userguide/getting-started-install.html
attualmente:
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 può essere installato in molti modi, vedi qui: https://developer.hashicorp.com/terraform/install
Sto installando dal repository di hashicorp per 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
E per linux mint fai attenzione, l’installer di terraform non funziona correttamente. Controlla i risultati di questi comandi
lsb_release -cs
cat /etc/upstream-release/lsb-release
Ora vai a Software Sources e sostituisci in Hashicorp ‘virginia’ con ‘Jammy’ e ripeti
sudo apt update && sudo apt install terraform
Per controllare che terraform sia installato correttamente, esegui
terraform version
Controllo dei servizi systemd
Puoi utilizzare
systemctl status
systemctl stop some-service
systemctl disable some-service
o puoi utilizzare chkservice
sudo apt-get install chkservice
sudo chkservice
Link utili
- Bash Cheat Sheet
- Minio come alternativa ad Aws S3. Panoramica e installazione di Minio
- MinIO Parametri della riga di comando Cheatsheet
- Sincronizzazione dei segnalibri con Floccus
- Docker Cheatsheet
- Ollama Cheatsheet
- Markdown Cheatsheet
- Strumenti per manipolare i pdf in Ubuntu - Poppler
- Installare Portainer su Linux
- Installare DBeaver su Linux
- Come avviare finestre del terminale in ordine su Linux Mint Ubuntu
- Spostare i modelli di Ollama in una cartella diversa