NOM
update-alternatives - maintenance des liens symboliques dterminant les
noms par dfaut de certaines commandes
SYNOPSIS
update-alternatives [options] commande
update-alternatives cre, enlve, conserve et affiche des informations
concernant les liens symboliques qui forment le systme Debian des
alternatives .
Il est possible d'installer, sur un mme systme et en mme temps, des
programmes qui remplissent des fonctions identiques ou semblables. Par
exemple, beaucoup de systmes installent plusieurs diteurs de texte en
mme temps. Cela permet chaque utilisateur d'un systme de choisir, s'il
le dsire, un diteur de texte diffrent ; mais cela rend les choses
difficiles pour le programme qui doit choisir un bon diteur de texte
quand l'utilisateur n'a pas fait de choix prcis.
Le systme Debian des alternatives essaie de rsoudre ce problme. Tous
les fichiers qui proposent des fonctions interchangeables se servent
d'un nom gnrique qui se trouve dans l'arborescence. Le systme des
alternatives et l'administrateur systme font connatre ensemble le
fichier qui est rellement vis par ce nom gnrique. Par exemple, si les
diteurs de texte ed(1) et nvi(1) sont tous les deux installs, le systme
des alternatives fait que le nom gnrique /usr/bin/editor renvoie par
dfaut /usr/bin/nvi. L'administrateur systme peut remplacer cette
assignation par /usr/bin/ed et le systme des alternatives ne la
changera pas tant qu'on ne lui aura pas demand explicitement de le
faire.
Le nom gnrique n'est pas un lien symbolique direct vers l'alternative
choisie. C'est en fait un lien symbolique vers un nom situ dans le
rpertoire des alternatives , lequel nom est son tour un lien
symbolique vers le fichier rellement vis. Les modifications faites par
l'administrateur systme sont ainsi confines dans le rpertoire /etc ; le
FHS (lisez-le) donne de Bonnes Raisons de faire ainsi.
Chaque fois qu'un paquet proposant un fichier pour une fonction
dtermine, est install, modifi ou dsinstall, update-alternatives est
appel pour mettre jour les informations concernant ce fichier dans le
systme des alternatives . En gnral, update-alternatives est appel dans
les scripts postinst (configure) et prerm (install) des paquets Debian.
Il est souvent utile de synchroniser certaines alternatives, de manire
pouvoir les manipuler globalement ; par exemple, quand plusieurs
versions de vi(1) sont installes, la page de manuel qui est vise par
/usr/share/man/man1/vi.1 devrait correspondre /usr/bin/vi.
update-alternatives gre ce problme avec les liens principaux ( master )
et les liens secondaires ( slave ). Quand le lien principal est chang,
tous les liens secondaires associs sont changs. Un lien principal et
ses liens secondaires associs composent un groupe de liens.
tout moment, un groupe de liens est dans l'un des deux modes
suivants : automatique ou manuel. Quand un groupe est dans le mode
automatique et que des paquets sont installs ou dsinstalls, le systme
des alternatives dcide automatiquement s'il doit mettre jour les
liens et comment le faire. Dans le mode manuel, le systme des
alternatives ne change pas les liens et laisse l'administrateur
systme prendre toutes les dcisions (sauf si quelque chose est cass).
Un groupe de liens est en mode automatique quand il est cre sur un
systme pour la premire fois. Quand l'administrateur systme modifie le
paramtrage automatique du systme, update-alternatives le remarquera la
prochaine fois qu'il sera lanc pour ce groupe aux liens modifis et il
fera passer ce groupe en mode manuel.
chaque alternative est associe une priorit. Quand un groupe de liens
est en mode automatique, l'alternative vise par les lments du groupe
est celle qui possde la priorit la plus leve.
Quand l'option --config est utilise, update-alternatives affiche toutes
les possibilits du groupe pour lequel nom est le lien principal. Le
choix actuel est not par un * . Il sera alors demand quel choix doit
tre fait pour ce groupe. Suivant le choix effectu, le groupe de liens
peut ne plus tre en mode auto. Il vous faudra utiliser l'option --auto
pour revenir au mode automatique (ou rutiliser --config et choisir
l'entre marque comme automatique).
Si vous voulez configurer de manire non interactive, vous pouvez
utiliser l'option --set (voyez ci-dessous).
Les diffrents paquets qui fournissent un mme fichier doivent le faire
en collaborant. En d'autres termes, l'utilisation de
update-alternatives est obligatoire pour tous les paquets qui sont dans
ce cas et il n'est pas possible de remplacer un fichier d'un paquet qui
n'utilise pas le mcanisme offert par update-alternatives.
TERMINOLOGIE
Comme les oprations de update-alternatives sont trs compliques, voici
quelques termes qui faciliteront l'explication.
nom gnrique (ou lien alternatif)
C'est un nom, par exemple /usr/bin/editor, qui renvoie, travers
le systme des alternatives , l'un des fichiers qui remplissent
des fonctions similaires.
nom alternatif
Nom d'un lien symbolique dans le rpertoire des alternatives.
alternative (ou chemin alternatif)
C'est le nom d'un fichier particulier dans l'arborescence ; il
peut tre accessible avec un nom gnriques grce au systme
d'alternatives.
rpertoire des alternatives
C'est le rpertoire qui contient les liens symboliques ; il
s'agit par dfaut de /etc/alternatives.
rpertoire administratif
C'est le rpertoire qui contient des renseignements sur l'tat de
update-alternatives. Il s'agit par dfaut de
/var/lib/dpkg/alternatives.
groupe de liens
C'est un ensemble de liens symboliques corrls, de manire qu'on
puisse les mettre jour en une seule fois.
lien principal
Dans un groupe de liens, le lient alternatif est le lien qui
dtermine comment sont configurs les autres liens du groupe.
lien secondaire ( slave )
Un lien alternatif est un groupe de liens contrls par le rglage
du lien principal.
mode automatique
Quand un groupe de liens est en mode automatique, le systme des
alternatives assure que les liens dans le groupe pointent vers
l'alternative possdant la priorit la plus leve dans ce groupe.
mode manuel
Quand un groupe de liens est en mode manuel, le systme des
alternatives ne modifie pas le paramtrage de l'administrateur
systme.
COMMANDES
--install lien nom chemin priorit [--slave lien nom chemin]...
Ajoute un groupe d'alternatives au systme. lien est le nom
gnrique du lien principal, nom est le nom de son lien
symbolique, et chemin est l'alternative prsente pour le lien
principal. Les paramtres qui suivent --slave sont le nom
gnrique, le lien symbolique dans le rpertoire des alternatives
et l'alternative pour un lien secondaire. On peut indiquer zro
ou plusieurs options --slave chacune suivie par trois paramtres.
L'alternative principale doit exister, sinon la commande
chouera. Cependant, si une alternative secondaire n'existe pas,
le lien secondaire ne sera simplement pas install (mais un
avertissement sera affich). Si un fichier existe l'emplacement
o l'alternative doit tre installe, il est conserv sauf si
--force est utilis.
Quand le lien principal spcifi existe dj dans les
enregistrements du systme des alternatives , les renseignements
fournis sont ajouts dans un nouvel ensemble d'alternatives pour
le groupe. Sinon, un nouveau groupe contenant ces informations
est ajout et mis en mode automatique. Quand un groupe est en
mode automatique, et que la priorit des alternatives
nouvellement ajoutes est suprieure celle de toutes les
alternatives installes dans ce groupe, les liens symboliques
sont mis jour et pointent vers les alternatives nouvellement
ajoutes.
--set nom chemin
Ajoute le programme chemin comme alternative pour nom. C'est
quivalent --config mais ce n'est pas interactif et on peut donc
crire un script.
--remove nom chemin
Enlve une alternative et tous ses liens secondaires associs. nom
est un nom dans le rpertoire des alternatives , et chemin est
un nom de fichier auquel nom peut tre li. Quand nom est en effet
li chemin, nom est mis jour et pointe vers une autre
alternative adquate ou bien est enlev s'il n'y en a pas d'autre.
De mme, les liens secondaires associs sont mis jour ou enlevs.
Quand le lien ne pointe pas dj sur chemin, aucun lien n'est
modifi ; seules les informations sur l'alternative sont
supprimes.
--remove-all nom
Supprime toutes les alternatives et tous les liens secondaires
associs. nom est un nom dans le rpertoire des alternatives.
--all Utilise --call sur toutes les alternatives. Cette option peut
tre combine avec --skip-auto pour revoir et configurer toutes
les alternatives qui ne sont pas en mode automatique. Les
alternatives errones sont aussi affiches. Ainsi, une mthode
simple pour corriger les alternatives casses est d'utiliser yes
'' | update-alternatives --force --all.
--auto nom
Passe le lien symbolique principal nom en mode automatique. En
mme temps, le lien symbolique principal et ses liens secondaires
sont mis jour et pointent vers les alternatives avec les
priorits les plus leves.
--display nom
Affiche des renseignements sur le groupe de liens. L'information
affiche comprend le mode du groupe (auto ou manuel), vers quelle
alternative le lien symbolique pointe actuellement, quelles
autres alternatives sont disponibles (et les liens secondaires
associs), et l'alternative actuellement installe qui possde la
priorit la plus leve.
--get-selections
Affiche tous les noms principaux d'alternatives (ceux qui
contrlent un groupe de liens) ainsi que leur tat. Chaque ligne
comporte jusqu' trois champs (spars par un ou plusieurs
espaces). Le premier est le nom de l'alternative, le second est
son tat ( auto ou manual ) et le dernier montre le choix
actuel pour l'alternative (il s'agit d'un nom de fichier, qui
peut contenir des espaces).
--set-selections
Lit la configuration des alternatives sur l'entre standard, dans
le format utilis par update-alternatives --get-selections et les
configure en consquence.
--query nom
Affiche des informations sur le groupe de liens de manire
analogue --display, mais sous une forme qui peut tre analyse
automatiquement (voir la section FORMAT DE REQUTE ci-dessous).
--list nom
Affiche toutes les cibles du groupe de liens.
--config nom
Affiche les alternatives disponibles pour un groupe de liens et
permetde choisir interactivement laquelle doit tre utilise. Le
groupe de liens est mis jour.
--help Affiche un message d'aide puis quitte.
--version
Affiche le numro de version puis quitte.
OPTIONS
--altdir rpertoire
Donne le rpertoire des alternatives, quand il est diffrent de
celui par dfaut.
--admindir rpertoire
Donne le rpertoire administratif, quand il est diffrent de celui
par dfaut.
--log fichier
Specifies the log file, when this is to be different from the
default (/var/log/alternatives.log).
--force
Autorise update-alternatives remplacer tout fichier install la
place d'un lien d'alternative qui doit tre cr.
--skip-auto
Passe l'invite de configuration pour les alternatives qui sont
correctement configures en mode automatique. Cette option n'est
pertinente qu'avec --config ou --all.
--verbose
produit plus de commentaires sur ce que fait
update-alternatives.
--quiet
Ne cre pas de commentaire moins qu'une erreur ne survienne.
FICHIERS
/etc/alternatives/
Le rpertoire des alternatives par dfaut. Peut tre remplac avec
l'option --altdir.
/var/lib/dpkg/alternatives/
Le rpertoire administratif par dfaut. Peut tre remplac avec
l'option --admindir
CODE DE SORTIE
0 L'action demande s'est correctement droule.
2 Des problmes sont survenus lors de l'analyse de la ligne de
commande ou bien pendant l'excution de l'action.
FORMAT DE REQUTE
Le format d'update-alternatives --query est un format plat de type
RFC822. Il est constitu de n+1 blocs o n est le nombre d'alternatives
disponibles dans le groupe de liens interrog. Le premier bloc contient
les champs suivants :
Link: <lien>
Nom gnrique de l'alternative.
Status: <tat>
tat de l'alternative (auto ou manual).
Best: <meilleur choix>
Chemin de la meilleure alternative pour ce groupe de liens.
N'est pas prsent si aucun alternative n'est disponible.
Value: <alternative actuellement choisie>
Chemin de l'alternative actuellement choisie. Peut aussi prendre
la valeur spciale none, utilise si le lien n'existe pas.
Les autres blocs dcrivent les alternatives disponibles dans le
groupe de liens interrog.
Alternative: <chemin de cette alternative>
Chemin vers l'alternative de ce bloc
Priority: <valeur de la priorit>
Valeur de la priorit alternative.
Replaces: <liste des liens secondaires>
Lorsque cet en-tte est prsent, la ligne suivante contient
toutes les alternatives secondaires associes au lien
principal de cette alternative, raison d'une alternative
secondaire par ligne. Chaque ligne comporte un espace, le
nom de l'alternative secondaire, un espace et le chemin
vers l'alternative secondaire.
Exemple
$ update-alternatives --query editor
Link: editor
Status: auto
Best: /usr/bin/vim.gtk
Value: /usr/bin/vim.gtk
Alternative: /bin/ed
Priority: -100
Slaves:
editor.1.gz /usr/share/man/man1/ed.1.gz
Alternative: /usr/bin/vim.gtk
Priority: 50
Slaves:
editor.1.gz /usr/share/man/man1/vim.1.gz
editor.ru.1.gz /usr/share/man/ru/man1/vim.1.gz
editor.pl.ISO8859-2.1.gz /usr/share/man/pl.ISO8859-2/man1/vim.1.gz
editor.it.ISO8859-1.1.gz /usr/share/man/it.ISO8859-1/man1/vim.1.gz
editor.pl.UTF-8.1.gz /usr/share/man/pl.UTF-8/man1/vim.1.gz
editor.it.1.gz /usr/share/man/it/man1/vim.1.gz
editor.fr.UTF-8.1.gz /usr/share/man/fr.UTF-8/man1/vim.1.gz
editor.fr.1.gz /usr/share/man/fr/man1/vim.1.gz
editor.it.UTF-8.1.gz /usr/share/man/it.UTF-8/man1/vim.1.gz
editor.pl.1.gz /usr/share/man/pl/man1/vim.1.gz
editor.fr.ISO8859-1.1.gz /usr/share/man/fr.ISO8859-1/man1/vim.1.gz
DIAGNOSTICS
Avec l'option --verbose, update-alternatives affiche de trs
nombreuses informations sur la sortie standard. Quand un problme
survient, update-alternatives envoie des messages d'erreur sur
la sortie d'erreur standard et retourne un tat de sortie gal 2.
Ces diagnostics devraient tre simples comprendre ; si ce n'est
pas le cas, veuillez envoyer un rapport de bogue.
EXEMPLES
Plusieurs paquets fournissent un diteur de texte compatible avec
vi, par exemple nvi et vim. Celui qui sera utilis est dtermin
par le groupe de liens vi, qui comprend des liens pour le
programme lui-mme et sa page de manuel.
Pour afficher les paquets disponibles qui fournissent vi et son
paramtrage actuel, on peut utiliser l'action --display :
update-alternatives --display vi
Pour choisir une implmentation particulire de vi on peut
utiliser cette commande en tant que superutilisateur et choisir
un nombre dans la liste :
update-alternatives --config vi
Pour retrouver l'implmentation par dfaut de vi on peut utiliser
cette commande en tant que super-utilisateur :
update-alternatives --auto vi
BOGUES
Si vous trouvez un bogue, veuillez le signaler au systme de
suivi des bogues de Debian.
Si vous trouvez une discordance entre l'action de
update-alternatives et cette page de manuel, c'est qu'il y a un
bogue, soit dans l'implmentation soit dans la documentation ;
faites un rapport.
AUTEURS
Copyright (C) 1995 Ian Jackson
Copyright (C) 2009 Raphael Hertzog
Ce programme est un logiciel libre ; voyez la GNU General
Public Licence version 2 ou suprieure pour le copyright. Il n'y
a PAS de garantie.
Cette page de manuel est copyright 1997, 1998 Charles
Briscoe-Smith et autres auteurs.
Cette documentation est libre ; voyez la GNU General Public
Licence version 2 ou suprieure pour le copyright. Il n'y a PAS
de garantie.
VOIR AUSSI
ln(1), FHS, le standard pour l'organisation du systme de
fichiers.
TRADUCTION
Ariel VARDI <ariel.vardi@freesbee.fr>, 2002. Philippe
Batailler, 2006. Nicolas Franois, 2006. Veuillez signaler
toute erreur <debian-l10n-french@lists.debian.org>.