2008-02-04

FreeBSD 6.3でもFreeSBIEはNO_UNIONFS=YESが必要

FreeSBIEにはmfs+unionfsを使うことで/usrなどへの書込みも可能にするような機構が組み込まれているが、unionfsの不完全さから、デフォルトではNO_UNIONFS=YESとなっている。

これを解消することなどを目的に、FreeBSD unionfsの改善提案および修正状況として、unionfsの再実装と6.3へのバックポートも行われたらしいので、もしかして使えるんじゃないかと、NO_UNIONFSを消してみた。結果はあと一歩というところ。

/tmpのパーミッションや、/tmpや/varとのマウント順序、dhclientの実行時期などに問題があったので、conf/rc.d/unionfsを調整すると、これらはすぐに解決し、ベースのシステムは問題なく起動するまでになった。しかし、Xのデスクトップ環境を作ろうとしてみると、いろいろなアプリケーションがうまく起動できない状態になっていた。

相当な時間をかけていろいろいじって調べたところ、unionfs上でUNIXドメインのソケットにうまくconnectできていない(Connection refused)ことがわかった。kern/118346にも報告があった。

というわけで、unionfsの利用は、当面おあずけ。

この過程で、zshにはzmodloadというモジュールロード機能があって、zsh/net/socketというモジュールをロードすると、zsocketというコマンドが使えるようになり、zshだけでUNIXドメインソケットを張ることができることを発見。たしかに今回みたいなちょこっとテストには便利だけど、これだけの機能を日常的に使う人いるのか?

0 件のコメント: