Могу ли я восстановить zpool после его экспорта, учитывая, что устройства не были перераспределены?

У меня был zpool, который мы назовем "testpool".

В состав testpool входили 3 устройства и один zfs, называемый "test".

Мне нужно было перенести "тест" в новый, меньший пул. Я хотел назвать новый пул с тем же именем "testpool".

В основном сделал следующее.

zfs send testpool@backup > /tmp/test-dump
zpool export -f testpool
zpool create -f testpool newdevice
zfs receive -F testpool < /tmp/test-dump

К сожалению, я обнаружил, что снимок testpool@backup был неправильным снимком. Слишком старый. Мне еще предстоит перераспределить три устройства, которые были в СТАРОМ испытательном пуле. (Ни одно из этих 3-х устройств не является "новым устройством", они являются отдельным 3.)

Есть ли способ восстановить данные на этих устройствах? Я думаю, так как я назвал новый, меньший пул таким же, как старый zpool, я в значительной степени SOL. Но если нет, это было бы приятно узнать.

Редактировать: Подробнее

Я сделал "импорт Zpool" и получил это.

bash-3.00# zpool import
  pool: testpool
    id: 14781458723915654709
 state: ONLINE 
action: The pool can be imported using its name or numeric identifier.
config:

    testpool    ONLINE
      c5t8d0    ONLINE
      c5t9d0    ONLINE
      c5t10d0   ONLINE

Так что я предполагаю, что мне просто нужен синтаксис для импорта этого zpool с использованием его числового идентификатора и присвоения ему нового имени.

С.

1 ответ

Решение

Да. Вы можете запустить zpool import без аргументов, и он определит доступные пулы для вас.

Предполагая, что устройства из старого тестового пула еще есть, вы увидите "старый" тестовый пул и вместе с ним GUID для пула.

Если у вас есть этот GUID пула, вы можете сделать zpool import $id oldtestpool, После импорта пула вы можете изменить точки монтирования, чтобы они не перекрывались с точками монтирования нового тестового пула.

Другие вопросы по тегам