Provided by: dpkg_1.17.5ubuntu5.8_amd64 bug

NOME

       update-alternatives - mantiene collegamenti simbolici che determinano i comandi predefiniti

SINTASSI

       update-alternatives [opzione...] comando

DESCRIZIONE

       update-alternatives  crea,  rimuove,  mantiene  e  visualizza informazioni sui collegamenti simbolici che
       costituiscono il sistema di alternative di Debian.

       È possibile che in un dato momento nel sistema  siano  installati  più  programmi  che  hanno  la  stessa
       funzione  o  una  funzione  simile.  Per  esempio, molti sistemi hanno diversi editor di testo installati
       contemporaneamente. Questo dà agli utenti del sistema una possibilità di scelta, permettendo  a  ciascuno
       di  usare  un  editor  diverso, se lo desidera, ma rende difficile per un programma fare una buona scelta
       quando deve invocare un editor se l'utente non ha impostato una preferenza specifica.

       Il sistema delle alternative Debian mira a risolvere questo problema. Nel file system tutti  i  file  che
       forniscono  una funzionalità intercambiabile condividono un nome generico. Il sistema delle alternative e
       l'amministratore di sistema insieme determinano a quale file  faccia  effettivamente  riferimento  questo
       nome  generico.  Per esempio, se sul sistema sono installati entrambi gli editor di testo ed(1) e nvi(1),
       il sistema delle alternative farà sì che il nome generico  /usr/bin/editor  faccia  in  modo  predefinito
       riferimento  a  /usr/bin/nvi.  L'amministratore di sistema può sovrascrivere ciò e far sì che esso faccia
       invece riferimento a /usr/bin/ed, e il sistema delle alternative non modificherà questa  impostazione  se
       ciò non viene esplicitamente richiesto.

       Il  nome  generico  non  è  un  collegamento  simbolico  diretto all'alternativa selezionata. È invece un
       collegamento simbolico a un nome nella  directory  alternatives,  che  è  a  sua  volta  un  collegamento
       simbolico   all'effettivo   file   referenziato.   Tutto   questo   perché   così   le   modifiche  fatte
       dall'amministratore di sistema possono rimanere confinate nella directory /etc: il FHS (q.v.)  spiega  le
       ragioni per cui questa è una Cosa Buona e Giusta.

       Al  momento  dell'installazione,  cambiamento  o rimozione di ogni pacchetto che fornisce un file con una
       particolare funzionalità, viene invocato update-alternatives per aggiornare le informazioni su quel  file
       nel  sistema  delle  alternative.  update-alternatives  viene  solitamente chiamato dagli script postinst
       (configurazione) o prerm (installazione) dei pacchetti Debian.

       Spesso è utile che un certo numero di alternative siano sincronizzate, in modo  da  venir  modificate  in
       gruppo;  per  esempio,  quando sono installate diverse versioni dell'editor vi(1), la pagina di manuale a
       cui fa riferimento /usr/share/man/man1/vi.1 dovrebbe corrispondere all'eseguibile a  cui  fa  riferimento
       /usr/bin/vi. update-alternatives gestisce questo usando collegamenti principali e secondari; quando viene
       modificato  il  principale, anche tutti i secondari ad esso associati vengono modificati. Un collegamento
       principale e tutti i suoi secondari associati compongono un gruppo di collegamenti.

       In qualsiasi momento, ogni gruppo di collegamenti è in una di due modalità: automatica o manuale.  Quando
       un  gruppo  è  in  modalità  automatica,  il sistema delle alternative deciderà automaticamente se e come
       aggiornare i collegamenti quando i pacchetti vengono  installati  o  rimossi.  In  modalità  manuale,  il
       sistema  delle  alternative  preserva le scelte dell'amministratore ed evita di modificare i collegamenti
       (tranne quando qualcosa non è corretto).

       I gruppi di collegamenti sono inizialmente in modalità automatica, quando vengono introdotti nel sistema.
       Se l'amministratore del sistema fa modifiche alle impostazioni automatiche del sistema,  queste  verranno
       notate  alla  successiva  esecuzione  di  update-alternatives  sul gruppo di collegamenti modificato e il
       gruppo automaticamente verrà passato alla modalità manuale.

       Ogni alternativa è associata ad una priorità. Quando un gruppo di collegamenti è in modalità  automatica,
       le alternative a cui puntano i membri del gruppo saranno quelle con la priorità più alta.

       Quando  si  usa  l'opzione  --config,  update-alternatives  elenca  tutte  le  scelte  per  il  gruppo di
       collegamenti di cui il nome specificato è il nome dell'alternativa principale. La  scelta  attuale  viene
       contrassegnata  da un «*». Verrà quindi chiesto all'utente di fare una scelta per ciò che riguarda questo
       gruppo di collegamenti. A seconda della scelta fatta, il gruppo di collegamenti potrebbe non  essere  più
       in  modalità  automatica.  Sarà  necessario usare l'opzione --auto per ritornare alla modalità automatica
       (oppure si può rieseguire --config e selezionare la voce contrassegnata come automatica).

       Se si vuole fare la configurazione in modo non interattivo, si può usare invece l'opzione  --set  (vedere
       in seguito).

       Pacchetti  diversi  che  forniscono  lo  stesso  file  devono farlo cooperando. In altre parole, l'uso di
       update-alternatives è obbligatorio per tutti i pacchetti coinvolti in un caso  simile.  Non  è  possibile
       sovrascrivere un file in un pacchetto che non utilizza il meccanismo update-alternatives.

