Soft Updates

ファイルシステムの信頼性を損なうことなく高速化を実現し、システムクラッシュ後に即時システムを実行できるという画期的なものだった。一点、一貫性を元に戻すために実行するバックグラウンドfsckが高いI/O負荷とメモリを持っていくという点を除いて。当時のディスクサイズでは問題化しにくかったが、TBクラスが標準の今では問題部分が目立つようになってきた。

パーティション の softupdate 有効化

マウントされていない状態で

tunefs -n enable /dev/ada0p2 # soft-updates
tunefs -j enable /dev/ada0p2 # journaled

mount #確認

dumpfs |head -n 20
  • .snap は dump -L のオプションで使う -L オプションを使わなければ削除してもOK

snapshot

mksnap_ffs /log /log/snap #スナップショット作成
mdconfig -a -t vnode -f /log/snap -u 4 #マウントイメージ作成
mount -r /dev/md4 /mnt #マウント

umount /mnt #アンマウント
mdconfig -d -u 4 #イメージ削除
rm /log/snap #スナップショット削除

SUJ (Soft Updates Journaling)

Soft Updatesによって発生した不整合部分だけを復元すればいいため、ジャーナルに記録するデータは少なくていい。最悪の場合でもファイルシステムのサイズに関係なく最大で16MBのジャーナル領域が必要になる程度だ。ジャーナルはファイルシステムのルートディレクトリに.sujournalという名前で作成される。ジャーナルに記録されるデータは次のとおり。

9.x より実装 softupdate 有効な状態で dump -L の .snap スナップショットは出来ない

  • dump -L する場合や SUJ の使えないカーネルのマシンでマウントされた後また SUJ対応する場合(.sujournalの作り直し)
umount /data
tunefs -j disable /dev/ada0p4
mount /data
rm /data/.sujournal
dump 0uafL /back/0_dump /data
umount /data
tunefs -j enable /dev/ada0p4
mount /data

FreeBSD


トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2015-05-13 (水) 12:10:25 (2348d)