[ precedente ] [ Contenuti ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ successivo ]


APT HOWTO
Capitolo 4 - Gestione dei pacchetti


4.1 Uso del gestore di pacchetti Debian: aptitude

Per un lungo periodo Debian disponeva di un gestore dei pacchetti che era famoso per essere complicato da capire e da usare chiamato dselect. Il sistema Debian si sta spostando verso un nuovo gestore predefinito chiamato aptitude e basato sulla libreria APT.

Installando Sarge verrà automaticamente installato aptitude come parte del sistema di base, altrimenti si installi il pacchetto aptitude eseguendo, per esempio, questo comando prima di proseguire:

     # apt-get install aptitude

Si provi a evitare l'uso di apt-get e invece si usi aptitude, conosce molte più cose sulle capacità di APT e ha alcune funzionalità uniche come la marcatura dei pacchetti che sono installati solo per soddisfare le dipendenze in modo da chiederne automaticamente la rimozione quando non sono più necessari.

aptitude ha due modalità principali: un'interfaccia utente basata su ncurses con cui si può navigare nell'elenco dei pacchetti molto simile a dselect e un'interfaccia utente a riga di comando molto simile ad apt-get. In molti esempi di questo manuale è usata l'interfaccia a riga di comando, fornendo consigli su quali comandi usare per ottenere gli stessi risultati con aptitude nell'interfaccia simile a dselect.

Per attivare l'interfaccia utente digitare aptitude in un terminale, a questo punto non è necessario essere root, aptitude richiede automaticamente i privilegi di root quando è necessario. Le cose principali sono: per accedere alla barra dei menu in alto si deve, come suggerito nella seconda riga, premere F10. La seconda riga contiene un breve elenco delle funzionalità più comuni: come ottenere aiuto, come aggiornare l'elenco dei pacchetti e come andare avanti.

Si dia un'occhiata al Manuale dell'utente nel menu Aiuto per capire come funzionano le cose.

Notare che aptitude funziona in modo simile agli altri gestori di pacchetti: prima si fanno tutte le scelte e poi si fanno i cambiamenti. Quasi tutte le azioni per la gestione dell'installazione di un pacchetto richiedono la pressione del tasto g due volte per essere effettive. La prima pressione di g mostra l'elenco dei cambiamenti da effettuare, la successiva pressione di g conferma i cambiamenti oppure premere q per tornare indietro.

Allo stesso modo si può premere il tasto Invio per avere più dettagli su un pacchetto o su un gruppo di pacchetti, per esempio si può premere Invio quando è selezionato "Pacchetti nuovi" per vedere l'elenco delle sezioni, premendo Invio su una sezione si vedono i nuovi pacchetti in quella sezione e si possono vedere i dettagli di un pacchetto premendo di nuovo Invio. Notare che quando sono mostrati i dettagli di un pacchetto viene cambiato il contesto di visualizzazione di aptitude e quindi è necessario premere q per tornare alla precedente visualizzazione.

Normalmente i pacchetti sono catalogati in base al loro stato di installazione e in alcune categorie speciali. È possibile vedere queste categorie appena si entra in aptitude.

     --- Pacchetti nuovi
     --- Pacchetti aggiornabili
     --- Pacchetti installati
     --- Pacchetti non installati
     --- Pacchetti obsoleti e creati localmente
     --- Pacchetti virtuali
     --- Task

I "Pacchetti nuovi" sono i pacchetti che sono stati aggiunti a Debian dopo l'ultima cancellazione dell'elenco dei pacchetti nuovi con il comando Dimentica i nuovi pacchetti nel menu Azioni o con il tasto "f".

I "Pacchetti aggiornabili" sono i pacchetti installati per i quali è disponibile una nuova versione. "Pacchetti installati" sono i pacchetti installati, "Pacchetti non installati" sono quelli non installati ma che sono disponibili da una delle sorgenti di APT. "Pacchetti obsoleti e creati localmente" sono quelli che non sono più disponibili da nessuna delle sorgenti di APT o quelli che sono stati creati in proprio. "Pacchetti virtuali" sono pacchetti che definiscono un servizio anziché un programma e sono forniti da altri pacchetti. Infine "Task" sono delle raccolte di pacchetti che servono a un determinato scopo, sono usati anche dal programma tasksel.