TERMINOLOGIA

       Dato  che le attività di update-alternatives sono piuttosto convolute, alcuni termini specifici aiutano a
       spiegare il suo funzionamento.

       nome generico (o collegamento dell'alternativa)
              Un nome, come /usr/bin/editor, che fa riferimento, utilizzando il sistema  delle  alternative,  ad
              uno di svariati file con funzione similare.

       nome dell'alternativa
              Il nome di un collegamento simbolico nella directory delle alternative.

       alternativa (o percorso alternativo)
              Il  nome di uno specifico file nel file system, che può essere reso accessibile attraverso un nome
              generico utilizzando il sistema delle alternative.

       directory delle alternative
              Una directory, in modo predefinito /etc/alternatives, che contiene i collegamenti simbolici.

       directory di amministrazione
              Una directory, in modo predefinito /var/lib/dpkg/alternatives, che  contiene  le  informazioni  di
              stato di update-alternatives.

       gruppo di collegamenti
              Un insieme di collegamenti simbolici correlati, pensato per essere aggiornato in gruppo.

       collegamento principale
              Il  collegamento  dell'alternativa,  in  un  gruppo  di  collegamenti,  che  determina  come  sono
              configurati gli altri collegamenti nel gruppo

       collegamento secondario
              Un  collegamento  dell'alternativa,  in   un   gruppo   di   collegamenti,   che   è   controllato
              dall'impostazione del collegamento principale.

       modalità automatica
              Quando  un  gruppo di collegamenti è in modalità automatica, il sistema delle alternative assicura
              che i collegamenti nel gruppo puntino all'alternativa con la priorità più alta appropriata per  il
              gruppo.

       modalità manuale
              Quando un gruppo di collegamenti è in modalità manuale, il sistema delle alternative non fa alcuna
              modifica alle impostazioni dell'amministratore di sistema.

COMANDI

       --install collegamento nome percorso priorità [--slave collegamento nome percorso]...
              Aggiunge  un  gruppo  di  alternative al sistema. collegamento è il nome generico del collegamento
              principale, nome è il nome del suo collegamento simbolico  nella  directory  delle  alternative  e
              percorso  è  l'alternativa  che viene introdotta per il collegamento principale. Gli argomenti che
              seguono --slave sono il nome generico, il nome del collegamento simbolico  nella  directory  delle
              alternative  e  il  percorso  dell'alternativa  per  un  collegamento  secondario.  Possono essere
              specificate zero o più opzioni --slave, ciascuna  fatta  seguire  da  tre  argomenti.  Notare  che
              l'alternativa   principale   deve   esistere  o  la  chiamata  non  avrà  successo.  Tuttavia,  se
              un'alternativa secondaria non esiste,  il  collegamento  corrispondente  semplicemente  non  verrà
              installato  (verrà  comunque  visualizzato  un  messaggio  di  avvertimento).  Se dove deve essere
              installato un collegamento di un'alternativa è  installato  un  qualche  file  reale,  esso  viene
              conservato, a meno che non venga usata l'opzione --force.

              Se  il nome dell'alternativa specificato esiste già nel registro del sistema delle alternative, le
              informazioni fornite verranno aggiunte come  un  nuovo  insieme  di  alternative  per  il  gruppo.
              Altrimenti  viene  aggiunto  un  nuovo  gruppo  con  queste  informazioni,  impostato  in modalità
              automatica. Se il gruppo è in modalità automatica, e la priorità delle alternative appena aggiunte
              è più alta di qualsiasi altra alternativa installata per questo gruppo, i  collegamenti  simbolici
              verranno aggiornati per puntare alle alternative appena aggiunte.

       --set nome percorso
              Imposta  il  programma  percorso  come  alternativa  per  nome.  È equivalente a --config ma non è
              interattivo e perciò è utilizzabile in script.

       --remove nome percorso
              Rimuove un'alternativa e tutti i collegamenti secondari associati. nome è il nome nella  directory
              delle alternative e percorso è un nome file assoluto a cui può essere collegato nome. Se nome è in
              effetti  collegato  a  percorso,  nome  sarà aggiornato in modo da puntare ad un'altra alternativa
              appropriata (e il gruppo verrà rimesso in modalità automatica), oppure  rimosso  se  non  c'è  più
              alcuna alternativa corretta. I collegamenti secondari associati verranno analogamente aggiornati o
              rimossi.  Se  il  collegamento  attualmente  non  punta  a  percorso,  non  verrà modificato alcun
              collegamento; verranno solamente rimosse le informazioni riguardanti l'alternativa.

       --remove-all nome
              Rimuove tutte le alternative e tutti i loro collegamenti secondari associati. nome è un nome nella
              directory delle alternative.

       --all  Invoca --config su tutte le alternative. Può essere proficuamente combinato  con  --skip-auto  per
              rivedere  e  configurare  tutte  le  alternative  che non sono configurate in modalità automatica.
              Vengono mostrate anche le alternative non corrette. Perciò un modo semplice per  correggere  tutte
              le alternative difettose è di chiamare yes '' | update-alternatives --force --all.

       --auto nome
              Fa passare in modalità automatica il gruppo di collegamenti relativo all'alternativa per nome. Nel
              fare  ciò, il collegamento simbolico principale e i suoi collegamenti secondari sono aggiornati in
              modo da puntare alle alternative installate con la priorità più alta.

       --display nome
              Visualizza informazioni sul gruppo di collegamenti.  Le  informazioni  visualizzate  includono  la
              modalità  del  gruppo (automatica o manuale), a quale alternativa il collegamento principale punta
              attualmente,  quali  altri  alternative  sono  disponibili  (e  le  loro  alternative   secondarie
              corrispondenti) e l'alternativa attualmente installata con la priorità più alta.

       --get-selections
              Elenca   tutti  i  nomi  delle  alternative  principali  (quelle  che  controllano  un  gruppo  di
              collegamenti) e il loro stato. Ogni riga contiene fino a 3 campi (separati da uno o più spazi). Il
              primo campo è il nome dell'alternativa, il secondo è lo stato (o «auto»  o  «manual»)  e  l'ultimo
              contiene  la  scelta  dell'alternativa  attuale  (attenzione:  è  un  nome  di file e pertanto può
              contenere spazi).

       --set-selections
              Legge  la  configurazione  delle  alternative  dallo  standard  input  nel  formato  generato   da
              update-alternatives --get-selections e le riconfigura in modo corrispondente.

       --query nome
              Visualizza  informazioni  sul gruppo di collegamenti come fa --display, ma in un modo analizzabile
              da una macchina (vedere la sezione FORMATO DI QUERY più avanti).

       --list nome
              Visualizza tutte le destinazioni del gruppo di collegamenti

       --config nome
              Visualizza le alternative disponibili per un gruppo  di  collegamenti  e  permette  all'utente  di
              selezionare in modo interattivo quale usare. Il gruppo di collegamenti viene aggiornato.

       --help Show the usage message and exit.

       --version
              Show the version and exit.

