Guida ai comandi da terminale - Gestione di repository e pacchetti: differenze tra le versioni

aggiunto il prompt ai comandi, chiarita la parte su aggiornamento (ma continua a mancare quella da una release alla successiva) ed estese alcune parti minori
(+ categorie)
(aggiunto il prompt ai comandi, chiarita la parte su aggiornamento (ma continua a mancare quella da una release alla successiva) ed estese alcune parti minori)
Riga 4: Riga 4:


== Modifica della lista dei repository ==
== Modifica della lista dei repository ==
La lista dei [[repository]] configurati per il vostro sistema si trova nel file <code>/etc/apt/sources.list</code>. Per modificarla basta aprire il file con un qualsiasi editor di testo. Quindi, se vogliamo aprirlo con Gedit (editor di testo visuale; occorre avere un ambiente grafico installato) digiteremo:
La lista dei [[repository]] configurati per il vostro sistema si trova nel file <code>/etc/apt/sources.list</code>, ed eventuali altri repository di terze parti possono trovarsi nei file presenti nella directory <code>/etc/apt/sources.list.d</code>. Per modificare il primo file o aggiungere un nuovo file alla directory, basta aprire o creare il file con un qualsiasi editor di testo.
 
Per esempio se vogliamo aprire il file <code>/etc/apt/sources.list</code> con Nano (editor di testo di default su console) digiteremo:
<pre>
<pre>
gedit /etc/apt/sources.list
# nano /etc/apt/sources.list
</pre>
</pre>
Se vogliamo aprirlo con Nano (editor di testo su console) digiteremo:
Una volta apportate le modifiche è necessario digitare <code>Ctrl-O</code> per salvarle e <code>Ctrl-X</code> per uscire.
 
== Aggiornamento del sistema operativo ==
Per aggiornare Debian con gli ultimi pacchetti disponibili per la vostra versione dovrete lanciare due comandi:
<pre>
<pre>
nano /etc/apt/sources.list
# apt-get update
# apt-get upgrade
</pre>
</pre>
Con Vim (altro editor di testo per console):
Il primo comando aggiorna soltanto la lista dei pacchetti disponibili, mentre il secondo effettua l'aggiornamento dei pacchetti già installati (purché non comporti la rimozione o l'installazione di nuovi pacchetti). Si noti che entrambi i comandi sono necessari, infatti se la lista dei pacchetti non è aggiornata il solo comando <code>apt-get upgrade</code> non effettuerà mai alcun aggiornamento.
 
Se si utilizza la testing o Debian Sid, o si sono mescolate diverse release (pratica molto sconsigliata, se non si è sicuri di quello che si sta facendo, che può ridurre drasticamente la stabilità del sistema e che richiede la conoscenza e la configurazione del pinning), potrebbe essere necessario l'utilizzo di:
<pre>
<pre>
vim /etc/apt/sources.list
# apt-get update
# apt-get dist-upgrade
</pre>
</pre>
E così via. Vi ricordo che questo file ha i permessi di scrittura riservati all’amministratore (root) o ad un sudoer. Se avete impostato al vostro utente i permessi di sudoer, o siete su Ubuntu, vi basterà aggiungere sudo prima di ogni comando (<code>sudo gedit</code> invece di <code>gedit</code>, ad esempio) per avere i permessi di scrittura e poter salvare il file. Se siete root, potete copiare ed incollare i comandi citati sopra sul terminale senza modificarli nella sintassi.
che, sempre dopo aver aggiornato la lista dei pacchetti, consente l'aggiornamento anche in presenza di nuovi pacchetti da installare o di pacchetti installati da rimuovere.


== Aggiornamento del sistema operativo ==
Per aggiornare Debian con gli ultimi pacchetti disponibili per la vostra versione dovrete lanciare due comandi:
<pre>
apt-get update
apt-get upgrade
</pre>
Queste operazioni possono essere fatte solo da un sudoer o da un root.


