zpool を切り離す2009年03月22日 01時33分06秒

UFS や FAT 等の古典的なファイルシステムが乗っているデバイスは、ファイルシステムを unmount しただけで引き抜ける。USB など活線挿抜が出来るデバイスはシステムが活動中にでも、抜き差しして使えるので便利だ。

ZFS では zpool が提供する分を含めたファイルシステムを全て unmount しただけでは足りない。zpool export <pool> で、zpool を不活性化させる必要がある。これをやらないで、USB デバイスを抜くと、FreeBSD 7 系では panic を起こす。8 系だと、デバイス処理に変更が入っているようで、zfs unmount -a をやっていれば、zpool export <pool> は無くても panic はしない。が、良くは無い。

man zpool の中で、脱着に一番近かったのが exprot の項目だった。しかし、そこを見ると export は他のシステムと共有する時に使うと明示されているので、同一のシステムでの活線挿抜には関係無いと解釈した為に、何度も panic を起こした。共有しなくても、外す時は export みたいだ。

scratch プールしか無いので、安直に unmuont -a で全ての を unmuont している。その後に、scratch を export にて不活性化している。


$ zfs unmount -a
$ zpool export scratch