web-dev-qa-db-fra.com

Comment supprimer un pool de ZFS?

Mon système Ubuntu 12.04 a deux zpools: rpool (contenant le système de fichiers racine) et rdata (contenant toutes les autres données). rdata était à l'origine 2 disques de 1 To en miroir.

Comme je ne pouvais pas mettre à niveau rdata vers des disques de 3 To (ashift erroné), j'ai dû créer un nouveau zpool à partir des nouveaux disques de 3 To: initialement appelé datapool. J'ai ensuite synchronisé toutes les données, exporté rdata, importé datapool en tant que rdata et Bob est votre oncle. J'ai ensuite éteint et enlevé les anciens disques. Toutefois...

À la mise sous tension, le statut de zpool indique

  pool: rdata
 state: UNAVAIL
status: One or more devices could not be used because the label is missing 
    or invalid.  There are insufficient replicas for the pool to continue
functioning.
action: Destroy and re-create the pool from
    a backup source.
   see: http://zfsonlinux.org/msg/ZFS-8000-5E
  scan: none requested
config:

NAME                                                 STATE     READ WRITE CKSUM
rdata                                                UNAVAIL      0     0     0         insufficient replicas
  mirror-0                                           UNAVAIL      0     0     0  insufficient replicas
    scsi-SATA_WDC_WD10EADS-00_WD-WCAU47275172-part1  UNAVAIL      0     0     0
    scsi-SATA_WDC_WD10EADS-00_WD-WCAU47283913-part1  UNAVAIL      0     0     0

  pool: rpool
 state: ONLINE
  scan: scrub repaired 0 in 0h23m with 0 errors on Tue Jun  4 11:33:29 2013
config:

NAME                                 STATE     READ WRITE CKSUM
rpool                                ONLINE       0     0     0
  ata-Maxtor_6Y120L0_Y31J3CLE-part2  ONLINE       0     0     0

errors: No known data errors

Comme vous pouvez le constater, l’état de zpool affiche toujours l’ancienne rdata; qui n'est pas disponible.

spectacles d'importation zpool

   pool: rdata
     id: 7033445233439275442
  state: ONLINE
 action: The pool can be imported using its name or numeric identifier.
 config:

rdata                                   ONLINE
  mirror-0                              ONLINE
    scsi-SATA_ST3000DM001-1CH_W1F1EE1G  ONLINE
    scsi-SATA_ST3000DM001-1CH_W1F25SE2  ONLINE

C'est la bonne rdata

Question: Comment faire que Ubuntu oublie tout le vieil zpool?

7
Gareth
Sudo zpool destroy rdata

va détruire l'ancienne piscine (vous aurez peut-être besoin de -f pour forcer).

Sudo zpool export rdata

va déconnecter la piscine.

Sudo zpool import 7033445233439275442

importera le nouveau pool. Vous devez utiliser le numéro d'identification, car il existe deux pools "rdata".

Comme vous utilisez une racine ZFS, il ne vous reste plus qu'à reconstruire initramfs pour mettre à jour les pools:

Sudo update-initramfs -c -k all
Sudo update-grub

Redémarrez et tout va bien. :)

7
Jonathon