[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico] [volume] [parte]
DSelect (1) è uno strumento molto importante per la gestione dei pacchetti, nel momento in cui si vuole tenere sotto controllo il quadro completo della situazione. Si tratta di un programma frontale che gestisce direttamente DPkg e può avvalersi della configurazione di APT per quanto riguarda l'origine da cui prelevare i pacchetti da installare.
È fondamentale la comprensione di molti dettagli di funzionamento di questo programma, per poterlo sfruttare al meglio, considerato che il suo utilizzo non è molto intuitivo.
È disponibile una scheda riassuntiva dell'uso di DSelect nel capitolo 715.
DSelect è un programma interattivo, rappresentato dall'eseguibile dselect, che di solito si avvia senza argomenti:
#
dselect
[Invio]
Il suo funzionamento è suddiviso in sei passaggi, rappresentati dal suo menù iniziale, che in generale dovrebbero essere eseguiti secondo la sequenza prevista:
scelta del metodo di accesso agli archivi della distribuzione;
aggiornamento dell'elenco dei pacchetti disponibili;
selezione dei pacchetti da installare, da rimuovere o da eliminare dal sistema;
installazione o aggiornamento dei pacchetti, in base alla selezione fatta;
richiesta esplicita di eseguire la configurazione dei pacchetti per i quali questa operazione non fosse stata eseguita, o che non fosse stata completata normalmente (di solito, l'installazione provvede anche alla loro configurazione);
rimozione o eliminazione dei pacchetti in base alle richieste fatte in fase di selezione.
In generale, al completamento di uno di questi passaggi, DSelect suggerisce automaticamente di passare al successivo. La figura 44.1 mostra il menù introduttivo di DSelect.
|
Se si utilizza DSelect con un monitor monocromatico, è molto importante ricordarsi di configurare correttamente la variabile di ambiente TERM, in modo che questa contenga un nome di un terminale monocromatico (potrebbe trattarsi del nome vt100 o vt220, basta verificare nella directory /usr/share/terminfo/v/
), altrimenti si fa molta fatica a decifrare il significato delle varie informazioni che appaiono sullo schermo, soprattutto si fa fatica a individuare il cursore di selezione. Per esempio, si potrebbe usare il comando seguente:
#
TERM=vt100 ; dselect
[Invio]
La selezione della voce desiderata avviene in modo molto semplice: per spostare il cursore di selezione si possono usare i tasti freccia, le cifre numeriche corrispondenti, o le iniziali; per selezionare la voce evidenziata basta premere [Invio].
Come accennato, è bene seguire l'ordine prestabilito, per cui si comincia dalla selezione del metodo di accesso agli archivi della distribuzione. La figura 44.2 mostra il menù che si potrebbe presentare dopo tale selezione.
|
Come si può osservare, l'immagine sullo schermo è suddivisa in due parti: quella superiore che contiene l'elenco dei metodi di accesso, dove si esegue la selezione, e quella inferiore che contiene la descrizione della voce su cui si trova il cursore di selezione in quel dato momento (in questo caso si tratta della voce multi_cd). Come nel menù generale, il cursore si può spostare utilizzando i tasti freccia e anche altre combinazioni (è disponibile una guida interna accessibile attraverso la pressione di [F1] o di [?], dalla quale si esce premendo la [barra spaziatrice]); infine, premendo [Invio] si seleziona la voce in cui si trova il cursore.
È bene sottolineare che l'elenco dei metodi di accesso potrebbe essere composto da un numero maggiore o minore di possibilità, in base alla disponibilità effettiva. Qui vengono descritti solo alcuni metodi di accesso, dal momento che poi il meccanismo di selezione si ripete con una logica simile anche negli altri.
Il metodo di accesso corrispondente alla sigla cdrom è ormai un po' antiquato, utilizzabile solo con una distribuzione Debian ridotta a un solo CD-ROM o un solo DVD-ROM. Una volta fatta la selezione, viene richiesto quale file di dispositivo deve essere utilizzato per l'innesto del CD/DVD e di solito viene proposto già /dev/cdrom
:
I see that /dev/cdrom exists and is a block device. |
Insert the CD-ROM and enter the block device name [/dev/cdrom]:
Se la realtà corrisponde a quanto proposto (lo si vede tra parentesi quadre), basta confermare premendo [Invio], diversamente si scrive il percorso del file di dispositivo adatto e quindi si conferma sempre con [Invio]. Se tutto procede regolarmente, DSelect tenta di accedere al disco e dovrebbe riuscirci anche se questo è già stato innestato in precedenza.
Insert the CD-ROM and enter the block device name [/dev/cdrom]:
[Invio]
All directory names should be entered relative to the root of the CD-ROM. I would like to know where on the CD-ROM the top level of the Debian distribution is (eg. 'dists/stable') - this directory usually contains the Packages-Master file. If the CD-ROM is badly organised and doesn't have a straightforward copy of the distribution you may answer `none' and we'll go through the parts I need individually. Last time you said `/debian/dists/stable', and that looks plausible. |
Distribution top level ? [/debian/dists/stable]:
A questo punto, viene richiesta l'indicazione della directory di inizio della distribuzione, tenendo conto che il percorso deve essere indicato partendo dalla directory radice del disco stesso. Di solito, un disco di una distribuzione Debian dovrebbe essere organizzato esattamente come propone DSelect, per cui dovrebbe bastare premere [Invio].
Distribution top level ? [/debian/dists/stable]:
[Invio]
Using `/debian/dists/stable/main/binary-i386' as main binary dir. Using `/debian/dists/stable/main/binary-i386/Packages.gz' for main. Using `/debian/dists/stable/contrib/binary-i386' as contrib binary dir. Using `/debian/dists/stable/contrib/binary-i386/Packages.gz' for contrib. Using `/debian/dists/stable/non-free/binary-i386' as non-free binary dir. Using `/debian/dists/stable/non-free/binary-i386/Packages.gz' for non-free. Using `/debian/dists/stable/non-US/binary-i386' as non-US binary dir. Using `/debian/dists/stable/non-US/binary-i386/Packages.gz' for non-US. Using `/debian/dists/stable/local/binary-i386' as local binary dir. Using `/debian/dists/stable/local/binary-i386/Packages.gz' for local. |
Hit RETURN to continue.
Quelle che si vedono sono le informazioni che DSelect richiede; se queste directory non sono esattamente lì dove DSelect si aspetta che siano, occorre indicarle tutte una per una, inoltre per ognuna occorre specificare dove si trova il file Packages.gz
relativo. Comunque, alla fine la cosa si conclude qui e si torna al menù iniziale.
Hit RETURN to continue.
[Invio]
Il metodo di accesso corrispondente alla sigla multi_cd è quello più comune, data l'attuale dimensione di una distribuzione Debian completa, che impone la riproduzione su diversi dischi. Scegliendo tale modalità di installazione, in questa fase, si deve inserire l'ultimo dei dischi che compongono la distribuzione. Dopo aver selezionato il dispositivo (esattamente come nel caso del metodo cdrom), occorre indicare dove iniziano le distribuzioni. Quindi, non è più come prima: occorre indicare la directory all'interno della quale poi si può trovare la gerarchia dists/
.
All directory names should be entered relative to the root of the CD-ROM. I would like to know where on the CD-ROM the top level of the Debian distribution is - this will usually contain the `dists' directory. If the CD-ROM is badly organised and doesn't have a straightforward copy of the distribution you may answer `none' and we'll go through the parts I need individually. Last time you said `/debian', and that looks plausible. |
Distribution top level ? [/debian]
Così come propone DSelect, si tratta della directory /debian/
, sempre intesa come riferita all'inizio del disco stesso. In questo caso basta confermare premendo [Invio].
Distribution top level ? [/debian]
[Invio]
Ok, this is Debian GNU/Linux 2.1 "slink" - disco 2 di 2. Using `/debian/dists/stable/main/binary-i386' as main binary dir from disk `Debian GNU/Linux 2.1 "slink" - disco 2 di 2' Using `/debian/dists/stable/main/binary-i386/Packages.cd.gz' for main. Using `/debian/dists/stable/contrib/binary-i386' as contrib binary dir from disk `Debian GNU/Linux 2.1 "slink" - disco 2 di 2' Using `/debian/dists/stable/contrib/binary-i386/Packages.cd.gz' for contrib. Using `/debian/dists/stable/non-free/binary-i386' as non-free binary dir from disk `Debian GNU/Linux 2.1 "slink" - disco 2 di 2' Using `/debian/dists/stable/non-free/binary-i386/Packages.cd.gz' for non-free. Using `/debian/dists/stable/non-US/binary-i386' as non-US binary dir from disk `Debian GNU/Linux 2.1 "slink" - disco 2 di 2' Using `/debian/dists/stable/non-US/binary-i386/Packages.cd.gz' for non-US. Using `/debian/dists/local/local/binary-i386' as local binary dir from disk `Debian GNU/Linux 2.1 "slink" - disco 2 di 2' Using `/debian/dists/local/local/binary-i386/Packages.cd.gz' for local. |
Hit RETURN to continue.
Anche in questo caso sarebbe bene che il disco fosse organizzato esattamente come si aspetta DSelect, altrimenti si è costretti a inserire i percorsi delle directory e dei file Packages.cd.gz
. Si osservi in particolare, che rispetto al metodo cdrom, in questo caso si utilizzano i file Packages.cd.gz
e non più i file Packages.gz
. Al termine, si torna al menù principale.
Hit RETURN to continue.
[Invio]
I metodi nfs e multi_nfs permettono di accedere a un file system NFS che non è stato ancora innestato. Potrebbe trattarsi di un elaboratore che offre in condivisione l'accesso al suo lettore CD/DVD, che comunque, lì, deve essere stato innestato. A differenza dei metodi che coinvolgono il lettore CD/DVD locale, si deve aggiungere l'indicazione del nome o dell'indirizzo dell'elaboratore che offre l'accesso attraverso il protocollo NFS.
Nel primo caso DSelect si aspetta di trovare una distribuzione unica e completa, per cui servono i file Packages.gz
, mentre nel secondo si tratta di dati che possono cambiare (per esempio perché viene sostituito il disco nell'elaboratore remoto), per cui contano i file Packages.cd.gz
.
I metodi mounted e multi_mount sono riferiti a una distribuzione accessibile all'interno del file system, dove DSelect non deve occuparsi di innestare dei dischi.
Nel primo caso si deve trattare di una distribuzione unica e completa, per cui DSelect va a cercare i file Packages.gz
, mentre nel secondo si tratta di dati che possono cambiare (per esempio perché si interviene per mezzo di collegamenti simbolici), per cui contano i file Packages.cd.gz
.
Il metodo apt corrisponde all'utilizzo degli strumenti offerti dal sistema APT (in questo caso si usa precisamente apt-get). In effetti, quando si dispone di una distribuzione accessibile attraverso APT, questa è la scelta migliore, dal momento che basta configurare il file /etc/apt/sources.list
per risolvere il problema con DSelect.
DSelect propone di modificare il file, ma sarebbe bene che questo fosse già predisposto correttamente prima di iniziare, in modo da poter confermare semplicemente la configurazione attuale:
see you already have a source list. ------------------------------------------------------------------------ deb file:/home/tizio/DEBIAN/1/debian stable main contrib non-free non-US local deb file:/home/tizio/DEBIAN/2/debian stable main contrib non-free non-US local ------------------------------------------------------------------------ |
Do you wish to change it?[y/N]
In questo caso, la distribuzione si trova suddivisa in due parti, a partire dalle directory /home/tizio/DEBIAN/1/debian/
e /home/tizio/DEBIAN/2/debian/
. Per confermare, basta premere [Invio], dal momento che n (no) è la scelta predefinita.
Do you wish to change it?[y/N]
[Invio]
La fase successiva richiede di aggiornare l'elenco dei pacchetti disponibili selezionando la seconda voce del menù iniziale (quella con il numero uno).
|
Questa operazione non richiede un'interazione con l'utilizzatore. Al massimo si può verificare che sia terminata o meno con successo, in base ai messaggi che si possono leggere.
Si passa quindi alla fase più complessa: quella della selezione dei pacchetti da installare o da disinstallare.
|
Prima di mostrare la schermata di selezione dei pacchetti, data la complessità della cosa, DSelect presenta una guida, di cui si vede la schermata iniziale nella figura 44.11.
|
In pratica, si esce da questa guida premendo [Invio], mentre si possono scorrere le varie pagine di informazioni premendo la [barra spaziatrice]. Per richiamare questa guida durante la selezione dei pacchetti, basta premere il punto interrogativo, [?], o il tasto [F1].
Dopo avere superato la schermata di presentazione della guida si ottiene finalmente il pannello di selezione dei pacchetti (figura 44.12).
|
Prima di mettersi a selezionare i pacchetti, occorre comprendere come «muoversi» in questa fase. Per cominciare, si deve osservare che la schermata dovrebbe apparire divisa in due parti, come si vede nella figura, dove nella parte superiore appare un cursore (che in questa figura non si vede, ma è posizionato sul pacchetto bash) e nella parte inferiore appare la descrizione di ciò che si trova in corrispondenza del cursore.
Il cursore si sposta, «intuitivamente», utilizzando i tasti: [freccia su], [freccia giù], [pagina su], [pagina giù], [Inizio] e [Fine]. Alle volte, non riuscendo a leggere tutte le informazioni (come nel caso dell'esempio), è possibile spostare la visualizzazione in orizzontale, utilizzando i tasti [freccia sinistra] e [freccia destra].
|
In condizioni normali, l'intestazione dell'elenco è piuttosto oscura. I primi quattro caratteri rappresentano rispettivamente: uno stato di errore, lo stato del pacchetto installato, la selezione precedente e la selezione attuale. La tabella 44.14 raccoglie queste sigle e mostra i simboli che possono essere abbinati nelle colonne rispettive; la tabella 44.15 mostra invece il significato dei simboli che possono essere attribuiti a questi indicatori.
|
|
La selezione dei pacchetti avviene intervenendo sull'ultimo di questi indicatori, «M», dove però si utilizzano tasti differenti rispetto ai simboli che si usano per rappresentarne la selezione. La tabella 44.16 mostra questi tasti e il risultato che se ne ottiene.
|
Le colonne successive indicano: la priorità del pacchetto, generalmente in forma abbreviata, la sezione, ovvero il raggruppamento a cui questo risulta abbinato, il nome del pacchetto, la versione installata, la versione disponibile e infine la descrizione.
L'aspetto di questo pannello di selezione può essere cambiato; in particolare si possono ottenere le descrizioni estese dei primi quattro indicatori, così come della colonna della priorità, utilizzando il tasto [v]; in modo simile, il tasto [V] serve a mostrare più o meno colonne di informazioni. Oltre a questo è possibile cambiare il genere di informazioni che appaiono nella parte inferiore dello schermo, che si riferiscono al pacchetto evidenziato dal cursore, oppure è possibile dedicare tutto lo schermo all'elenco o solo alla descrizione del pacchetto. Questi tasti sono elencati nella tabella 44.17.
|
Vale la pena di osservare in che modo è possibile cambiare ordine all'elenco dei pacchetti visualizzati. Con il tasto [O] si individuano alcune forme di raggruppamento globale:
Installato o meno ---> obsoleto, aggiornato;
Installato, rimosso, eliminato o mai installato;
nessuna classificazione.
Con il tasto [o] si definiscono delle sotto-classificazioni ulteriori:
priorità ---> sezione;
sezione ---> priorità;
nessuna classificazione.
È molto importante selezionare la combinazione giusta dell'ordine in cui vengono classificati i pacchetti, altrimenti ci si perde alla loro ricerca. Tuttavia, fortunatamente, è possibile eseguire una ricerca rapida di un pacchetto il cui nome contiene una stringa data. Si ottiene questo con il tasto [/], che permette di inserire la stringa e di premere [Invio] per avviare la ricerca; mentre con il tasto [\] si ripete la ricerca con l'ultimo modello inserito.
|
Quando si seleziona o si deseleziona un pacchetto provocando delle ripercussioni sugli altri, perché occorre soddisfare in qualche modo delle dipendenze, o delle incompatibilità, viene presentato un sotto-pannello riepilogativo dei pacchetti coinvolti in queste dipendenze, in cui si offre una soluzione del problema. Il funzionamento di questi sotto-pannelli è identico a quello principale; quello che conta è comprendere che ogni pannello ha un suo contesto e solo quando si giunge alla conferma delle selezioni fatte su quello generale, si esce da questa fase di utilizzo di DSelect.
|
|
In generale, quando si sta operando con un pannello, o un sotto-pannello di selezione, con il tasto [Invio] si confermano le scelte fatte, a patto che siano state rispettate le dipendenze, mentre per annullare le selezioni si usa il tasto [R] (si veda la tabella 44.21). Al termine si torna al menù iniziale.
|
Il passo successivo è l'installazione dei pacchetti che sono stati indicati per questo nella fase precedente.
|
L'installazione prevede anche la configurazione, per cui inizia qui una procedura che può risultare anche abbastanza lunga, durante la quale bisogna essere sempre pronti a rispondere alle domande che vengono fatte. In generale, quando si aggiorna un pacchetto o lo si installa, mentre sono presenti ancora i file di configurazione vecchi, questi vengono mantenuti ed eventualmente gli vengono affiancati i file nuovi con un'estensione differente (.dpkg-dist
).(2)
Dal momento che un pacchetto può avere anche delle «pre-dipendenze», che possono impedirgli l'installazione se prima non è già stato installato qualcos'altro, può darsi che l'installazione debba essere ripetuta più volte per riuscire a installare tutto ciò che è stato richiesto.
Dopo l'installazione si può richiedere espressamente la configurazione dei pacchetti che per qualche motivo non sono stati configurati nel passaggio precedente.
|
Infine, si può richiedere la rimozione o l'eliminazione dei pacchetti segnati per questo nella fase di selezione.
|
Susan G. Kleinmann, Sven Rudolph, Joost Witteveen, The Debian GNU/Linux FAQ, 1999
Appunti di informatica libera 2006.07.01 --- Copyright © 2000-2006 Daniele Giacomini -- <daniele (ad) swlibero·org>
2) Per la precisione, si usa l'estensione .dpkg-dist
quando il file in questione rappresenta la configurazione proposta dalla distribuzione, mentre si usa .dpkg-old
, quando il file rappresenta la configurazione precedente, che è stata sostituita a seguito di una risposta affermativa da parte di colui che esegue l'aggiornamento.
Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome pacchetti_debian_dselect.htm
[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [translators] [docinfo] [indice analitico]