3 581
contributi
S3v (discussione | contributi) mNessun oggetto della modifica |
(task di Revisione Wiki #63 - sandbox) |
||
(9 versioni intermedie di 2 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Repository | |||
|precedente=Gestione di un repository con debarchiver | |||
}} | |||
{{Template:APT}} | {{Template:APT}} | ||
{{Versioni compatibili}} | {{Versioni compatibili}} | ||
== Introduzione == | == Introduzione == | ||
Il sistema [[APT]] (Advanced Packaging Tool) è, semplificando, un insieme di strumenti atti a permettere l'installazione e la successiva gestione di moltissimi programmi. Volendo essere più precisi l'apt-system creato dagli sviluppatori di Debian è un insieme di | Il sistema [[APT]] (Advanced Packaging Tool) è, semplificando, un insieme di strumenti atti a permettere l'installazione e la successiva gestione di moltissimi programmi. Volendo essere più precisi l'apt-system creato dagli sviluppatori di Debian è un insieme di strumenti che si interfacciano con il programma [[dpkg]] allo scopo di snellire/agevolare la gestione di pacchetti e [[dipendenze]] nei sistemi Debian GNU/Linux. Notoriamente chi prende confidenza con Debian difficilmente sarà tentato di cambiare distribuzione, e questo anche grazie a questo splendido set di tool.<br> | ||
Esistono due strade per installare un programma sul proprio computer: | Esistono due strade per installare un programma sul proprio computer: | ||
* tramite APT; | * tramite APT; | ||
Riga 14: | Riga 16: | ||
* [[apt-get]], [[apt-cache]] e [[apt-mark]] sono i tre principali comandi contenuti nel pacchetto '''apt''', e insieme costituiscono il modo più basilare e diffuso di gestione dei pacchetti tramite linea di comando. Sono presenti in ogni installazione di Debian. | * [[apt-get]], [[apt-cache]] e [[apt-mark]] sono i tre principali comandi contenuti nel pacchetto '''apt''', e insieme costituiscono il modo più basilare e diffuso di gestione dei pacchetti tramite linea di comando. Sono presenti in ogni installazione di Debian. | ||
* [[apt]], introdotto con Debian 8 ([[Jessie]]) nel pacchetto omonimo assieme ai tre precedenti comandi, per svolgere in modo più semplice e intuitivo le funzioni più basilari di APT con la supervisione dell'utente. | * [[apt]], introdotto con Debian 8 ([[Jessie]]) nel pacchetto omonimo assieme ai tre precedenti comandi, per svolgere in modo più semplice e intuitivo le funzioni più basilari di APT con la supervisione dell'utente. | ||
* [[aptitude]], è lo strumento più avanzato per la gestione dei pacchetti, disponibile sia con interfaccia grafica a caratteri sia con interfaccia a linea di comando. | * [[aptitude]], è lo strumento più avanzato per la gestione dei pacchetti, disponibile sia con interfaccia grafica a caratteri sia con interfaccia a linea di comando. Storico programma presente in ogni installazione standard di Debian dalla sua introduzione fino a [[Jessie]], a partire da Debian 9 ([[Stretch]]) va installato esplicitamente. | ||
* [[synaptic]], disponibile in ambienti grafici come GNOME, KDE, ecc. è tra gli strumenti più semplice da usare, consigliato a tutti ed in particolar modo agli utenti alle prime armi. | * [[synaptic]], disponibile in ambienti grafici come GNOME, KDE, ecc. è tra gli strumenti più semplice da usare, consigliato a tutti ed in particolar modo agli utenti alle prime armi. | ||
e molti altri. | |||
== Breve sommario delle operazioni base di APT == | == Breve sommario delle operazioni base di APT == | ||
Riga 25: | Riga 27: | ||
=== Aggiorna informazioni === | === Aggiorna informazioni === | ||
Aggiorna la lista dei pacchetti disponibili, recuperando le informazioni più aggiornate dai [[repository]]: | Aggiorna la lista dei pacchetti disponibili, recuperando le informazioni più aggiornate dai [[repository]]: | ||
<pre># apt | <pre># apt update</pre> | ||
Sono richiesti [[privilegi di | Sono richiesti [[privilegi di amministrazione]]. | ||
L'operazione va sempre effettuata: | L'operazione va sempre effettuata: | ||
Riga 34: | Riga 36: | ||
=== Aggiornamento del sistema === | === Aggiornamento del sistema === | ||
Aggiorna il sistema (da effettuarsi periodicamente), eseguendo con [[privilegi di | Aggiorna il sistema (da effettuarsi periodicamente), eseguendo con [[privilegi di amministrazione]]: | ||
<pre> | <pre> | ||
# apt | # apt update | ||
# apt | # apt upgrade | ||
</pre> | </pre> | ||
Come già visto il primo comando recupera le informazioni più recenti dai [[repository]], mentre il secondo installa le versioni più aggiornate dei pacchetti già installati, ma senza | Come già visto il primo comando recupera le informazioni più recenti dai [[repository]], mentre il secondo installa le versioni più aggiornate dei pacchetti già installati, installandone di nuovi eventualmente ma senza rimuovere quelli non più necessari. | ||
Per forzare un aggiornamento completo, se il comando precedente non funziona, sempre dopo aver ottenuto i [[privilegi di | Per forzare un aggiornamento completo, se il comando precedente non funziona, sempre dopo aver ottenuto i [[privilegi di amministrazione]]: | ||
<pre> | <pre> | ||
# apt | # apt full-upgrade | ||
</pre> | </pre> | ||
Per una Debian [[stable]] non è in genere necessario, se non per effettuare il passaggio di versione alla successiva quando una nuova stable è rilasciata, | Per una Debian [[stable]] non è in genere necessario, se non per effettuare il passaggio di versione alla successiva quando una nuova stable è rilasciata, preferibilmente dopo aver concluso l'aggiornamento con il metodo precedente. Questa operazione è chiaramente meno conservativa, pertanto va effettuata prestando maggiore attenzione ai pacchetti che saranno rimossi. | ||
=== Installazione e disinstallazione === | === Installazione e disinstallazione === | ||
Per installare un pacchetto e le sue dipendenze tramite APT, se la lista dei pacchetti è aggiornata: | Per installare un pacchetto e le sue dipendenze tramite APT, se la lista dei pacchetti è aggiornata: | ||
<pre># apt | <pre># apt install nomepacchetto</pre> | ||
Per rimuovere un pacchetto precedentemente installato: | Per rimuovere un pacchetto precedentemente installato: | ||
<pre># apt | <pre># apt remove nomepacchetto</pre> | ||
E per rimuovere le sue dipendenze, se non richieste da altri pacchetti (e se non si è impostato un <code>AutomaticRemove</code>; si veda la sezione successiva): | |||
<pre># apt autoremove</pre> | |||
Tutte queste operazioni richiedono [[privilegi di amministrazione]]. | |||
==I | ==Configurazione== | ||
Il principale file di configurazione, per tutti i principali strumenti di '''APT''' (<code>apt</code>, <code>apt-get</code>, <code>aptitude</code>, ecc...), è <code>/etc/apt/apt.conf</code>, eventualmente da creare per le proprie impostazioni personalizzate. <br/> | |||
Le impostazioni di default generate in fase di installazione e quelle create da altri programmi installati sono invece contenute nei file presenti nella directory <code>/etc/apt/apt.conf.d</code>, in modo da non sovrapporsi, e non è generalmente necessario modificarle. | |||
Per modificare il file principale, o crearlo se non esiste, basta utilizzare un editor di testo (per esempio [[nano]]) con [[privilegi di amministrazione]]: | |||
<pre> | |||
# nano /etc/apt/apt.conf | |||
</pre> | |||
(dopo aver apportato le modifiche, premere <code>Ctrl-o</code> per salvare e <code>Ctrl-x</code> per uscire) | |||
=== Esempio di <code>/etc/apt/apt.conf</code> === | |||
<pre> | |||
APT::Clean-Installed "true"; | |||
APT::Get::AutomaticRemove "true"; | |||
APT::Get::Upgrade-Allow-New "true"; | |||
</pre> | |||
Il valore '''"true"''' / '''"false"''' (oppure '''1''' / '''0''') abilita/disabilita un'impostazione. | |||
Di seguito una breve descrizione: | |||
:; <code>APT::Clean-Installed</code> : elimina i pacchetti .deb non più scaricabili ma ancora conservati nella cache, anche se relativi a pacchetti ancora installati nel sistema; | |||
:; <code>APT::Get::AutomaticRemove</code> : effettua in automatico la rimozione delle dipendenze non più necessarie, in seguito alla rimozione di un pacchetto; è equivalente a eseguire manualmente un <code>apt autoremove</code>; | |||
:; <code>APT::Get::Upgrade-Allow-New</code> : rende l'esecuzione di <code>apt-get upgrade</code> equivalente a <code>apt upgrade</code>, permettendo l'installazione di nuovi pacchetti se richiesti per l'aggiornamento. | |||
Tutte queste impostazioni erano disabilitate di default. | |||
Altre possibili impostazioni utili: | |||
:; <code>APT::Sandbox::Seccomp</code> : a partire da Debian 10 ([[Buster]]), se abilitata, esegue '''APT''' in una sandbox fornita dal kernel Linux per restringere le chiamate di sistema permesse; non supporta tutti i metodi di '''APT''', ma è già utilizzabile come ulteriore forma di sicurezza se si usano i normali repository (per esempio ''http'', ''https''); | |||
:; <code>APT::Install-Recommends</code> : disabilitarla (di default è abilitata) non installa le dipendenze raccomandate, ma non necessarie, al funzionamento di un pacchetto; disabilitare tale impostazione è '''sconsigliato''' per utenti inesperti, in quanto potrebbe ridurre le funzionalità di altri programmi, e utile soltanto per utenti già esperti e che vogliano mantenere un sistema il più possibile minimale. | |||
{{Cautionbox | Si '''sconsiglia''' l'uso di '''<code>Default-Release</code>''', salvo si sappia cosa si sta facendo e si conosca approfonditamente il funzionamento dei [[repository]] di Debian, perché equivalente a impostare un [[pinning]] e potrebbe disabilitare inavvertitamente l'uso di altri repository secondari usati in fase di aggiornamento dei pacchetti.}} | |||
Tutte le configurazioni sono impostabili anche a tempo di esecuzione, per esempio con l'opzione <code>--option</code>/<code>-o</code> di '''<code>apt-get</code>''' o con altre forme ancora più brevi (si rimanda alla [[apt-get|guida]] o alla pagina di manuale). | |||
==I pacchetti== | |||
Leggere la guida: [[Pacchetti binari e sorgenti]] | Leggere la guida: [[Pacchetti binari e sorgenti]] | ||
Riga 65: | Riga 100: | ||
=== Manpages === | === Manpages === | ||
<code>man apt | <code>man apt</code><br/> | ||
<code>man apt.conf</code> | <code>man apt.conf</code> | ||
===Sitografia=== | ===Sitografia=== | ||
* [http://www.debian.org/doc/manuals/apt-howto/index.it.html#contents Apt HowTo], panoramica completa sulle funzionalità e sull'utilizzo del sistema APT | * [http://www.debian.org/doc/manuals/apt-howto/index.it.html#contents Apt HowTo], panoramica completa sulle funzionalità e sull'utilizzo del sistema APT | ||
* [https://www.debian.org/releases/buster/amd64/release-notes/ch-whats-new.it.html#apt-sandboxing APT hardening], dalle note di rilascio di Debian 10 (buster) | |||
{{Autori | {{Autori | ||
|Autore = [[Utente:Keltik|Keltik]] | |Autore = [[Utente:Keltik|Keltik]] | ||
|Estesa_da = | |||
: [[Utente:Ferdybassi|Ferdybassi]] | |||
: [[Utente:HAL 9000|HAL 9000]] | |||
|Verificata_da = | |Verificata_da = | ||
: [[Utente:Wtf|Wtf]] | : [[Utente:Wtf|Wtf]] | ||
: [[Utente: | : [[Utente:S3v|S3v]] 12:22, 20 apr 2015 (CEST) | ||
: [[Utente:HAL 9000|HAL 9000]] 21:16, 11 ago 2019 (CEST) | |||
: [[Utente:HAL 9000|HAL 9000]] | |Numero_revisori = 3 | ||
|Numero_revisori = | |||
}} | }} | ||
[[Categoria:Apt]] | [[Categoria:Apt]] | ||
[[Categoria:Introduzione a Debian]] | [[Categoria:Introduzione a Debian]] |
contributi