FreeBSD で ZFS がデバイスを解放する時 ― 2014年07月12日 14時40分36秒
ZFS を外すときの一つの方法が zpool export
。これは ZFS のプールをホストから切り離すときに使う。このコマンドを使うと、zpool history
に残る。特に、別のホストに使う時使う。ZFS ではプールがどのホストに繋がっていたかが、記録されている為だ。zpool export
をした後に、デバイスを抜き取っても問題ない。zpool import
で繋ぎ直す。
zfs umount -a
だと、ファイルシステムのマウントは解除されるが ZFS はまだデバイスを保持し続けている。昔は、これで間違って抜いてしまい何度かシステムを止めてしまった。二、三年前の事なので、今でもこの状態で抜くと panic を起こすか確かめてはいないが、geli detach
等は受け付けない。ZFS がまだデバイスを握っている証拠だ。
この状態から更に kldunload zfs
を行うとカーネルから、ZFS モジュールが外され、それと共にデバイスも ZFS から解放される。この状態だと、デバイスを外したり、geli detach
等も有効だ。
最初は zpool export
を使っていたが、zfs umount -a && kldunload zfs
の方が余計な記録が zpool history
に残らないし、カーネルから ZFS のメモリが完全に解放されて無駄もない。重要な記録を残してくれるのは嬉しい昨日ではあるが、余分なものが多過ぎると記録の価値も落ちる。
コメント
トラックバック
このエントリのトラックバックURL: http://uyota.asablo.jp/blog/2014/07/12/7386627/tb
※なお、送られたトラックバックはブログの管理者が確認するまで公開されません。
コメントをどうぞ
※メールアドレスとURLの入力は必須ではありません。 入力されたメールアドレスは記事に反映されず、ブログの管理者のみが参照できます。
※なお、送られたコメントはブログの管理者が確認するまで公開されません。