OPZIONI

       --altdir directory
              Specifica la directory delle alternative, quando deve essere diversa da quella predefinita.

       --admindir directory
              Specifica la directory di amministrazione, quando deve essere diversa da quella predefinita.

       --log file
              Specifica   il   file   di   registro,   quando   deve   essere   diverso  da  quello  predefinito
              (/var/log/alternatives.log).

       --force
              Permette a update-alternatives di sostituire o eliminare qualsiasi file reale che è installato  in
              una posizione dove deve essere installato o rimosso un collegamento di alternativa.

       --skip-auto
              Salta  la  richiesta di input sulla configurazione per le alternative che sono configurate in modo
              corretto in modalità automatica. Questa opzione è rilevante solo con --config o --all.

       --verbose
              Genera più commenti riguardo a ciò che update-alternatives sta facendo.

       --quiet
              Non genera alcun commento a meno che non si verifichi un errore.

STATO D'USCITA

       0      L'azione richiesta è stata effettuata con successo.

       2      Si sono verificati dei problemi nell'analisi della riga di comando o nell'effettuare l'azione.

AMBIENTE

       DPKG_ADMINDIR
              Se impostata e l'opzione --admindir non  è  stata  specificata,  verrà  usata  come  directory  di
              amministrazione di base.

FILE

       /etc/alternatives/
              La  directory delle alternative predefinita. La directory considerata può essere modificata usando
              l'opzione --altdir.

       /var/lib/dpkg/alternatives/
              La directory di amministrazione predefinita. La directory considerata può essere modificata usando
              l'opzione --admindir.

