フォルダの意味をメモ

rubyの最新版をインストールした結果、システムに3つのrubyが共存してしまいましたが、すべて違う場所にインストールされました。
いまいちツールをインストールする場所がよくわからなかったのでちょっと調べたら良いサイトがありました。Linux初心者向けです。

「連載記事 「Windowsユーザーに教えるLinuxの常識」各ディレクトリの役割を知ろう(サブディレクトリ編)」
http://www.atmarkit.co.jp/flinux/rensai/theory03/theory03a.html

によれば、

/usr/bin
一般ユーザが利用するコマンドが入っている
/usr/local/bin
システム管理者がソースからコンパイルしてインストールしたコマンドが入っている
/opt/local/bin
パッケージ管理システムがインストールしたコマンドが入っている(参照先だと/opt/localというフォルダではないけれど)


なので、/usr/binにはデフォルトのrubyが、/usr/local/binにはソースから入れたrubyが、/opt/local/binにはMacPortで入れたrubyが入っています。


ところで/usr/bin/gemや/usr/bin/railsを見ると、先頭で#! /usr/bin/rubyとか/usr/bin/env rubyとかやっているので、/usr/bin/rubyを置き換えるかリネームしてほかのrubyのリンクを置くかしないと駄目そうですね。

mv /usr/bin/ruby /usr/bin/ruby1.8.2
ln -s /usr/local/bin/ruby /usr/bin/ruby
mv /usr/lib/ruby /usr/lib/ruby1.8.2
ln -s /usr/local/lib/ruby /usr/lib/ruby

これでOKです。
OKじゃなかった。


ruby1.8.2が有効な状態でgemもrailsも入れたので1.8.6にリンク張ったらエラーが出てしまった。
とりあえずリンクを戻して回避…


ところで、Macの話なのに素で「フォルダ」とか言ってしまうあたりがWindowsXPに慣れきっていると思いました。
# ちなみに自分はWindowsも好きですよ。