[wiki:docs Vine Linux ドキュメント] / [wiki:../../../ Vine Linux 7.x] / [wiki:../../ CUI ユーザーズガイド] / [wiki:../ alternatives による標準コマンドの切り替え] / alternatives コマンドの使い方 [[PageOutline]] = alternatives コマンドの使い方 = alternatives コマンドの利用方法を扱います。 現在の設定を確認する方法、切り替える方法を扱います。 登録と削除に関しては実際には次節で扱います。 == オプション == --help や --version というオプションを使うとバージョン情報とヘルプメッセージを表示します。 {{{ #!sh $ /sbin/alternatives --help }}} --verbose というオプションを使うと、メッセージが詳細に表示される場合があります。 --verbose は、他のオプションと合わせて利用します。 == 現在の設定を確認する == 現在の設定を確認するには --display というオプションを用います。 {{{ #!sh $ /sbin/alternatives --display 総称名 }}} これも一般ユーザー権限で実行できます。 '''!ToDo: 7.x に合わせた例に修正''' {{{ #!sh $ /sbin/alternatives --display gcc 1 gcc - status is auto. 2 link currently points to /usr/bin/gcc-3.3.6 3 /usr/bin/gcc-3.3.6 - priority 30 4 slave c99: /usr/bin/c99-3.3.6 5 slave cc: /usr/bin/gcc-3.3.6 6 slave i386-vine-linux-gcc: /usr/bin/i386-vine-linux-gcc-3.3.6 7 slave c89: /usr/bin/c89-3.3.6 8 /usr/bin/gcc-2.95.3 - priority 15 9 slave cc: /usr/bin/gcc-2.95.3 10 /usr/bin/gcc-4.0.2 - priority 20 11 slave c99: /usr/bin/c99-4.0.2 12 slave cc: /usr/bin/gcc-4.0.2 13 slave i386-vine-linux-gcc: /usr/bin/i386-vine-linux-gcc-4.0.2 14 slave c89: /usr/bin/c89-4.0.2 15 Current `best' version is /usr/bin/gcc-3.3.6. }}} 説明のために左端に行番号をつけています。 1行目に総称名 gcc があり、mode の表示があります。status is auto. となっているので、優先度の一番高いものを自動的に選択するという状態です。 2行目に link currently points to /usr/bin/gcc-3.3.6 とあり、gcc-3.3.6 が選択されていることがわかります。 manual モードで、選択候補が無いという場合には、 link currently absent となります。 3,8,10行に優先度(priority)があり、gcc-3.3.6 が 30 , gcc-2.95.3 が 15 , gcc-4.0.2 が 20 となっていることがわかります。 また、一番下の15行目に Current `best' version is /usr/bin/gcc-3.3.6. とあり、ここでも、優先度が一番高いのは gcc-3.3.6 であるということがわかります。 4〜7,9,11〜14行の slave で指定されているものは、スレーブリンクです。(参照 セクション IV.28.2.3 - リンクグループ(マスターリンクとスレーブリンク)) その上の 3,8,10行にある /usr/bin/gcc-3.3.6 , /usr/bin/gcc-2.95.3 , /usr/bin/gcc-4.0.2 が マスターリンク です。 マスターリンクである /usr/bin/gcc-4.0.2 を選択すると、スレーブリンクである c99,cc,i386-vine-linux-gcc,c89 も選択されたことになり、まとめて切り替えることができます。 == 設定を切り替える == ここから先の操作はスーパーユーザ(root)権限で行う必要があります。 優先度が高いものを自動的に利用する、というのではなく選択するには、--config や --all や --set というオプションを用います。 優先度に従い自動的に切り替えるように戻すには、--auto というオプションを用います。 {{{ #!Admonition rpmパッケージのインストール時に設定された alternatives は、パッケージのアンインストール時に manual( mode) から auto(matic mode) に切り替える処理が行われる場合がありますが、自分で alternatives として登録した場合などは、ファイルが削除されたりしてもモードの切り替えは行われないので、必要に応じて auto に戻したり、どれかを選択したりしてください。 }}} === 対話的に切り替える === 対話的に設定するには、--config というオプションを用います。 {{{ #!sh $ sudo /sbin/alternatives --config 総称名 }}} 以下は、総称名 vi の変更例です。 {{{ #!sh $ sudo /sbin/alternatives --config vi [sudo] password for yasumichi: 7 プログラムがあり 'vi' を提供します。 選択 コマンド ----------------------------------------------- 1 /bin/vim.tiny 2 /usr/bin/vim.big 3 /usr/bin/vim.X11-normal 4 /usr/bin/vim.normal 5 /usr/bin/vim.X11-big *+ 6 /usr/bin/vim.huge 7 /usr/bin/vim.X11-huge Enter を押して現在の選択 [+] を保持するか、選択番号を入力します: }}} *+ と書かれているものが現在選択されているコマンドです。そのまま利用するのであれば Enter キーを押します。この場合には、モードは変更されません。 ここで /bin/vim.tiny に切り替えたい場合は、1 と入力して Enter キーを押します。プロンプトに戻ったら、--display オプションにより、現在の設定を確認してみます。 {{{ #!sh $ /sbin/alternatives --display vi vi - ステータスは手動です。 リンクは現在 /bin/vim.tiny を指しています。 (以下、略) }}} 自分で選択したので「ステータスは手動です。」と表示されています。 二行目で「リンクは現在 /bin/vim.tiny を指しています。」となっていることが確認できます。 === 全ての総称名について対話的に切り替える === オプション --all を指定すると、すべての「総称名」について順に対話的に設定できます。設定方法は、--config オプションと同様です。 {{{ #!sh $ sudo /sbin/alternatives --all }}} Enter だけ入力していけば、何も変更せずに終了できるので、どんな「総称名」と「選択候補」があるのか確認することもできます。 === 直接指定して切り替える === 対話的に決定するのではなく、直接指定するには --set というオプションを用います。 {{{ #!sh $ sudo /sbin/alternatives --set 総称名 選択候補 }}} 以下は、総称名 vi の設定例です。 {{{ #!sh $ sudo /sbin/alternatives --set vi /bin/vim.tiny }}} === 自動モードに戻す === 「手動」から「自動」に戻すには --auto というオプションを用います。 {{{ #!sh $ sudo /sbin/alternatives --auto 総称名 }}} 総称名 vi を「自動」に戻します。 {{{ #!sh $ sudo /sbin/alternatives --auto vi }}}