== Installazione di un programma o di un pacchetto ==
== Installazione di un programma o di un pacchetto ==
Se vogliamo installare un programma o un pacchetto presente nei repository a vostra disposizione, ci basterà semplicemente digitare da terminale:
Se vogliamo installare un programma o un pacchetto presente nei repository a vostra disposizione, ci basterà semplicemente digitare da terminale:
<pre>
<pre>
apt-get install programma
# apt-get install programma
</pre>
oppure:
<pre>
aptitude install programma
</pre>
</pre>
Se vogliamo installare, ad esempio, VLC, digitiamo:
Se vogliamo installare, ad esempio, VLC, digitiamo:
<pre>
<pre>
apt-get install vlc
# apt-get install vlc
</pre>
</pre>
Il nome del programma, e la possibilità di installarlo in questo modo, dipendono dalla presenza dei pacchetti nella vostra lista repository e dal loro nome. Una lista completa dei pacchetti repo presenti nel vostro sistema la avete andando su Sistema –> Amministrazione –> Gestore pacchetti Synaptic, e per poterli installare ovviamente avrete bisogno di permessi di sudoer o di [[root]].
Il nome del programma, e la possibilità di installarlo in questo modo, dipendono dalla presenza dei pacchetti nella vostra lista repository e dal loro nome. Una lista completa dei pacchetti repo presenti nel vostro sistema la avete andando su Sistema –> Amministrazione –> Gestore pacchetti Synaptic, e per poterli installare ovviamente avrete bisogno di permessi di sudoer o di [[root]].
Se il vostro programma non compare nell'elenco, ma avete trovato in giro dei repository che lo includono (righe di testo), per utilizzarle dovrete integrarle nella vostra lista repository, seguite il paragrafo “Modifica della lista dei repository”.
Se il vostro programma non compare nell'elenco, ma avete trovato in giro dei repository che lo includono (righe di testo), per utilizzarle dovrete integrarle nella vostra lista repository, seguite il paragrafo “Modifica della lista dei repository”.
Riga 46: Riga 46:
Il seguente comando può esservi di aiuto:
Il seguente comando può esservi di aiuto:
<pre>
<pre>
apt-cache search nome_pacchetto
$ apt-cache search nome_pacchetto
</pre>
</pre>
Il comando esegue una ricerca full text all'interno dei nomi e delle descrizioni dei pacchetti dei repository abilitati. Ad esempio:
Il comando esegue una ricerca full text all'interno dei nomi e delle descrizioni dei pacchetti dei repository abilitati. Ad esempio:
<pre>
<pre>
apt-cache search tellico
$ apt-cache search tellico
</pre>
</pre>
ci restituirà:
ci restituirà:
Riga 61: Riga 61:
Quindi possiamo ottenere varie informazioni sul pacchetto che cerchiamo con:
Quindi possiamo ottenere varie informazioni sul pacchetto che cerchiamo con:
<pre>
<pre>
apt-cache show nome_pacchetto
$ apt-cache show nome_pacchetto
</pre>
</pre>
Ad esempio:
Ad esempio:
<pre>
<pre>
apt-cache show tellico
$ apt-cache show tellico
</pre>
</pre>
Elencare le sole dipendenze:
Elencare le sole dipendenze:
* dirette (necessarie)
* dirette (necessarie)
<pre>
<pre>
apt-cache depends tellico
$ apt-cache depends tellico
</pre>
</pre>
* indirette (raccomandate o utili a seconda del tipo di richiesta o configurazione del sistema)
* indirette (raccomandate o utili a seconda del tipo di richiesta o configurazione del sistema)
<pre>
<pre>
apt-cache rdepends tellico
$ apt-cache rdepends tellico
</pre>
</pre>
Informazioni su quale repository abbia la priorità (utile nella gestione del pinning):
Informazioni su quale repository abbia la priorità (utile nella gestione del pinning):
<pre>
<pre>
apt-cache policy tellico
$ apt-cache policy tellico
</pre>
</pre>
Visionare il changelog prima di aggiornare il pacchetto:
Visionare il changelog prima di aggiornare il pacchetto:
<pre>
<pre>
apt-get changelog tellico
$ apt-get changelog tellico
</pre>
</pre>
Sapere perché un pacchetto è installato o perché andrebbe installato:
Sapere perché un pacchetto è installato o perché andrebbe installato:
<pre>
<pre>
aptitude why tellico
$ aptitude why tellico
</pre>
</pre>
Sapere perché un pacchetto non è installato e se genera conflitti:
Sapere perché un pacchetto non è installato e se genera conflitti:
<pre>
<pre>
aptitude why-not tellico
$ aptitude why-not tellico
</pre>
</pre>
Si noti che per ricerche e ottenere informazioni sui pacchetti non sono necessari privilegi di amministrazione, permettendo di eseguirli a tutti gli utenti. I privilegi sono necessari soltanto per effettuare installazioni, aggiornamenti o rimozioni dei pacchetti.


