おのたく日記 YouTubeも始めました→
2010-05-11(Tue) ファイルシステムをext4にする [長年日記]
■ [Linux][ext4]ファイルシステムをext4にする
Ubuntu 9.10などを入れるとdefaultでファイルシステムがext4になっている。Debianのおうちサーバは、ext2でインストールしたあとfsckの長さにヘキヘキとしてジャーナルが使えるext3してから、そのまま使っていた。
最近、なんかファイルシステムの読み書きI/O待ちでマシンの性能が落ちているような気がするし新しいもの好きなのでext4に変えてみた。まずは、おうちのext3とext4を比べてみた。
Ubuntuのファイルシステムをtune2fs -l $DEVで調べてみると
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
となっている needs_recoveryはマウント中というマーク。 huge_fileとlarge_fileの料へ方があるけどhuge_fileさえ有れば良いような気がする…
Debianのext2から移行したext3は
sda1:
Filesystem features: has_journal resize_inode dir_index filetype needs_recovery sparse_super large_file
sda3:
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent sparse_super large_file uninit_bg
sda4:
Filesystem features: has_journal resize_inode dir_index filetype extent sparse_super large_file uninit_bg
ということで、flex_bg huge_file dir_nlink extra_isize が不足している。
Webで調べてみると
flex_bg ブロックグループのinodeとbitmapの配置位置が自由になる。これにより仮想的な大きなブロックグループを使ってinodeの割り当てをする。速度向上やフラグメンテーション軽減。→採用
huge_file ファイルシステム16TB→1EB ファイル2TB→16TB → 将来検討
dir_nlink 最大サブディレクトリ数が32000から無制限に → 将来検討
? extra_isize ナノ秒まで保持するように → アプリは対応していないのにいるのか?
ということなので、レスキューCDでマシンを立ち上げて
# tune2fs -O flex_bg,extents,uninit_bg,dir_index $DEV &&
tune2fs -I 256 $DEV &&
e2fsck -yfDC0 $DEV
としてext3からext4に移行した。ただし、ルートパテーションは、flex_bgは怖いので、まだ使っていない。
|