Premendo Invio su uno qualsiasi di questi viene espanso l'albero in modo simile a questo:

     --\ Pacchetti non installati
       --- admin - Strumenti di amministrazione e di gestione del sistema
       --- base - Il sistema base Debian
     [...]

Andando ancora più a fondo si ha:

       --\ games - Giochi, giochini e altri programmi divertenti
         --- contrib - Pacchetti che dipendono da software che non fa parte di Debian
         --\ main - L'archivio Debian principale
     p     3dchess                                               <nessuna>  0.8.1-10

Questo mostra un pacchetto installato e uno non installato, quest'ultimo è un gioco ed è disponibile dal repository Debian main, cioè dalla distribuzione ufficiale.

Nella parte centrale dello schermo c'è una riga evidenziata che viene riempita da informazioni quando viene selezionato un pacchetto, questa viene chiamata descrizione breve del pacchetto. Sotto c'è un'area testuale che contiene informazioni più dettagliate sul pacchetto, questa è la descrizione lunga. In qualche caso la descrizione lunga è troppo lunga per stare tutta all'interno dell'area riservata, si possono premere i tasti "z" e "a" rispettivamente per scorrere in basso o in alto il testo.

Vedere Installazione e reinstallazione dei pacchetti, Sezione 4.4 per maggiori informazioni su i dati mostrati.


4.2 Aggiornamento dell'elenco dei pacchetti disponibili

Il sistema di gestione dei pacchetti usa un proprio database per tenere traccia di quali pacchetti sono installati, di quali non lo sono e di quali sono disponibili per l'installazione. Il programma aptitude usa questo database per capire come installare i pacchetti richiesti dall'utente e per scoprire quali ulteriori pacchetti sono necessari per far funzionare correttamente i pacchetti selezionati.

Per aggiornare questo elenco, va usato il comando aptitude update. Questo comando controlla gli elenchi dei pacchetti presenti negli archivi elencati in /etc/apt/sources.list; vedere Il file /etc/apt/sources.list, Sezione 3.1 ulteriori informazioni su questo file. Si può usare il tasto "u" all'interno dell'interfaccia ncurses di aptitude per aggiornare l'elenco dei pacchetti.

Uno dei passi che APT esegue nell'aggiornamento del database è verificare che l'elenco dei pacchetti e le somme MD5 siano sicuri. La verifica consiste nel controllo della firma criptografica e nel controllo di alcune delle somme MD5, si consulti La catena della fiducia di APT, Sezione 2.3 per ulteriori informazioni. Se APT scopre che la firma non è corretta o che le somme MD5 non corrispondono ferma l'aggiornamento del database dei pacchetti in modo da prevenire l'installazione di pacchetti corrotti. Questo potrebbe anche essere causato da un problema di configurazione (per esempio una chiave scaduta) che si può risolvere da soli, altrimenti si deve contattare l'amministratore della sorgente APT che evidenzia il problema.

È consigliabile aggiornare regolarmente l'elenco dei pacchetti per avere un sistema informato su possibili aggiornamenti dei pacchetti, in particolare sugli aggiornamenti di sicurezza.


4.3 Ricerca dei pacchetti

Aptitude dispone di una funzionalità di ricerca molto flessibile e potente. Si può usarla premendo il tasto "/" (slash) che apre una piccola finestra di dialogo al centro dello schermo.

Poi inserire il nome di un pacchetto. Aptitude ricerca esattamente ciò che si è scritto. Se il pacchetto trovato non è esattamente ciò che si sta cercando si può premere Invio per far sparire la finestra di dialogo e poi premere il tasto "n" per ripetere la ricerca della stessa stringa.

Si possono usare le espressioni regolari[2] nella finestra di dialogo, comunque aptitude ha il proprio linguaggio di ricerca che in qualche caso si può sovrapporre alle espressioni regolari. Un esempio, se si vuole avere un confronto esatto con la stringa "gnome" inserire "^gnome$" nella finestra di dialogo.

