Назад | Перейти на главную страницу

Ошибка импорта ZFS RaidZ при миграции

Итак, мой USB-накопитель, подключенный к моей системе FreeNas 7, вышел из строя, поэтому я использовал эту ситуацию как возможность перейти на FreeNas 8. Проблема в том, что теперь у меня возникают проблемы с запуском моей ZFS:

[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

Что странно, так это то, что просто raidz сообщает, что он поврежден, и я не уверен, что с этим делать. Большинство вещей, которые я могу найти, связаны с заменой отдельного устройства, но не похоже ли, что какое-то конкретное устройство вышло из строя? Я вернулся к FreeNas 7 и получил ту же ошибку, чего я и ожидал.

Пытаться zpool import -f -F -n filetank.

Это не будет фактически импортировать пул, но сообщит вам, можно ли его восстановить.

Если горит зеленый свет, продолжайте:

zpool import -f -F filetank

Подробная информация об этих параметрах на странице руководства:

     -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.

Попробуйте импортировать его, используя его числовой идентификатор (id). Это часто творит чудеса.

zpool import -f 17702465758427828599

Здесь вы можете столкнуться со старой ошибкой импорта ZFS, из-за которой принудительный импорт возможен только при выполнении по идентификатору. См. Объяснение в комментариях к этому сообщению.

Если это решит проблему, я рад.

Если это не так, вам следует проверить свои журналы на наличие сообщений zfs о несоответствии контрольной суммы. Если это так, вы, вероятно, захотите увидеть, что zdb -l / dev / dsk / ad * сообщает вам о ваших дисках, поскольку это означает поврежденные метаданные.