== Disinstallazione base di un programma o di un pacchetto ==
== Disinstallazione base di un programma o di un pacchetto ==
Si utilizza lo stesso strumento visto prima per l'installazione dei pacchetti. Digitiamo quindi:
Si utilizza lo stesso strumento visto prima per l'installazione dei pacchetti. Digitiamo quindi:
<pre>
<pre>
apt-get remove programma
# apt-get remove programma
</pre>
</pre>
Se vogliamo rimuovere VLC:
Se vogliamo rimuovere VLC:
<pre>
<pre>
apt-get remove vlc
# apt-get remove vlc
</pre>
</pre>
Questo tipo di disinstallazione disinstalla il programma, ma lascia all’interno del sistema i file di configurazione del programma. Per poter eseguire il comando di disinstallazione descritto avrete bisogno di permessi di sudoer o di root.
Questo tipo di disinstallazione disinstalla il programma, ma lascia all’interno del sistema i file di configurazione del programma. Per poter eseguire il comando di disinstallazione descritto avrete bisogno di permessi di sudoer o di root.
Riga 107: Riga 109:
La differenza tra questa disinstallazione e quella base consiste nella liberazione completa dello spazio occupato dal programma che vogliamo rimuovere dal sistema. Con questo tipo di disinstallazione, infatti, oltre a disinstallare il programma dal sistema, cancelleremo anche i pacchetti e i relativi file di configurazione, che altrimenti non verrebbero rimossi, e che occuperebbero spazio inutile nel caso in cui non avessimo alcuna intenzione di reinstallare in futuro il programma. Digitiamo:
La differenza tra questa disinstallazione e quella base consiste nella liberazione completa dello spazio occupato dal programma che vogliamo rimuovere dal sistema. Con questo tipo di disinstallazione, infatti, oltre a disinstallare il programma dal sistema, cancelleremo anche i pacchetti e i relativi file di configurazione, che altrimenti non verrebbero rimossi, e che occuperebbero spazio inutile nel caso in cui non avessimo alcuna intenzione di reinstallare in futuro il programma. Digitiamo:
<pre>
<pre>
apt-get remove --purge programma
# apt-get remove --purge programma
</pre>
</pre>
Oppure:
Oppure:
<pre>
<pre>
apt-get purge programma
# apt-get purge programma
</pre>
Oppure:
<pre>
aptitude purge programma
</pre>
</pre>
Se vogliamo rimuovere VLC:
Se vogliamo rimuovere VLC:
<pre>
<pre>
apt-get remove --purge vlc
# apt-get remove --purge vlc
</pre>
</pre>
O in alternativa:
O in alternativa:
<pre>
<pre>
apt-get purge vlc
# apt-get purge vlc
</pre>
</pre>
Per poter eseguire il comando di disinstallazione descritto avrete bisogno di permessi di sudoer o di root.
Per poter eseguire il comando di disinstallazione descritto avrete bisogno di permessi di sudoer o di root.
Riga 130: Riga 129:
Se abbiamo un programma già installato nel sistema, ma per un qualsiasi motivo volessimo reinstallarlo, il comando è:
Se abbiamo un programma già installato nel sistema, ma per un qualsiasi motivo volessimo reinstallarlo, il comando è:
<pre>
<pre>
apt-get install --reinstall programma
# apt-get install --reinstall programma
</pre>
</pre>
Se vogliamo reinstallare VLC:
Se vogliamo reinstallare VLC:
<pre>
<pre>
apt-get install --reinstall vlc
# apt-get install --reinstall vlc
</pre>
</pre>
Per poter eseguire il comando di reinstallazione descritto avrete bisogno di permessi di sudoer o di root.
Per poter eseguire il comando di reinstallazione descritto avrete bisogno di permessi di sudoer o di root.
Riga 141: Riga 140:
Per rimuovere completamente i pacchetti già disinstallati che, per qualche motivo, non riuscite a eliminare con <code>apt</code>, digitare:
Per rimuovere completamente i pacchetti già disinstallati che, per qualche motivo, non riuscite a eliminare con <code>apt</code>, digitare:
<pre>
<pre>
dpkg -P programma
# dpkg -P programma
</pre>
</pre>
Se volessimo “purgare” VLC:
Se volessimo “purgare” VLC:
<pre>
<pre>
dpkg -P vlc
# dpkg -P vlc
</pre>
</pre>
L'uso di <code>dpkg</code> è però da evitare in situazioni normali, in quanto non si occupa delle dipendenze del pacchetto.


