Falha de Importação do ZFS RaidZ ao migrar

4

Então, o drive USB conectado ao meu sistema FreeNas 7 foi ruim, então usei a situação como uma oportunidade para atualizar para o FreeNas 8. O problema é que agora estou com problemas para fazer o ZFS acelerar:

[root@media] ~# zpool import
  pool: filetank
    id: 17702465758427828599
 state: FAULTED
status: The pool was last accessed by another system.
action: The pool cannot be imported due to damaged devices or data.
    The pool may be active on another system, but can be imported using
    the '-f' flag.
   see: http://www.sun.com/msg/ZFS-8000-EY
config:

    filetank    FAULTED  corrupted data
      raidz1    FAULTED  corrupted data
        ada3    ONLINE
        ada1    ONLINE
        ada4    ONLINE
        ada2    ONLINE
[root@media] ~# zpool import -f filetank
cannot import 'filetank': one or more devices is currently unavailable

O que é estranho é que apenas o raidz diz que está corrompido e eu não sei o que fazer sobre isso. A maioria das coisas que eu posso encontrar envolve a substituição de um dispositivo individual, mas não parece que algum dispositivo em particular tenha falhado? Voltei para o FreeNas 7 e recebi o mesmo erro, que é basicamente o que eu esperava.

    
por ultramiraculous 21.01.2012 / 20:09

2 respostas

4

Experimente zpool import -f -F -n filetank .

Isso não importará o pool, mas dirá se é recuperável.

Se isso der a luz verde, prossiga:

zpool import -f -F filetank

Detalhes sobre essas opções, na página man:

     -f

         Forces import, even if the pool appears to be poten-
         tially active.

     -F

         Recovery mode for a non-importable pool. Attempt  to
         return the pool to an importable state by discarding
         the last few transactions. Not all damaged pools can
         be  recovered  by  using this option. If successful,
         the data from the discarded  transactions  is  irre-
         trievably  lost.  This option is ignored if the pool
         is importable or already imported.

     ...

     -n

         Used with the -F recovery option. Determines whether
         a  non-importable pool can be made importable again,
         but does not actually perform the pool recovery. For
         more  details  about  pool recovery mode, see the -F
         option, above.
    
por 21.01.2012 / 21:57
1

Tente importá-lo usando seu identificador numérico (o id). Isso geralmente faz mágica.

zpool import -f 17702465758427828599

Você pode estar encontrando um erro de importação do ZFS aqui que faz com que as importações forçadas sejam possíveis somente ao fazer isso por id. Veja uma explicação nos comentários deste post.

Se isso resolver o problema, fico feliz.

Se isso não acontecer, você deve verificar seus logs para zfs reclamando sobre incompatibilidades de checksum. Se este for o caso, você provavelmente desejará ver o que o zdb -l / dev / dsk / ad * informa sobre seus discos, pois isso significaria metadados corrompidos.

    
por 26.01.2012 / 01:21