From dbf890f969dfde7da14f07bef6713eaf701cb484 Mon Sep 17 00:00:00 2001 From: piccihud Date: Tue, 22 Oct 2024 21:28:26 +0200 Subject: [PATCH] gestione pacchetti in debian --- 101/007_gestione_pacchetti_debian.md | 165 +++++++++++++++++++++++++++ 1 file changed, 165 insertions(+) diff --git a/101/007_gestione_pacchetti_debian.md b/101/007_gestione_pacchetti_debian.md index e69de29..c333b97 100644 --- a/101/007_gestione_pacchetti_debian.md +++ b/101/007_gestione_pacchetti_debian.md @@ -0,0 +1,165 @@ +# Gestione dei pacchetti + +## dpkg + +*Debian Package* (dpkg) e' il comando per installare e rimuovere pacchetti su sistemi basati su Debian. + +### Installazione + +```bash +dpkg -i PACKAGENAME.deb +``` +dpkg, se le dipendenze del pacchetto non sono soddisfatte, non installera' il pacchetto. Elenchera' quali dipendenze mancano, ma sara' compito dell'utente installarle. + +Per forzare l'installazione usare il parametro `-f` o `--force`. + +### Disinstallazione + +```bash +dpkg -r PACKAGENAME +``` + +Un pacchetto non puo' essere rimosso, se non sia stato rimosso anche ogni altro pacchetto che dipende da esso. + +```bash +dpkg -P PACKAGENAME +``` + +In questo modo vengono rimossi anche i file di configurazione, che altrimenti restano nel sistema. + +### Ottenere informazioni sui pacchetti + +```bash +dpkg -I PACKAGENAME +``` + +### Elencare i pacchetti + +Per avere una lista di tutti i pacchetti installati sul sistema: + +```bash +dpkg --get-selections +``` +Per avere un elenco di tutti i file installati da un pacchetto: + +```bash +dpkg -L PACKAGENAME +``` + +### Riconfigurare i pacchetti + +Per ripristinare le impostazioni di un pacchetto allo stato iniziale: + +```bash +dpkg-reconfigure PACKAGENAME +``` + +## APT + +*Advanced Package Tool* e' un sistema di gestione dei pacchetti che *risolve in automatico le dipende*. E' come un *front-end* di dpkg, che ne semplifica l'utilizzo e ne colma diverse lacune. + +Esistono diverse utility: + +- **apt-get** +- **apt-cache** +- **apt-file** +- **apt**: combina le funzionalita' di apt-get e apt-cache + +### Aggiornare l'indice dei pacchetti + +```bash +apt-get update +``` + +### Installare e rimuovere pacchetti + +Prima di installare un pacchetto, buona prassi e' quella di aggiornare gli indici + +```bash +apt-get install PACKAGENAME + +apt-get remove PACKAGENAME +``` +APT risolve automaticamente le dipendenze. Verranno quindi installati anche degli eventuali pacchetti aggiuntivi richiesti dal pacchetto che si sta installando. Verranno anche rimossi i pacchetti che dipendono dal pacchetto che si sta rimuovendo. + +I file di configurazione rimangono sul sistema. Per eliminare qualsiasi cosa associata la pacchetto: + +```bash +apt-get purge PACKAGENAME +``` + +### Riparare dipende + +Per risolvere dipendenze errate o mancanti: + +```bash +apt-get install -f +``` + +### Aggiornare i pacchetti + +Per aggiornare tutti i pacchetti: + +```bash +apt-get upgrade +``` + +Per aggiornare un singolo pacchetto: + +```bash +apt-get upgrade PACKAGENAME +``` + +### Cache locale + +Quando si installa o aggiorna un pacchetto, il corrispondente file *.deb *viene scaricato in una cartella locale di cache, che di default e': `/var/cache/apt/archives/`. I file parzialmente scaricati si trovano invece in `/var/cache/apt/archives/partial`. Per svuotare la directory di cache usare il comando `apt-cache clean`. + +### Ricercare pacchetti + +```bash +apt-cache search +``` + +Il comando seguente mostra i dettagli su un determinato pacchetto: + +```bash +apt-cache show PACKAGENAME +``` + +### Elencare il contenuto di un pacchetto + +```bash +apt-file list PACKAGENAME +``` + +### Repository + +APT utilizza una lista di fonti (*repository*) per sapere da dove ottenere i pacchetti. Questo fonti sono memorizzate nel file `/etc/apt/sources.list` e nei file contenuti nella directory `/etc/apt/sources.list.d/`. + +la sintassi: + +```bash +cat /etc/apt/sources.list + +# Debian SID +deb http://deb.debian.org/debian/ unstable main contrib non-free non-free-firmware + +# Tipo archivio URL distribuzione componenti +``` +#### Tipo + +File binari (.deb) o sorgenti, *deb-src* + +#### Componenti + +Diversi tra le distribuzioni, su Debian i componenti principali sono: + +- **main**: pacchetti conformi alle *Debian Free Software Guidelines* (DFSG) +- **contrib**: pacchetti conformi alle DFSG, ma che dipendono da pacchetti che non sono in main +- **non-free**: pacchetti non conformi alle DFSG +- **security**: aggiornamenti di sicurezza +- **backports**: versioni piu' recenti dei pacchetti che si trovano in main +``` + + +