На моем сервере Debian работает ZFS в Linux. Сегодня пришлось два раза его перезагружать из-за обновлений программного обеспечения. Первая перезагрузка из-за обновления ZFS с некоторого 0.6.4-1.2-1-wheezy до 0.6.5.2-2-wheezy, которое прошло нормально, поскольку впоследствии я получил доступ к своему домашнему каталогу в пуле. После последней перезагрузки zpool не может импортировать пул:
# zpool import
pool: storage
id: 4490463110120864267
state: FAULTED
status: The pool metadata is corrupted.
action: The pool cannot be imported due to damaged devices or data.
see: http://zfsonlinux.org/msg/ZFS-8000-72
config:
storage FAULTED corrupted data
logs
sda3 ONLINE
# zpool import storage
cannot import 'storage': I/O error
Destroy and re-create the pool from
a backup source.
# zpool import -F storage
cannot import 'storage': one or more devices is currently unavailable
Мне не хватает моего полного пула, который должен выглядеть так:
storage
mirror
scsi-SATA_WDC_WD30EFRX-68_WD-WMC1T2132687-part1
scsi-SATA_WDC_WD30EFRX-68_WD-WMC1T2194187-part1
Как я могу указать zpool использовать разделы данных? Я боюсь подключать диски к этому пулу или новому пулу, потому что я боюсь дисков соотв. их метаданные будут удалены.
Изменить / обновить:
Учитывая тот факт, что потеря zpool произошла во время обычной перезагрузки, я надеялся, что хотя бы экспорт zpool имел место. И даже если он был закрыт нечистым, я предпочитаю проводить спасательные работы на копиях. Поэтому я добавил в свою систему большой жесткий диск (который был добавлен как устройство sdb - спасибо udev) и отформатировал его с двумя разделами того же размера, что и разделы zfs на неисправных дисках. Поскольку это был зеркальный пул, я скопировал оба старых раздела в новые:
dd if=/dev/disk/by-id/scsi-SATA_WDC_WD30EFRX-68_WD-WMC1T2132687-part1 /dev/sdb1 bs=104800
dd if=/dev/disk/by-id/scsi-SATA_WDC_WD30EFRX-68_WD-WMC1T2194187-part1 /dev/sdb2 bs=104800
Теперь у меня была система с двумя одинаковыми зеркалами.
# zpool import
pool: storage
id: 4490463110120864267
state: ONLINE
status: Some supported features are not enabled on the pool.
action: The pool can be imported using its name or numeric identifier, though
some features will not be available without an explicit zpool upgrade'.
config:
storage ONLINE
mirror-0 ONLINE
sdb1 ONLINE
ata-WDC_WD30EFRX-68AX9N0_WD-WMC1T2194187-part1 ONLINE
logs
sda3 ONLINE
# zpool import storage
#
Ура!
Тем временем я сделал резервную копию данных дважды, и сейчас выполняется восстановление в полностью новый zpool.
Возможно, пул не сможет найти ваши диски, так как вы указали / dev / disk / by-id при создании исходного пула. Обратите внимание, как ваше тяжелое устройство является узнал ...
Есть флаг импорта пула, -d
, который позволяет указать процессу импорта в конкретный каталог для запроса устройства. Хороший совет Вот.
Пытаться:
zpool import -F -d /dev/disk/by-id storage