kuroの覚え書き

96の個人的覚え書き

シンボリックリンクとエイリアス



OSXのルートディレクトリ(システムの入っているHDDを開いて最初に現れる階層)には不可視ファイルが結構ある。

Finderで眺めている分には

f:id:k-kuro:20070724234345j:image

こんなちょっとしかないのに、ターミナルでlsをたたくと

f:id:k-kuro:20070724234431j:image

こんなにいろいろ入っていることが解る。

今回、上記Macとは異なるのだけれどあるときを境にetc、tmp、varという名前のエイリアスが出現した。

何気なく、これらエイリアスを違うフォルダに動かしてみたところ、見事に起動しなくなった。

あわてて元に戻したのは言うまでもないが。

で、調べて解ったことだが、OSXにはシンボリックリンクというものがあり(Unixでは昔からあったのだが)エイリアスとはちょっと違うらしい。シンボリックリンクはパスを記述したファイルらしく、オリジナルを移動したりシンボリックリンクファイル自身を移動したらリンクが切れてしまうという点がエイリアスとは異なるらしいが、どうやらシンボリックリンクエイリアスもFinder上では区別がつかないらしい。さらに上記の3つのシンボリックリンクは本来不可視化されているはずのもので、それが何かの拍子に見えるようになったらしい。

で、これらシンボリックリンクがルートに無いと起動できなくなるという訳だ。

さて、みえるようになっちったファイルを不可視化するにはどうしたらいいんだろうか?


追記

http://docs.info.apple.com/article.html?artnum=301677-ja

によると


Mac OS X 10.3 以降ではこれらの項目は、Mac OS X ボリュームのルートレベルにある ".hidden" という
名前のファイルにリストされることで隠されます(不可視)。Mac OS X 10.4 以降では、ファイルを隠す
のにこの方法は使われません。Mac OS X 10.4 以降ではファイルそのものに特定の属性を設定してファイ
ルを隠します。

ただし、Mac OS X 10.4 および 10.4.1 では、ディスクイメージを作成するとこれらの属性が保存されま
せん。これらのファイルが NetInstall、またはリストアを実行されたシステムで表示されないようにする
には、次の手順を使ってソースディスクイメージのファイルを不可視にする必要があります。

とな。

たしかにこのシステムはMac miniで構築した環境をディスクイメージを介して移動させたような・・・

40GBのHDDに80GBを買い足したときにHDDを移動したのでした。

で、いったんインストールしてしまうと属性を変更する手だてがないんでしょうかね。