2006年10月30日

複数パーティションの使い分けでハマる

手元で使っているノートPC(Z60t)には、Ubuntu 6.06.1 LTSである。
当初は複数ディストリビューションを試すべく、/homeを大きくとって、
小さめの/(ルート)パーティションを複数取るような分割にしていた。

ところが、Ubuntuが想像以上に居心地がよかったので、安住することにした。
#別ディストリビューションの「お試し」はXenで行うことにした。

と言うわけで、別ディストリビューションの/に割り当てていたパーティションをつぶして、
Ubuntuの/パーティションの中で割合大きなエリアを占めていた/varを追い出そうとした。

シングルユーザになって、コピーして、mount先をつくって、/etc/fstabを書き換えて...と作業は順調に行って、リブートしてみた。

ところが、立ち上がるんだけど、どうにも動きがおかしい。
良く見ると、ifconfigで見てもloが上がっていない。
うーん...と悩むこと数時間...googleで探してもそれらしいのは無い。
自分で調べるしかない。

loつまりlocalloopback interfaceは/etc/init.d/loopbackで立ち上げているようだ。

その中で、/var/run/network/に対して何やらやっている。
これは臭い。

/etc/rcS.d/を見ると、S01mountvirtfs、S08loopbackとS35mountall.shが目に付いた。

S01mountvirtfsの中で、/var/runとか/var/lockになにやらやっているし、
S08loopbackの中に関しては、上記の通り。

かたやS35mountall.shの中で/etc/fstabに記載している各パーティションをmountしている。

この順番が正しいとすると、/varを/と別のパーティションにしてはダメということね?
うーん、昔のSlackwareとかだと、/varも別にできた気がするんだけどなぁ。
イマドキはパーティション毎の使い分けもせず、追加時もLVMを使うのかなぁ。

とりあえず、該当パーティションは/varとして使うのはやめて、/usrにした。

投稿者 his : 2006年10月30日 19:41
このエントリーのトラックバックURL: http://hoop.euqset.org/blog/mt-tb2006.cgi/48517
コメント

/var と "/" が別パーティションではダメということはありません。
今使ってるマシンはUbuntu 6.10ですが、別パーティションにしています。

コレで解決というネタが見つかりませんが、
lo が起動できない状態で、df などで見た/var/run,/var/lock は
tmpfs がマウントされているのでしょうか?
また、/var/run/network/ifstate のタイムスタンプと内容は
確認されていますでしょうか?

シングルユーザモードで起動した場合でも、/var/run,/var/lock は
tmpfs がマウントされ、配下にファイルが作成されます。
これが新しいコピー先にも実態でコピーされます。
仮りに、コピー後の再起動で両ディレクトリにtmpfs が
マウントされて見えなくなるにしても、少し気持ち悪いですね。
Ubuntu 6.06 Live CD やKNOPPIXで作業してみてはいかがでしょう?
これらで起動して作業する場合はHDD 上の/var
つまり、コピー元のパーティション上にある/var は
使われないはずですから、両ディレクトリ配下には
何もファイルが存在しないと思います。
(シャットダウン時にメモリ上からクリアされる為)
/var/run にtmpfs がマウントできないとか、あるいは
/var/run/network/ifstate が書けなかったとか
それが原因だったりしませんでしょうか。

スクリプトを斜め読みすると、/var/run, /var/lock が
存在しなければ作成するようなので、コピー先の両ディレクトリを削除するか
両ディレクトリ配下のファイルだけを削除してみるのも
簡単に試せる事かもしれません。

そんなに簡単な事じゃないのかも知れないので、ハズシたらごめんなさい。
書いておきながら怪しいし。(^^;

Posted by: (も) : 2006年11月 3日 11:32
コメントする









名前、アドレスを登録しますか?





画像の中に見える文字を入力してください。