Notare che ricerche come queste sono semplici ricerche fra i nomi dei pacchetti. Se si vuole cercare nelle descrizioni è necessario usare "~d" prima della parola da cercare. Quindi se si desidera trovare tutti i pacchetti che menzionano "isolinux" nelle loro descrizioni si deve scrivere "~disolinux" nella finestra di dialogo.

È anche possibile cercare tutti i pacchetti che al momento sono incompleti cercando la stringa "~b" oppure cercare tutti i pacchetti che sono stati rimossi ma i cui file di configurazione sono stati lasciati nel sistema cercando la stringa "~c".

Per ricerche ancora più avanzate con aptitude si legga il Manuale dell'utente di Aptitude, che è possibile trovare nel menu Aiuto.

È anche possibile usare la riga di comando per cercare i pacchetti in questo modo:

     $ aptitude search '~c'
     c A abiword-common                  - WYSIWYG word processor based on GTK2
     c A acme                            - Enables the "multimedia buttons" found on
     (...)

Come si può vedere è possibile usare qualsiasi stringa di ricerca anche con l'interfaccia a riga di comando, aptitude fornisce le stesse informazioni sullo stato dei pacchetti che sono già state presentate in questo manuale.


4.4 Installazione e reinstallazione dei pacchetti

Con il file sources.list pronto, le chiavi inserite nel portachiavi di APT e l'elenco dei pacchetti disponibili aggiornato, tutto quello che è necessario fare per installare un pacchetto è eseguire aptitude.

Quando si entra in aptitude si può installare uno o più pacchetti premendo il tasto "+" quando il pacchetto in questione è selezionato. Si può usare il tasto "/" per cercare il pacchetto che interessa, vedere Ricerca dei pacchetti, Sezione 4.3. Quando si richiede l'installazione di un pacchetto questo viene marcato con il colore verde e riga assomiglierà a questa:

     pi    celestia-gnome                                        <nessuna>  1.3.0-1

Questo significa che il pacchetto non è installato ("p") e che è marcato per l'installazione. La parola <nessuna> significa che nessuna versione è installata e il numero successivo è quello della versione che è stata marcata per l'installazione.

Notare che quando si segue questa procedura sono automaticamente marcati per l'installazione altri pacchetti (dipendenze, suggeriti e raccomandati dal pacchetto scelto). Questi pacchetti sono segnati così:

     piA   gnome-bin                                             <nessuna>  1.4.2-16

Il carattere maiuscolo "A" significa che questo pacchetto verrà installato perché un altro pacchetto dipende da questo. Tutti i pacchetti installati per questo motivo verranno rimossi quando non sono più necessari. Si può mettere questo marchio manualmente premendo "M" quando il cursore è posizionato sopra il pacchetto.

Una "U" nella quarta colonna significa che il pacchetto proviene da una sorgente in cui non si ha fiducia, cioè da una sorgente il cui file Release non è firmato oppure è firmato con una chiave che non è stata importata nel portachiavi di APT. Si consulti Autenticazione dei pacchetti, Sezione 3.2 per avere i dettagli su come far diventare fidata una sorgente. È possibile che un pacchetto sia disponibile anche da una sorgente fidata, in questo caso si deve consultare i dettagli per avere tutte le informazioni sulle versioni disponibili di quel pacchetto.

Si possono avere delle informazioni dettagliate sul pacchetto che si desidera installare premendo Invio quando il pacchetto è selezionato, verrà visualizzato qualcosa di simile a questo:

     i A --\ xterm                                               4.2.1-14  4.2.1-14
       Descrizione
     xterm - X terminal emulator
     xterm is a terminal emulator for the X Window System.  It provides DEC VT102
     and Tektronix 4014 compatible terminals for programs that cannot use the
     window system directly.  This version implements ISO/ANSI colors and most of
     the control sequences used by DEC VT220 terminals.
       Priorità: optional
       Sezione: x11
       Responsabile: Branden Robinson <branden@debian.org>
       Dimensione pacchetto compresso: 547k
       Dimensione pacchetto installato: 1130k
       Pacchetto sorgente: xfree86
       --\ Dipende
         --- libc6 (>= 2.3.2.ds1-4)
         --- libfreetype6 (>= 2.1.5-1)
         --- libncurses5 (>= 5.3.20030510-1)
         --- libxaw7 (> 4.1.0)
         --- xlibs (> 4.1.0)
         --- xlibs (> 4.2.0)
       --\ Va in conflitto
         --- xbase (< 3.3.2.3a-2)
         --- suidmanager (< 0.50)
       --\ Sostituisce
         --- xbase (< 3.3.2.3a-2)
       --- Pacchetti che dipendono da xterm
       --\ Versioni
     p A 4.3.0-0pre1v4
     i A 4.2.1-14

Le versioni mostrate sono fidate perché nella quarta colonna non c'è il carattere "U", quindi è sufficiente sceglierne una e dire ad aptitude di procedere con l'installazione. Nell'esempio precedente tutte le versioni provengono da sorgenti fidate.

Notare che quasi sempre quando ci sono tre o più trattini si può premere Invio per espandere l'elenco e i trattini diventeranno qualcosa di simile a --\. Si possono avere moltissime informazioni sul pacchetto come da quali pacchetti dipende e con quali pacchetti va in conflitto[3], per esempio:

Notare anche che in basso sullo schermo (si può scorrere in basso con i tasti cursore) ci sono le varie versioni disponibili per il pacchetto. Nell'esempio il pacchetto xterm ha due versioni disponibili perché è fornito da più di una sorgente APT in versioni differenti.

Si può installare la versione che si vuole premendo "+". Ricordarsi che si deve chiedere a aptitude di eseguire le scelte che fatte premendo "g". Aptitude mostra un elenco con le azioni che verranno effettuate in modo che si possa controllare che quello che verrà fatto sia esattamente ciò che si desidera:

     --\ Pacchetti da installare automaticamente per soddisfare le dipendenze
     ciA calctool                                                <nessuna>  4.3.16-2
     --\ Pacchetti bloccati
     ih  libgnomeprintui2.2-0                                    2.4.0-1    2.4.2-1
     --\ Pacchetti da installare
     pi  gwget2                                                  <nessuna>  0.7-3
     --\ Pacchetti da rimuovere
     ip  qvwm                                                    1:1.1.12-1 1:1.1.12-1

Gli elementi dovrebbero essere comprensibili. La cosa nuova è un pacchetto bloccato, si possono trovare altre informazioni in Blocco dei pacchetti, Sezione 4.9. Dopo aver controllato che le modifiche siano proprio quelle che si desidera confermare le proprie scelte premendo nuovamente il tasto "g".

aptitude prima scarica e poi installa i pacchetti selezionati. APT potrebbe anche aggiornare tutti i pacchetti che al momento hanno bisogno di un aggiornamento (si consulti Aggiornamento dei pacchetti, Sezione 4.7). Se sono stati selezionati pacchetti provenienti da sorgenti non fidate aptitude mostra un elenco di questi pacchetti e prima di iniziare a scaricarli chiede se si vuole veramente installarli. Si consulti La catena della fiducia di APT, Sezione 2.3 per ulteriori informazioni sulla sicurezza delle sorgenti.

Se si vuole reinstallare un pacchetto, per esempio per ripristinare dei file che sono stati cancellati accidentalmente, si può premere "L" per marcarlo per la reinstallazione. Poi si deve seguire la procedura come se si dovesse installarlo.

Si può usare aptitude anche senza l'interfaccia interattiva per installare o reinstallare i pacchetti in questo modo:

     # aptitude install pacchetto1 pacchetto2 ...
     # aptitude --reinstall install pacchetto1 pacchetto2 ...

4.5 Installazione di pacchetti scaricati manualmente o creati in locale

Se si è scaricato manualmente un file .deb da internet o si è recuperato un .deb da una qualsiasi sorgente diversa da quelle che APT è in grado di usare allora non si può installarlo, né con aptitude né con qualsiasi altro programma basato su APT.

È necessario usare lo strumento di gestione dei pacchetti sottostante, che è quello che effettivamente compie il duro lavoro dell'installazione dei pacchetti. Anche aptitude richiama questo strumento per fare le installazioni: dpkg.

È possibile installare un pacchetto eseguendo:

     # dpkg -i file.deb

