ext4の予約領域を増やしてみる

ext4 ( ext2 , ext3 含む ) には、Reserved block というものがあります。

これは、ファイルシステム作成の際、一部の領域を確保してそのままでは使え無いようにしておき、
領域が必要になった場合に手動で領域の一部あるいは全部を解放し利用可能領域に出来るものです。

デフォルトでは容量の 5% が予約ブロックとして確保されます。

予約ブロックの確認方法

1
2
3
4
5
# tune2fs -l /dev/mapper/VolGroup-lv_home | grep -E "(Reserved block|Block size)"
Reserved block count: 5879091
Block size: 4096
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)

上記の内容から概ね
5879091 * 4096 / 1024 / 1024 / 1024 = 22GB
が予約されていることがわかります。

で、気になったこと。

予約領域を解放したとして、逆に予約領域を増やす事は出来るのか?
22GBをばっさり解放した後、やっぱり20GB予約領域として残しておきたい!という様な事が出来るのか。

確認しました

結論。予約領域を増やす事は出来ます。

今の状態を確認

1
2
3
4
5
# tune2fs -l /dev/mapper/VolGroup-lv_home | grep -E "(Reserved block|Block size)"
Reserved block count: 5879091
Block size: 4096
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)

予約領域を解放し尽くす

1
2
3
# tune2fs -r 0 /dev/mapper/VolGroup-lv_home
tune2fs 1.41.12 (17-May-2010)
Setting reserved blocks count to 0

状態を確認

1
2
3
4
5
# tune2fs -l /dev/mapper/VolGroup-lv_home | grep -E "(Reserved block|Block size)"
Reserved block count: 0
Block size: 4096
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)

予約領域を元のサイズに戻す

1
2
3
# tune2fs -r 5879091 /dev/mapper/VolGroup-lv_home
tune2fs 1.41.12 (17-May-2010)
Setting reserved blocks count to 5879091

状態を確認

1
2
3
4
5
# tune2fs -l /dev/mapper/VolGroup-lv_home | grep -E "(Reserved block|Block size)"
Reserved block count: 5879091
Block size: 4096
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)

戻せました!

いつでも戻せるのか気になるなぁ。

次回のネタは、戻せる条件とは?!
ではさようならー。

このエントリーをはてなブックマークに追加