Salta ai contenuti

Gestore di Pacchetti APT

Comandi e workflow APT (Advanced Package Tool) completi per la gestione dei pacchetti in Debian e Ubuntu.

Installazione e Aggiornamenti

Operazioni Base sui Pacchetti

ComandoDescrizione
sudo apt updateAggiorna l’indice dei pacchetti
sudo apt upgradeAggiorna tutti i pacchetti
sudo apt full-upgradeAggiorna con risoluzione delle dipendenze
sudo apt install package_nameInstalla pacchetto
sudo apt remove package_nameRimuovi pacchetto
sudo apt purge package_nameRimuovi file di package e config
sudo apt autoremoveRimuovi dipendenze non utilizzate

Installazione Avanzata

ComandoDescrizione
sudo apt install package1 package2Installa più pacchetti
sudo apt install package=versionInstalla versione specifica
sudo apt install ./package.debInstalla file .deb locale
sudo apt reinstall package_nameReinstalla pacchetto
sudo apt install --no-install-recommends packageInstalla senza pacchetti raccomandati

Informazioni sui Pacchetti

Ricerca e Informazioni

ComandoDescrizione
apt search keywordCerca pacchetti
apt show package_nameMostra informazioni del pacchetto
apt list --installedElenca pacchetti installati
apt list --upgradableElenca pacchetti aggiornabili
apt list package_nameVerifica se il package è disponibile
dpkg -lElenca tutti i pacchetti installati
`dpkg -lgrep package`

Dipendenze dei Pacchetti

ComandoDescrizione
apt depends package_nameMostra dipendenze del package
apt rdepends package_nameMostra dipendenze inverse
apt-cache policy package_nameMostra policy del pacchetto

Gestione Repository

Operazioni sui Repository

ComandoDescrizione
sudo add-apt-repository ppa:user/repoAggiungi repository PPA
sudo add-apt-repository --remove ppa:user/repoRimuovi repository PPA
sudo apt edit-sourcesModifica elenco fonti
ls /etc/apt/sources.list.d/Elenca repository aggiuntivi

Chiavi GPG

ComandoDescrizione
sudo apt-key listElenca chiavi GPG
`wget -qO - https://example.com/key.gpg \sudo apt-key add -`
sudo apt-key del KEYIDRimuovi chiave GPG

Manutenzione del Sistema

Operazioni di Pulizia

ComandoDescrizione
sudo apt autocleanPulisci cache del pacchetto
sudo apt cleanRimuovi tutti i pacchetti in cache
sudo apt autoremove --purgeRimuovi pacchetti e configurazioni non utilizzati
sudo apt-get checkVerifica delle dipendenze interrotte

Riparare Pacchetti Danneggiati

ComandoDescrizione
sudo apt --fix-broken installCorreggere le dipendenze interrotte
sudo dpkg --configure -aConfigurare pacchetti non configurati
sudo apt-get -f installForza installazione per risolvere le dipendenze

File di Configurazione

Configurazione APT

FileDescrizione
/etc/apt/sources.listLista principale dei repository
/etc/apt/sources.list.d/File repository aggiuntivi
/etc/apt/apt.confConfigurazione APT
/etc/apt/preferencesBlocco del pacchetto

Esempio sources.list

# Ubuntu 22.04 LTS (Jammy Jellyfish)
deb http://archive.ubuntu.com/ubuntu/ jammy main restricted
deb http://archive.ubuntu.com/ubuntu/ jammy-updates main restricted
deb http://archive.ubuntu.com/ubuntu/ jammy universe
deb http://archive.ubuntu.com/ubuntu/ jammy-updates universe
deb http://archive.ubuntu.com/ubuntu/ jammy multiverse
deb http://archive.ubuntu.com/ubuntu/ jammy-updates multiverse
deb http://archive.ubuntu.com/ubuntu/ jammy-backports main restricted universe multiverse
deb http://security.ubuntu.com/ubuntu/ jammy-security main restricted
deb http://security.ubuntu.com/ubuntu/ jammy-security universe
deb http://security.ubuntu.com/ubuntu/ jammy-security multiverse

Assegnazione Priorità Pacchetti

Bloccare Versione Pacchetto

# /etc/apt/preferences.d/package-pin
Package: package_name
Pin: version 1.2.3*
Pin-Priority: 1001

Bloccare Repository

# /etc/apt/preferences.d/repo-pin
Package: *
Pin: release o=Ubuntu,a=jammy-backports
Pin-Priority: 100

Utilizzo Avanzato

Simulazione e Test

ComandoDescrizione
apt list --upgradable -aMostra tutte le versioni disponibili
sudo apt upgrade --dry-runSimula aggiornamento
sudo apt install package --dry-runSimula installazione

Registrazione e Cronologia

ComandoDescrizione
cat /var/log/apt/history.logVisualizza cronologia installazione
cat /var/log/apt/term.logVisualizza log dettagliati
grep " install " /var/log/dpkg.logVisualizza log di installazione dpkg

Risoluzione Problemi

Problemi Comuni

ProblemaSoluzione
Package conflictssudo apt --fix-broken install
Locked databasesudo rm /var/lib/dpkg/lock*
Corrupted cachesudo apt clean && sudo apt update
Unmet dependenciessudo apt -f install

Recupero di Emergenza

ComandoDescrizione
sudo dpkg --force-depends --remove packageRimuovi forzatamente il pacchetto problematico
sudo apt-get download packageScarica il pacchetto senza installarlo
sudo dpkg -i --force-depends package.debForza installazione file .deb

Migliori Pratiche

Sicurezzasudo apt update && sudo apt upgradeAggiornamenti Regolari: Eseguire