Se si vuole usare il ramo unstable di Debian o si desidera creare dei pacchetti Debian è consigliabile imparare molte altre cose riguardo a dpkg! È uno strumento molto potente e ha delle opzioni molto utili.


4.6 Rimozione dei pacchetti

Se non si vuole più usare un pacchetto, si può rimuoverlo dal sistema usando APT. Per farlo digitare "-" quando è selezionato il pacchetto in aptitude. Questo marca il pacchetto per la rimozione colorando la riga di viola in questo modo:

     id    celestia-gnome                                       1.3.0-1     1.3.0-1

Notare che questo comporta che una volta rimosso il pacchetto la riga assomiglierà a questa:

     c    ocaml-base                                             <nessuna>  3.07.2a-1

C'è il carattere c all'inizio della riga anziché p. Questo significa che il pacchetto ocaml-base è stato rimosso ma che i suoi file di configurazione continuano a essere sparsi nel sistema. Per rimuovere il pacchetto e i suoi file di configurazione si deve usare il tasto "_"[4], cioè eliminandolo (purge).

Notare che se si tenta di rimuovere un pacchetto che è una dipendenza di altri pacchetto allora si otterranno dei pacchetti incompleti e nella parte superiore dello schermo apparirà:

     aptitude 0.2.13      #Difett: 1   Libererà 208MB su disco

I pacchetti incompleti sono marcati con una riga simile a questa:

     iBA   openoffice.org                                       1.1.0-3     1.1.0-3

Si può tentare di risolvere da soli il problema dei pacchetti incompleti provando a rimuovere il pacchetto che crea problemi in modo da non lasciare dipendenze rotte oppure si può lasciare a aptitude il compito di risolvere il problema premendo il tasto "g". Se la soluzione trovata dal programma non soddisfa i propri desideri si può correggerla manualmente prima di confermare con "g".

Si possono cercare i pacchetti incompleti premendo "/" e usando "~b" come stringa di ricerca. Si può passare alla successiva occorrenza premendo il tasto "\". Si può fare la stessa ricerca semplicemente premendo il tasto "b", premendo nuovamente lo stesso tasto verrà mostrato il successivo pacchetto incompleto. Si veda Informazioni sui pacchetti, Capitolo 6 per ulteriori informazioni sulla ricerca dei pacchetti.

Ovviamente si possono rimuovere o eliminare i pacchetti anche tramite l'interfaccia a riga di comando in questo modo:

     # aptitude remove pacchetto1 pacchetto2 ...
     # aptitude purge pacchetto1 pacchetto2 ...

4.7 Aggiornamento dei pacchetti

