Я использую Linux 3.6.11 с ZFS на Linux 0.6.0rc11.
У меня есть большой пул ZFS с тремя подпулами:
zpool1
zpool1/backups
zpool1/graphite
zpool1/log_backups
Прошлой ночью машина перезагрузилась без всякой очевидной причины. После того, как я получил пейджинг и получил оболочку, она уже была восстановлена.
Я побежал zfs mount -a
перемонтировать бассейны. zpool1/log_backups
в нем есть данные, но zpool1/graphite
и zpool1/backups
полностью пусты, и df
сообщает, что в этом разделе нет места.
К сожалению, у меня не было настроенных снимков, так что это не годится. Я пробовал экспортировать и повторно импортировать, но без изменений.
Что еще я могу попробовать? А какие варианты восстановления данных существуют для ZFS? Я видел несколько сценариев, которые копаются в структурах данных fs, но все они немного более неотшлифованные и потенциально разрушительные, чем мне хотелось бы на данный момент.
С надеждой zpool status
есть что сказать. Попробуйте бежать zpool import
(без аргументов), чтобы указать, какие пулы обнаружила ZFS, которые вы можете повторно импортировать.
Файл, описывающий, какие пулы существуют в системе. должен быть "/etc/zfs/zpool.cache". Если он поврежден, это объяснит, почему пулы не импортируются автоматически.
Вы также можете попробовать старую zpool import <pool name>
и посмотрите, поможет ли это вам.
Это более старая версия ZFS в Linux. Я бы не хотел, чтобы это с кем-то случилось. Вы писали в список рассылки?
Я бы попытался понять природу аварии, поскольку это ненормально. Какой тип оборудования (сервер, контроллер) у вас был и какой у вас пул?