Dlaczego nie mogę odłączyć urządzenia dublowanego, jeśli dostępnych jest wystarczająca liczba replik?

1

man zpool stwierdza, że zpool detach

Odłącza urządzenie od lustra. Operacja jest odrzucana, jeśli nie ma innych prawidłowych replik danych. Jeśli urządzenie może zostać ponownie dodane do puli później, należy zamiast tego rozważyć polecenie „zpool offline”.

Kiedy chcę odłączyć urządzenie od konfiguracji lustrzanej RAID1 main( konfigurowanej w następujący sposób:

$ 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

) odłączanie urządzeń kończy się niepowodzeniem

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

Inne źródła, np. Oficjalne dokumenty Oracle, wskazują, że to również powinno być możliwe. Jakie mogą być przyczyny błędu?

Używam ZFS na Linuksie 0.6.4 na Ubunut 14.10 amd64 z Linuksem 4.0.0.

Karl Richter
źródło

Odpowiedzi:

0

Był to znany błąd w ZFS na Linuksie, który wydaje się powracać jako regresja w wersji 0.6.4 w systemie Linux 4.0.0. Skomentowałem link do strony wydania, aby go ponownie otworzyć. Obejściem tego problemu jest przekazanie identyfikatora GUID urządzenia (pobranego za pomocą zdb) jako argumentu zpool detachzamiast nazwy urządzenia używanej w puli (tak jak w przypadku strony podręcznika).

Karl Richter
źródło