== Pulizia della cache dei pacchetti ==
== Pulizia della cache dei pacchetti ==
Per ripulire la cache dei pacchetti scaricati si utilizzano i comandi:
La cache serve soltanto per permettere l'installazione di pacchetti precedentemente scaricati senza doverli riscaricare nuovamente, se sono ancora la versione più aggiornata disponibile.
 
Per ripulire la cache dei pacchetti scaricati, liberando lo spazio occupato dai pacchetti scaricati e non più necessari, si utilizzano i comandi:
<pre>
<pre>
apt-get clean
# apt-get autoclean
</pre>
</pre>
O anche:
O anche:
<pre>
<pre>
apt-get autoclean
# apt-get clean
</pre>
</pre>
Per poter eseguire il comando avrete bisogno di permessi di sudoer o di root.
Il primo comando (''autoclean'') elimina soltanto i pacchetti ormai obsoleti, mentre il secondo (''clean'') tutti quelli presenti nella cache (in ''/var/cache/apt/'').


== Installazione dei sorgenti dei pacchetti ==
== Installazione dei sorgenti dei pacchetti ==
Riga 163: Riga 166:
Possiamo farlo da aptitude, semplicemente con il comando:
Possiamo farlo da aptitude, semplicemente con il comando:
<pre>
<pre>
apt-get source programma
$ apt-get source programma
</pre>
</pre>
Se volessimo ottenere i source di VLC:
Se volessimo ottenere i source di VLC:
<pre>
<pre>
apt-get source vlc
$ apt-get source vlc
</pre>
</pre>
Non sono richiesti particolari permessi, per cui potete farlo anche da semplici user, il risultato non cambia.
Si noti che rispetto all'installazione non sono richiesti particolari permessi.


== Determinare a quale pacchetto appartiene un file ==
== Determinare a quale pacchetto appartiene un file ==
Per ottenere il nome del pacchetto a cui appartiene un file:
Per ottenere il nome del pacchetto a cui appartiene un file:
<pre>
<pre>
dpkg --search nome_file
$ dpkg --search nome_file
</pre>
</pre>
Ad esempio:
Ad esempio:
<pre>
<pre>
dpkg --search /bin/cat  
$ dpkg --search /bin/cat  
coreutils: /bin/cat
coreutils: /bin/cat
</pre>
</pre>


[[Categoria:Shell]][[Categoria:Programmi da terminale]]
[[Categoria:Shell]][[Categoria:Programmi da terminale]]
3 581

contributi