※ 2004/2/10問題を修正した「2.6r4」がリリースされました。 今からインストールを行う方はこちらを利用してください。
先日、Vineメーリングリストにて VineLinux2.6r3で、起動時にファイルチェック(fsck)を行うとファイルシステムが破損してしまうという報告がなされていました。 ちょうど当サイトでは、VineLinux 2.6 r3を使った企画を書いている事もあり、非常に気になったので自分なりの検証を行ってみました。
2台のマシンを用いて、VineLinux2.6r3をクリーンインストールし、上記コマンドで再起動時にファイルチェックを行いましたが、いづれもファイルシステムの破損が生じてしまいました。
VineLinux2.6 r3では「ext3ファイルシステム」に標準で「ディレクトリインデックス」という機能が有効となっています。どうもこれが悪さをしているようなので、「tune2fs」コマンドでこの機能を無効にします。
※「tune2fs」コマンドでファイルシステムのオプションを変更した場合は、「e2fsck」コマンドでファイルシステムの最適化が必要です。
VineLinux2.6r3をクリーンインストールし、インストール直後にインストールCDのレスキューモードで起動し、全てのファイルシステムに対し「e2fsck -fD」を実行。(/dev/hda* は、実際のファイルシステムに読み替えて下さい)
| [root@vine root]# tune2fs -O ^dir_index /dev/hda* |
ディレクトリインデックスを無効化したファイルシステムに対し、「e2fsck」で最適化を行う。
| [root@vine root]# e2fsck -fD /dev/hda* |
その後、「shutdown -r -F now」で再起動に 「fsck」を行ってもファイルシステムが破損することはありませんでした。 念のため、2台のマシンで2度づつ、計4回行いましたが、全て大丈夫でした。
これを書いている1/30現在、Vine本家のサイトにはこの件に関するアナウンスはまだないようですが、現状のVineLinux2.6r3をイントールしたままの状況で「fsck」を行えばほぼ必ずファイルシステムが破損します。
以前の「ext2ファイルシステム」とは違い、ジャーナリング機能を備えた「ext3ファイルシステム」では、明示的に実行しない限りは起動時に「fsck」は行われません。しかし、そのままの状態にしておくのは精神衛生的にも良くありません。
そのため上記で書いたように「tune2fs でディレクトリインデックスを無効化」その後「e2fsck でファイルシステムの最適化」を行う事をお勧めします。
※これらのコマンドを実行する場合はトラブルを避けるために、インストールCDのレスキューモードなどで起動し、ファイルシステムをアンマウントした状態で行ってください。 レスキューモードで起動するにはは、インストールCDブート画面で「rescue」と入力します。
2004/2/10に上記の問題を修正した「VineLinux2.6 r4」がリリースされました。
今後インストールする方はこちらをご利用ください。r4では、問題となっている「dir_index」が無効化されていますが機能面では全く追加はないので、既にr3をインストールし「dir_index」を無効化している場合はr4へのアップグレードは必要ありません。
詳しくは VineLinuxホームページをご覧ください。
http://vinelinux.org/