[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico] [home] [volume] [parte]


Capitolo 207.   Alternative nella distribuzione Debian

La distribuzione GNU/Linux Debian organizza una serie di collegamenti simbolici riferiti a programmi di uso comune; per esempio, in questo modo esiste il programma eseguibile virtuale x-www-browser, che fa riferimento al navigatore (per esempio mozilla), oppure esiste il programma virtuale vi che fa riferimento a vim, nvi o simili.

Questo sistema ha il vantaggio di offrire un nome standard ai programmi, così da avere la certezza di trovare sempre ciò che serve attraverso un nome che non cambi nel tempo. Ovviamente occorre avere l'accortezza di aggiornare questi collegamenti simbolici in base a ciò che si installa e si disinstalla.

Anche se si tratta di una struttura specifica della distribuzione Debian, ciò non toglie che possa essere usato un metodo del genere anche in altre distribuzioni, oppure che si possa aggiungere da soli qualcosa di simile.

207.1   Organizzazione particolare della distribuzione Debian

La distribuzione Debian è organizzata in modo tale da inserire i collegamenti simbolici da aggiornare nella directory /etc/alternatives/. L'elenco di alcuni collegamenti comuni appare nella tabella 207.5.

La directory /etc/alternatives/ non appare nell'elenco dei percorsi di avvio degli eseguibili (contenuto nella variabile di ambiente PATH), pertanto, nelle directory /bin/, /usr/bin/ ed eventualmente in altre simili, si trovano altri collegamenti simbolici che puntano a quelli previsti nella directory /etc/alternatives/. Per esempio, /usr/bin/vi punta a /etc/alternatives/vi, il quale, a sua volta, potrebbe puntare a /usr/bin/nvi o altro programma compatibile con VI.

Oltre al problema degli eseguibili, la distribuzione Debian fa in modo che anche i file delle pagine di manuale siano inseriti in questo meccanismo. Pertanto, per continuare l'esempio già proposto a proposito di VI, /usr/share/man/man1/vi.1.gz punta a /etc/alternatives/vi.1.gz, il quale potrebbe puntare a sua volta a /usr/share/man/man1/nvi.1.gz.

La gestione dei collegamenti simbolici contenuti nella directory /etc/alternatives/ può essere manuale, oppure automatica; in generale può essere controllata attraverso il programma update-alternatives. Il modello sintattico seguente mostra solo alcuni casi di utilizzo comuni:

update-alternatives [opzioni_comuni] comando nome

Tabella 207.1. Alcuni casi comuni.

Sintassi Descrizione
update-alternatives [opzioni] --display nome
Mostra lo stato del collegamento simbolico indicato come argomento finale.
update-alternatives [opzioni] --list nome
Mostra l'elenco delle alternative possibili riferite al collegamento simbolico indicato come argomento finale.
update-alternatives [opzioni] --config nome
Consente di decidere interattivamente come dirigere il collegamento simbolico indicato.
update-alternatives [opzioni] --auto nome
Riporta allo stato automatico la gestione del collegamento simbolico indicato come argomento finale.

Dalla descrizione della tabella si vede che un riferimento a un programma può essere gestito in modo automatico, oppure manuale. Se si interviene a mano nei collegamenti simbolici della directory /etc/alternatives/, questi vengono riconosciuti come riferimenti gestiti manualmente. Ecco cosa si potrebbe vedere a proposito di uno di questi riferimenti:

update-alternatives --display x-www-browser[Invio]

x-www-browser - status is auto.
 link currently points to /usr/bin/galeon
/usr/bin/mozilla - priority 80
 slave x-www-browser.1.gz: /usr/share/man/man1/mozilla.1.gz
/usr/bin/galeon - priority 120
 slave x-www-browser.1.gz: /usr/share/man/man1/galeon.1.gz
/usr/bin/epiphany - priority 85
 slave x-www-browser.1.gz: /usr/share/man/man1/epiphany.1.gz
/usr/bin/konqueror - priority 100
Current `best' version is /usr/bin/galeon.

Volendo impostare manualmente il navigatore predefinito in modo che corrisponda a Mozilla, ecco come bisognerebbe procedere:

update-alternatives --configure x-www-browser[Invio]

There are 4 alternatives which provide `x-www-browser'.

  Selection    Alternative
-----------------------------------------------
      1        /usr/bin/mozilla
*+    2        /usr/bin/galeon
      3        /usr/bin/epiphany
      4        /usr/bin/konqueror

Press enter to keep the default[*], or type selection number: 1[Invio]

Using `/usr/bin/mozilla' to provide `x-www-browser'.

Per riportare tutto allo stato automatico:

update-alternatives --auto x-www-browser[Invio]

Tabella 207.5. Alcune alternative Debian che fanno riferimento a nomi di programmi non comuni.

Comando Descrizione
editor Un programma per la creazione e la modifica dei file di testo.
mp3-decoder Programma per l'esecuzione di file audio MP3.
pager Un programma per scorrere il contenuto di un file sullo schermo (come more o less).
www-browser Navigatore per i terminali non grafici.
x-session-manager Un gestore di sessione per il sistema grafico X.
x-terminal-emulator Un terminale grafico per X.
x-window-manager Un gestore di finestre per il sistema grafico X.
x-www-browser Navigatore grafico.

207.2   Organizzare manualmente un sistema di alternative

Se piace l'idea delle alternative, si può realizzare un sistema simile anche in modo manuale, senza tante raffinatezze: è sufficiente predisporre una directory con i collegamenti che servono, mettendo questa directory al primo posto dei percorsi di ricerca. Supponendo che si tratti della directory /etc/bin/:

PATH="/etc/bin:$PATH"
export $PATH

Le istruzioni appena mostrate potrebbero risiedere nel file /etc/profile, supponendo che sia utilizzata una shell POSIX o una shell Bourne.


Appunti di informatica libera 2008 --- Copyright © 2000-2008 Daniele Giacomini -- <appunti2 (ad) gmail·com>


Dovrebbe essere possibile fare riferimento a questa pagina anche con il nome alternative_nella_distribuzione_debian.htm

[successivo] [precedente] [inizio] [fine] [indice generale] [indice ridotto] [indice analitico] [home]

Valid ISO-HTML!

CSS validator!

Gjlg Metamotore e Web Directory