FORMATO DI QUERY

       Il formato di update-alternatives --query è un formato semplice in stile RFC822. È  composto  da  n  +  1
       blocchi dove n è il numero delle alternative disponibili nel gruppo di collegamenti interrogato. Il primo
       blocco contiene i seguenti campi:

       Name: nome
              Il nome dell'alternativa nella directory delle alternative.

       Link: collegamento
              Il nome generico dell'alternativa.

       Slaves: elenco di collegamenti secondari
              Quando  è  presente  questo  campo,  le righe successive contengono tutti i collegamenti secondari
              associati con il collegamento principale dell'alternativa, uno per riga. Ogni  riga  contiene  uno
              spazio,  il  nome  generico  dell'alternativa  secondaria,  un  altro  spazio  e  il  percorso del
              collegamento secondario.

       Status: stato
              Lo stato dell'alternativa (auto o manual).

       Best: scelta-migliore
              Il percorso all'alternativa migliore per questo gruppo di collegamenti; non è presente se non  c'è
              alcuna alternativa disponibile.

       Value: alternativa-attualmente-selezionata
              Il percorso dell'alternativa attualmente selezionata. Può anche avere il valore magico none. Viene
              usato se il collegamento non esiste.

       Gli altri blocchi descrivono le alternative disponibili nel gruppo di collegamenti interrogato:

       Alternative: percorso-di-questa-alternativa
              Percorso dell'alternativa di questo blocco.

       Priority: valore-priorità
              Valore della priorità di questa alternativa.

       Slaves: elenco di collegamenti secondari
              When  this  field  is present, the next lines hold all slave alternatives associated to the master
              link of the alternative. There is one slave per line. Each line contains one  space,  the  generic
              name of the slave alternative, another space, and the path to the slave alternative.

       Esempio
              $ update-alternatives --query editor
              Name: editor
              Link: /usr/bin/editor
              Slaves:
               editor.1.gz /usr/share/man/man1/editor.1.gz
               editor.fr.1.gz /usr/share/man/fr/man1/editor.1.gz
               editor.it.1.gz /usr/share/man/it/man1/editor.1.gz
               editor.pl.1.gz /usr/share/man/pl/man1/editor.1.gz
               editor.ru.1.gz /usr/share/man/ru/man1/editor.1.gz
              Status: auto
              Best: /usr/bin/vim.basic
              Value: /usr/bin/vim.basic

              Alternative: /bin/ed
              Priority: -100
              Slaves:
               editor.1.gz /usr/share/man/man1/ed.1.gz

              Alternative: /usr/bin/vim.basic
              Priority: 50
              Slaves:
               editor.1.gz /usr/share/man/man1/vim.1.gz
               editor.fr.1.gz /usr/share/man/fr/man1/vim.1.gz
               editor.it.1.gz /usr/share/man/it/man1/vim.1.gz
               editor.pl.1.gz /usr/share/man/pl/man1/vim.1.gz
               editor.ru.1.gz /usr/share/man/ru/man1/vim.1.gz

DIAGNOSTICA

       Con  --verbose,  update-alternatives  si  dilunga  sul suo standard output in modo incessante su cosa sta
       facendo. Se si verificano dei problemi, update-alternatives produce in output messaggi di errore nel  suo
       canale  dello  standard error e restituisce uno stato di uscita 2. Questi messaggi diagnostici dovrebbero
       essere autoesplicativi; se non li si ritiene tali, segnalare la cosa come un bug.

ESEMPI

       Ci sono svariati pacchetti che forniscono un editor di testo compatibile con vi, per esempio nvi  e  vim.
       Quello da usarsi è controllato dal gruppo di collegamenti vi, che include i collegamenti per il programma
       stesso e per la pagina di manuale associata.

       Per  visualizzare  tutti  i  pacchetti disponibili che forniscono vi e la sua impostazione attuale, usare
       l'azione --display:

              update-alternatives --display vi

       Per scegliere una particolare implementazione di vi, usare questo comando da root e  poi  selezionare  un
       numero dall'elenco:

              update-alternatives --config vi

       Per ritornare alla scelta automatica dell'implementazione di vi, usare questo da root:

              update-alternatives --auto vi

VEDERE ANCHE

       ln(1), FHS: lo standard per la gerarchia del file system.

Progetto Debian                                  31 luglio 2012                           update-alternatives(8)