Gli aggiornamenti dei pacchetti sono un grande successo di APT. Aptitude segna automaticamente i pacchetti che dispongono di nuove versioni come da aggiornare e quindi, solitamente, tutto quello che si deve fare per effettuare l'aggiornamento del sistema è: aggiornare l'elenco dei pacchetti (si veda Aggiornamento dell'elenco dei pacchetti disponibili, Sezione 4.2), poi chiedere a aptitude di procedere premendo "g" e, dopo aver controllato i cambiamenti, confermare l'operazione premendo nuovamente "g". Se aptitude non segna gli aggiornamenti automaticamente si può premere il tasto "U" (una "u" maiuscola) per farlo manualmente. Questo comando è contenuto nel menu Opzioni->Varie.

Si può controllare l'elenco dei pacchetti che dispongono di nuove versioni guardando nella categoria Upgradable Packages:

     --\ Pacchetti aggiornabili
       --\ libs - Raccolte di routine software
         --\ main - L'archivio Debian principale
     iu    libgnomeprintui2.2-0                                 2.4.0-1     2.4.2-1

I pacchetti marcati per l'aggiornamento hanno le loro righe di colore ciano e hanno il carattere u come indicatore dell'azione che deve essere effettuata. Se si vuole aggiornare a una nuova release vedere la prossima sezione Aggiornamento a una nuova release, Sezione 4.8.


4.8 Aggiornamento a una nuova release

APT permette di aggiornare l'intero sistema in una volta sola, da Internet oppure da un CD (acquistato o scaricato come immagine ISO).

Per esempio, supponiamo che si stia usando la release 0 della versione stable di Debian e di disporre di un CD con la release 3. Si può usare APT per aggiornare il sistema da questo nuovo CD. Per farlo si usa apt-cdrom (vedere Inserimento di un CD-ROM nel file sources.list, Sezione 3.3) per aggiungere il CD al file /etc/apt/sources.list e poi si esegue aptitude per effettuare l'installazione come descritto precedentemente.

È importante notare che APT ricerca la versione più recente dei pacchetti solo dopo aver valutato le priorità delle sorgenti assegnate in Impostazione della priorità per i pacchetti, Sezione 3.5. Se nel file /etc/apt/sources.list è elencato un archivio che contiene una versione di un pacchetto più recente di quella sul CD, APT vorrà scaricare il pacchetto da quell'archivio, sempre che entrambe le sorgenti abbiano stessa priorità oppure che l'altro archivio abbia una priorità superiore di quello sul CD.

Se si vuole aggiornare il sistema da Internet si deve solo impostare opportunamente il file /etc/apt/sources.list. Per aggiornare a una nuova release stabile è di solito sufficiente eseguire il normale procedimento di aggiornamento con aptitude. Se nel file /etc/apt/sources.list è specificato il nome in codice della release[5] è necessario aggiornarlo al nuovo nome o cambiarlo in "stable".

Quindi, per esempio, questa riga:

     deb http://http.us.debian.org/debian sarge main

nei sistemi che si vuole tenere aggiornati con la distribuzione stable deve essere cambiata in una delle seguenti non appena Etch sarà rilasciata come stable:

     deb http://http.us.debian.org/debian etch main
     deb http://http.us.debian.org/debian stable main

La differenza è che la prima mantiene il sistema su etch per tutto il tempo che si desidera, anche se viene rilasciata una nuova stable. Questo può essere utile se si vuole decidere quando fare l'aggiornamento alla nuova stable. Il secondo esempio aggiornerà automaticamente la macchina alla nuova stable quando viene rilasciata.


4.9 Blocco dei pacchetti

Come si è visto nella precedente sezione aptitude marca automaticamente i pacchetti per l'aggiornamento. Se si vuole bloccare un pacchetto alla versione attualmente installata si può chiedere di impostare un pacchetto come bloccato.

Questo si ottiene premendo il tasto "=". I pacchetti bloccati appaiono in questo modo:

     ih    alien                                                   8.41     8.41

In questo esempio il pacchetto alien viene mantenuto alla versione 8.41 anche se una nuova versione è presente su una delle sorgenti di APT, notare il carattere h sulla sinistra. Per rendere il pacchetto nuovamente aggiornabile marcarlo per l'installazione.

È possibile impostare i pacchetti come bloccati anche con l'interfaccia a riga di comando, eseguendo:

     # aptitude hold pacchetto1 pacchetto2 ...

4.10 Rimozione dei file dei pacchetti: clean e autoclean

Quando si installa un pacchetto APT recupera tutti i file necessari delle sorgenti specificate in /etc/apt/sources.list, gli immagazzina in un archivio locale (/var/cache/apt/archives/) e poi procede con l'installazione, si veda Installazione e reinstallazione dei pacchetti, Sezione 4.4.

Con il tempo il repository locale cresce e può occupare molto spazio sul disco. Fortunatamente APT fornisce gli strumenti per gestire il suo repository locale: i metodi clean e autoclean di APT.

Il metodo clean viene richiamato con il comando Pulisci la cache dei pacchetti nel menu Azioni. Il metodo autoclean viene richiamato con il comando Cancella i vecchi file anch'esso nel menu Azioni.

Il metodo autoclean può essere usato da coloro che vogliono tenere una copia locale dei pacchetti che sono installati, infatti cancella solo quei file .deb che non sono più disponibili dalle sorgenti APT e che quindi sono resi obsoleti da una nuova versione.


[ precedente ] [ Contenuti ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 11 ] [ 12 ] [ 13 ] [ successivo ]


APT HOWTO

2.0.2 - October 2006

Gustavo Noronha Silva kov@debian.org

Traduzione di Luca Monducci