.\" This man page is copyright 1997 Charles Briscoe-Smith
.\" This is free documentation; you can redistribute it and/or modify
.\" it under the terms of the GNU General Public License as published
.\" by the Free Software Foundation; either version 2 of the License, or
.\" (at your option) any later version.  There is NO WARRANTY.  You can
.\" find the GNU GPL in /usr/share/common-licenses/GPL on any Debian system.
.TH UPDATE-ALTERNATIVES 8 "19 January 1998" "Debian Project" "dpkg utilities"
.SH 名前
update-alternatives \- デフォルトとして起動するシンボリックリンクを管理する
.SH 書式
.B update-alternatives
.RI [ options ]
.B --install
.I link name path priority
.RB [ --slave
.I link name
.IR path ]...
.PP
.B update-alternatives
.RI [ options ]
.B --remove
.I name path
.PP
.B update-alternatives
.RI [ options ]
.B --remove-all
.I name
.PP
.B update-alternatives
.RI [ options ]
.B --all
.PP
.B update-alternatives
.RI [ options ]
.B --auto
.I name
.PP
.B update-alternatives
.RI [ options ]
.B --display
.I name
.PP
.B update-alternatives
.RI [ options ]
.B --list
.I name
.PP
.B update-alternatives
.RI [ options ]
.B --config
.I name
.PP
.B update-alternatives
.RI [ options ]
.B --set
.I name path
.SH 説明
.B update-alternatives
は、Debian alternatives システムを構成する種々のシンボリックリンクを作成、
削除、管理し、その情報を表示する。
.PP
同等な、あるいは同類似した機能を持つ複数のプログラムを同時に一つのシステムに
インストールすることができる。例えば、多くのシステムでは同時に複数のテキスト
エディタがインストールされている。そのおかげで、ひとつのシステムを使う複数のユーザが
それぞれの好みエディタを使うことができるようになるのだが、ユーザがどれを選択するか
を決めなかった場合、プログラムがエディタを呼び出すときにどれを使えばいいのかをうまく
決められなくなってしまうことにもなる。
.PP
Debian の alternatives システムはこの問題を解決することを目的としている。
交換可能な機能を提供する全てのファイルがファイルシステムにあるひとつの
総称名(generic name)を共有する。
alternatives システムとシステム管理者がともに
この総称名(generic name)が実際のどのファイルを参照するかを決定する。
例えば、もし、
.BR ed (1)
と
.BR nvi (1)
の二つがシステムにインストールされている場合、alternatives システムは、
総称名(generic name)
.I /usr/bin/editor
が
.I /usr/bin/nvi
をデフォルトで参照するようにする。システム管理者はこれを上書きして、
.I /usr/bin/nvi
ではなくて、
.I /usr/bin/ed
を参照するようにできる。そうすると、alternatives システムは、明示的な
要求がない限り、この設定を変えることはない。
.PP
総称名(generic name)は選択された候補(alternative)への直接のシンボリックリンクになって
いるわけではない。かわりに、それは、
.I alternatives
.IR directory
の下にある名前へのシンボリックリンクになっている。一方、この名前は実際に参照される
ファイルへのシンボリックリンクになっている。このようにすることによって、
システム管理者の変更を、
.I /etc
ディレクトリの中だけに限定することができる。なぜ、こうするのがいいかについては
FHS (q.v) を参照すること。
.PP
特定の機能を持ったファイルを提供する個々のパッケージがインストールされたり、
変更されたり、削除されたりすると、
.B update-alternatives
が呼ばれ、alternatives システムの該当ファイルについての情報がアップデートされる。
.B update-alternatives
は普通、Debian パッケージの
.B postinst
か
.B prerm
スクリプトから呼ばれる。
.PP
多くの選択候補(alternatives)が同時に更新されると役立つことが多いので、
それらはグループとして変更される。例えば、いくつかのバージョンの
.BR vi (1)
がインストールされている場合、
.I /usr/share/man/man1/vi.1
によって参照されるマニュアルページが、
.IR /usr/bin/vi
によって参照される実行ファイルと対応するべきである。
.B update-alternatives
は、これを
.I マスタ(master)
リンクと
.I スレーブ(slave)
リンクを通して扱う。マスタが変更されると、それに関連のあるスレーブも全て更新
される。マスタリンクとそれに関連のあるスレーブリンクは
.I リンク(link)
.IR グループ(group)
を成す。
.PP
各リンクグループは、その時点で、オートマチック(automatic)かマニュアル(manual)
のどちらかのモードになっている。グループがオートマチックモードのとき、
alternatives システムは、パッケージがインストールされたり削除されたりすると、
リンクを更新すべきかどうか、更新するなら、どのように更新すべきかを自動的に
決定する。マニュアルモードのときは、alternatives システムはリンクを更新せず、
全ての決定をシステム管理者にゆだねる。
.PP
リンクグループ(link group)は、最初にシステムに導入されたときはオートマチックモード
になっている。システム管理者がシステムの自動的な設定に変更を加えると、この変更は
次回にこのリンクグループ(link group)に対して
.B update-alternatives
が実行されたときに認識され、そのグループは自動的にマニュアルモード(manual mode)
に変更される。
.PP
それぞれの選択候補には
.I 優先順位(priority)
がつけられている。あるリンクグループ(link group)がオートマチックモード(automatic mode)
にあるとき、そのグループのメンバが指す選択候補は最も優先順位(priority)の最も高いものになる。
.PP
.I --config
オプションを使うと、
.B update-alternatives
は、このオプションで与えられる名前がマスタとなるリンクグループの選択候補を全て
列挙する。
そうして、あなたは、このリンクグループに対してどの選択候補を使うかを決めるように
促される。いったん変更すると、そのリンクグループはもはや
.I auto
モードにはならない。再びオートマチックな状態に戻すためには、
.I --auto
オプションを使う必要がある。
.SH 用語
.B update-alternatives
の動作はたいへん複雑なので、その操作を説明するのに、いつくかの特別な用語が
役立つだろう。
.TP
総称名(generic name)
.IR /usr/bin/editor
といった名前で、alternatives システムを通して、同じような機能を持つ多くのファイル
のうちの一つを参照するもの。
.TP
シムリンク(symlink)
何も条件なしで使われる場合、これは alternatives directoryの下にあるシンボリックリンクを
意味する。システム管理者が調整する場合は、これを使うことが期待される。
.TP
選択候補(alternative)
ファイルシステム中の個別の(specific)ファイルの名前。alternatives システムを使うことで
総称名(generic name)経由でアクセスできるようになる。
.TP
alternatives directory
デフォルトでは、
.IR /etc/alternatives
となるディレクトリで、シムリンク(symlinks)を含んでいる。
.TP
administrative directory
デフォルトでは、
.IR /var/lib/rpm/alternatives
となるディレクトリで、
.BR update-alternatives
の状態についての情報を含んでいる。
.TP
リンクグループ(link group)
関連のあるシムリンク(symlinks)の集合でグループとしてアップデートされる。
.TP
マスタリンク(master link)
リンクグループ(link group)の中にあって、
グループ中の他のリンクがいかに設定されるかを決定するリンク。
.TP
スレーブリンク(slave link)
リンクグループ(link group)の中にあって、
マスタリンク(master link)の設定によって制御されるリンク。
.TP
オートマチックモード(automatic mode)
リンクグループがオートマチックモードのとき、alternatives システムは、グループ中の
リンクが、そのグループにふさわしい候補の中で最も優先順位(priority)の高いものを指す
ことを保証する。
.TP
マニュアルモード(manual mode)
リンクグループがマニュアルモードのとき、alternatives システムはシステム管理者の
設定に対してどんな変更も加えない。
.SH オプション
.B update-alternatives
が何か意味のあることを実行する必要があるなら、ひとつの動作(action)だけを
指定しなければならない。
共通オプションはいくつ指定していいし、どの動作(action)と一緒でもかまわない。
.SS "共通オプション"
.TP
.B --verbose
は、
.B update-alternatives
がしていることについてのより多くのコメントを出力する。
.TP
.B --quiet
は、エラーが起こらないかぎりどんなコメントも出力しない。
このオプションはまだ実装されていない。
.TP
.B --test
は、実際には何もしない。もし実行されたれたら何が行われるかを示すだけである。
このオプションはまだ実装されていない。
.TP
.B --help
使用法についての情報を与える(また、これがどんなバージョンの
.B update-alternatives
なのかにを示す)。
.TP
.B --version
これがどんなバージョンの
.B update-alternatives
なのかを示す(また、使い方についての情報を与える)。
.TP
\fB--altdir\fR \fIdirectory\fR
alternatives directoryがデフォルトと異なることがある場合に、それを指定する。
.SS 動作(ACTIONS)
.TP
\fB--install\fR \fIlink gen path pri\fR [\fB--slave\fR \fIslink sgen spath\fR] ...
システムに選択候補(alternatives)のグループを加える。
.I gen
は、マスタリンク(master link)に対する総称名であり、
.I link
はそのシムリンク(symlink)の名前であり、
.I path
は、このマスタリンク(master link)に対して導入される選択候補である。
.IR sgen
.I slink
と
.I spath
は、スレーブリンク(slave link)に対する総称名(generic name)、シムリンク(symlink)、
選択候補(alternative)である。
.B --slave
オプションの後には引数なしか、最大三つまでの引数をつけることができる。
.IP
もし、指定されたマスタ(master)のシムリンク(symlink)がすでに alternatives
システムの登録されていると、与えられた情報はそのグループに対する新たな
選択候補(alternatives)の集合として付け加えられる。
そうではなくて、まだ alternatives システムに存在しないなら、新たなグループは、
オートマチックモード(automatic mode)に設定されて、この情報とともにシステムに
付け加えられる。
もし、そのグループがオートマチックモードにあり、新たに加えられた選択候補の優先順位
がすでにインストールされている他のどの選択候補よりも高いなら、シムリンク(symlink)
はこの新たに加えられた選択候補を指すようにアップデートされるだろう。
.TP
\fB--set\fR \fIname path\fR
Set the program
.I path
であたえられたプログラムを
.I name
の選択候補(alternatives)として設定する。
これは
.IB --config
と等価であるが、非対話式でありスクリプトで利用することができる。
.TP
\fB--remove\fR \fIname path\fR
一つの選択候補とそれに関連づけられた全てのスレーブリンク(slave link)を削除する。
.I name
は、alternatives ディレクトリにある名前であり、
.I path
は
.I name
がリンクすることのできるファイルへの絶対パスである。もし、
.I name
が実際に
.IR path
へのリンクならば、
.I name
は、別の適切な選択候補を指すようにアップデートされるか、そのような選択候補が
残っていなければ、削除される。
関連のあるスレーブリンク(slave links)はそれにともなってアップデートされたり、
削除されたりする。
もし、リンクが現在
.IR path
を指していないなら、どんなリンクも変更されない。選択候補についての情報だけが
削除される。
.TP
\fB--auto\fR \fIlink\fR
マスタシムリンク(master symlink)
.I link
をオートマチックモード(automatic mode)に変える。
この過程で、このシムリンク(symlink)とそのスレーブはアップデートされ、インストールされている
選択候補の中で最も優先順位の高いものを指すようになる。
.TP
\fB--display\fR \fIlink\fR
.I link
がマスタリンク(master link)になっているリンクグループ(link group)についての情報を表示する。
表示される情報には、そのグループのモード(オートかマニュアルか)、シムリンク(symlink)
が現在どの選択候補を指しているか、他にどんな選択候補が利用できるか(また、それに対応する
スレーブの選択候補)、さらに現在インストールされている選択候補の中で最も優先順位
(priority)の高いものはどれかという情報が含まれる。
.SH ファイル
.TP
.I /etc/alternatives/
デフォルトの alternatives directory。
.B --altdir
オプションで上書きできる。
.TP
.I /var/lib/rpm/alternatives/
デフォルトの administration directory。
.B --admindir
オプションで上書きできる。
.SH "終了ステータス"
.IP 0
要求された動作(action)が成功。
.IP 2
コマンドラインを解析している間に、あるいはコマンドを実行中に問題が発生した。
.SH 診断
.B update-alternatives
は標準出力にその経過を絶え間なく出力しつづける。
問題が起こった場合、
.B update-alternatives
は標準エラー出力にエラーメッセージを出力し、終了ステータス2を返す。
これらの診断メッセージは説明するまでもないものであるはずである。
もし、そうなっていないことがわかったら、バグとして報告してほしい。
.SH バグ
バグを発見したら、Debianバグトラッキングシステムを使って報告していただきたい。
あるいは、それができなければ、著者に直接メールを送ってほしい。
.PP
.B update-alternatives
の操作とこのマニュアルページの間に一致しない点があったら、それは実装か文書
どちらかのバグであるから、報告していただきたい。
.SH 著者
Debian update-alternatives is copyright 1995
Ian Jackson.  It is free software; see the GNU General Public Licence
version 2 or later for copying conditions.  There is NO warranty.
.PP
This manual page is copyright 1997/98 Charles Briscoe-Smith.
This is free documentation; see the GNU General Public Licence
version 2 or later for copying conditions.  There is NO WARRANTY.
.PP
You can find the GNU GPL in /usr/share/common-licenses/GPL on any Debian system.

.SH 関連項目
.BR ln (1),
FHS, the Filesystem Hierarchy Standard.
