vine-users ML アーカイブ



[vine-users:063944] Re: 起動時の fsck にてファイル破損及び起動不良

  • From: "F.M." <makoto@xxxxxxxxxxxxxxxxxxx>
  • Subject: [vine-users:063944] Re: 起動時の fsck にてファイル破損及び起動不良
  • Date: Wed, 14 Jan 2004 21:10:32 +0900
ichikawa wrote:
> 市川@市川市と申します。
> 
> この件は 100% 再現するようですし、ほとんどの人が対象になると思いまので、
> 皆様御注意下さい。


http://e2fsprogs.sourceforge.net/e2fsprogs-release.html で関係ありそうな
ものを抜き出してみました.


E2fsprogs 1.33 (April 21, 2003)

  Mke2fs no longer creates filesystems with the dir_index flag set by
  default; the user has to specifically request it.

  E2fsck will fix HTREE corruptions in preen mode, without stopping the
  boot process. This is needed because the 2.4 ext2 filesystem
  accidentally had the INDEX_FL backwards compatibility code removed.

E2fsprogs 1.30 (October 31, 2002)

  Fixed endian problems in the htree code for e2fsck and debugfs.

  When byte-swapping a filesystem on a PPC architecture, byte-swap the
  bitmaps since the historical big-endian ext2 variant had byte-swapped
  bitmaps, and the ext2fs library assumes this. This fixes the
  regression test suite on PPC machines.


  E2fsck now performs additional consistency checks on indexed (HTREE)
  directories.


E2fsprogs 1.29 (September 24, 2002)

  Fixed a bug in e2fsck which could corrupt a directory when optimizing
  it (via the -D option) or rebuiliding the hash tree index with a 1 in
  512 probability, due to a fence post error.
  Mke2fs now enables the directory indexing flag by default. (Since this
  is a compatible feature flag, it's safe to do so.)

  Tune2fs will support setting the directory indexing feature flag. It
  will automatically set up the default hash algorithm and hash seed
  fields in the superblock.


Vine 2.6r3 では e2fsprogs-1.29-0vl1 ですから,endian problems 以外は
fix 済のように読み取れるのですが,なにか違うのでしょうか?
# 何か見落したかな?

> あ、やってしまいましたか。ext2 でも起こる事は考えられましたので、言及
> しておけば良かったと後悔しています。今後被害にあわれる方がいない事を祈
> ります。

dir_index ありでも大丈夫な e2fsck にしてもらうのが一番でしょう.
# どの版なら大丈夫か私にはわかっていません.
workaround として,dir_index ありなら tune2fs -O ^dir_index を促すように
する(fsck は実行しない)だけでもかなり違うと思います.