Pourquoi ne puis-je pas détacher un périphérique en miroir si suffisamment de répliques sont disponibles?

1

man zpool stipule que zpool detach

Détache le périphérique d'un miroir. L'opération est refusée s'il n'y a pas d'autres répliques valides des données. Si le périphérique peut être ré-ajouté au pool ultérieurement, envisagez plutôt la commande "zpool offline".

Lorsque je souhaite déconnecter un périphérique d’une configuration de miroir RAID1 main(qui est configurée comme suit:

$ sudo zpool status
  pool: main
 state: ONLINE
  scan: resilvered 822M in 0h1m with 0 errors on Mon Feb 23 08:18:15 2015
config:

    NAME                                    STATE     READ WRITE CKSUM
    main                                    ONLINE       0     0     0
      mirror-0                              ONLINE       0     0     0
        ata-ST3250310AS_6RYBY5VD            ONLINE       0     0     0
        ata-ST3250310AS_6RYBRPJJ            ONLINE       0     0     0
      mirror-1                              ONLINE       0     0     0
        ata-SAMSUNG_HD103SI_S1Y5J90Z427433  ONLINE       0     0     0
        ata-ST1000DM003-1ER162_S4Y048C4     ONLINE       0     0     0

errors: No known data errors

) le détachement de dispositifs échoue avec

$ sudo zpool detach main ata-ST3250310AS_6RYBRPJJ
cannot detach ata-ST3250310AS_6RYBRPJJ: no such device in pool

D'autres sources, par exemple les documents Oracle officiels, indiquent que cela devrait également être possible. Quelles pourraient être les causes de l'erreur?

J'utilise ZFS sur Linux 0.6.4 sur Ubunut 14.10 amd64 avec Linux 4.0.0.

Karl Richter
la source

Réponses:

0

Il s’agit d’un bogue connu de ZFS sous Linux qui semble avoir été régressé sous 0.6.4 sous Linux 4.0.0. J'ai commenté la page de la question liée pour la rouvrir. Une solution de contournement consiste à passer le GUID du périphérique (récupéré avec zdb) comme argument à la zpool detachplace du nom de périphérique utilisé dans le pool (comme vous le feriez après la page de manuel).

Karl Richter
la source