5つのデバイスのraidz1配列を含むstorageというzpoolがあります。
今日、私は別の3TBデバイスを購入して、エンクロージャーに入れました。ただし、新しいプールを作成してそのデバイスを追加する代わりに、間違いを犯して既存のストレージプールに追加しました。
これで、削除したいsdg
というトップレベルのデバイスができました(これが新しいドライブです)。それを削除しようとするたびに、次のようになります。
cannot remove sdg: only inactive hot spares, cache, top-level, or log devices can be removed.
では、どうすればこのデバイスを今すぐ削除できますか?このデバイスに障害が発生すると、プール全体が使用できなくなります。別のドライブを購入する必要があると思っています。少なくともそれはミラーリングされますが、これを行う適切な方法がないことは信じられません。
これは私のステータスダンプです:
pool: storage
state: ONLINE
scan: scrub canceled on Wed Jul 23 17:26:08 2014
config:
NAME STATE READ WRITE CKSUM
storage ONLINE 0 0 0
raidz1-0 ONLINE 0 0 0
ata-ST3000DM001-1CH166_Z1F1PYM6 ONLINE 0 0 0
ata-ST3000DM001-1CH166_W1F24CSC ONLINE 0 0 0
ata-ST3000DM001-1CH166_W1F2372R ONLINE 0 0 0
ata-ST3000DM001-1CH166_W1F24BTK ONLINE 0 0 0
ata-ST3000DM001-1CH166_Z1F2KKLW ONLINE 0 0 0
sdg ONLINE 0 0 0
errors: No known data errors
残念ながら、プールからのvdev(このドライブ)の削除は、現在ZFSではサポートされていません(ただし、サポートするために 作業中 があります)。回避策は、データをプールからダンプして再作成してから、データを元に戻すことです。