/etc/alternatives

読み:スラ・エトセ・スラ・オルタネイティヴス
読み:エトセ・オルタネイティヴス
外語:/etc/alternatives 英語
品詞:名詞

Linuxで、alternativeディレクトリとして使用されるディレクトリ

目次

Linuxでは、バージョン間、あるいは互換品の使用などにおいて、仕様差や互換性問題が生じるようなものを中心に、alternativeディレクトリが使用されている。

この手法では、コマンドを直接実行させるのではなく、一旦alternativeディレクトリへのシンボリックリンクを介し、ここから実際の実行ファイルへのシンボリックリンクを介して実行させる。

こうすることで、alternativeディレクトリへのシンボリックリンクを編集することで簡単に実行ファイルを切り替えることができる。

vimの例

例えば、vi互換のエディター「Vim」は、概ね次のようになっている。

$ file /usr/bin/vi
/usr/bin/vi: symbolic link to `/etc/alternatives/vi'

/etc/alternatives/vi もまたシンボリックリンクである。

$ file /etc/alternatives/vi
/etc/alternatives/vi: symbolic link to `/usr/bin/vim.basic'

つまり、次のようにして動作する。

/usr/bin/vi → /etc/alternatives/vim → /usr/bin/vim.basic

viだけでなく、exやviewなどのコマンドも同様の経路でvim.basicまたはvim.tinyが実行されるようになっている。

Javaの例

Javaは色々なバージョンがあり、頻繁に互換性問題を起こすため、alternativeディレクトリを介して結ばれているようである。

  • /usr/bin/java → /etc/alternatives/java → /usr/lib/jvm/jdk1.6.0_45/bin/java
  • /usr/bin/javac → /etc/alternatives/javac → /usr/lib/jvm/jdk1.6.0_45/bin/javac

GNUソフトウェアの場合

この他、gから始まるGNUソフトウェアも、gの無い従来名からalternativeディレクトリを介して結ばれる傾向にある。

例えば次のようになる。

  • /usr/bin/awk → /etc/alternatives/awk → /usr/bin/gawk
  • /usr/bin/c++ → /etc/alternatives/c++ → /usr/bin/g++
  • /usr/bin/cc → /etc/alternatives/cc → /usr/bin/gcc

ccやc++のリンク先をclangやclang++に変えれば、コンパイラーをclang/LLVMに変更できることになる。

用語の所属
/etc
関連する用語
Linux

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.04a (27-May-2022)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club