Диск объемом 1 ТБ, содержащий один раздел, который был единственным PV в VG, содержащем один LV, терпел неудачу, становясь невыносимо медленным, не сообщая о каких-либо ошибках. Моей первой мыслью было попытаться использовать LVM для зеркалирования данных на другой диск и продолжить непрерывно, поэтому я сделал это:
- Сбой 1 ТБ диска из установленного на той же машине дамского зеркала
- Добавил этот диск в VG сбойного диска
- Поменял ЛВ на одно зеркало
Я оставил это на ночь, чтобы скопировать, после чего он сообщил, что скопировал 0,05% данных. С учетом этого я купил два запасных диска емкостью 1 ТБ, помня об этом:
- Добавьте первый новый диск в массив mdadm (готово, без проблем)
- Восстановите резервную копию в заменяемом LV на хорошем диске, который был удален из набора mdadm (выполнено, без проблем, пропущено около дня изменений)
- Клонируйте все, что доступно для чтения с неисправного диска, на второй новый диск (сделанный на запасном компьютере, ddrescue указывает на полный успех после некоторых попыток)
- Смонтируйте клон и объедините изменения с устаревшей копией, восстановленной из резервной копии (застрявшей здесь)
- Добавьте второй новый диск к сменному VG и отразите замену LV
Проблема в том, что я не могу понять, как заставить LVM разрешить мне доступ к клону неисправного диска.
LVM видит, что в VG отсутствует PV, и не позволяет мне активировать VG, в том числе с --partial
, или вносить какие-либо изменения, включая lvconvert -m0
или lvconvert --repair
, до тех пор, пока не будет найдено отсутствующее устройство. man vgreduce
указывает, что vgreduce --removemissing
удалит LV, а не только зеркало на отсутствующем PV. По крайней мере, один источник предполагает, что его можно сделать доступным, заменив отсутствующий PV с помощью pvcreate --uuid
, что потребует физического перемещения хорошего диска из массива mdadm на запасную машину (или покупки другого нового) и, очевидно, требует резервное копирование метаданных LVM для VG (которого у меня нет).
Какой самый простой способ получить доступ к клонированному LV?
Можно ли это сделать без физического добавления другого диска на запасной компьютер?
ОБНОВИТЬ
Я перенес другой диск в запасную машину и попытался воссоздать отсутствующий PV. Похоже, что LVM не поддерживает автоматическое воссоздание, поэтому я, в общем-то, старался, пока мне не удалось сделать LV доступным. FS ext4 на нем была искажена до неузнаваемости - e2fsck не хватало памяти, неоднократно пытаясь восстановить его.
Я попытался снова, используя ddrescue для копирования с неисправного диска на тот же исправный диск (на этот раз сообщая о нескольких ошибках), и на этот раз LVM позволил мне сделать том доступным без дополнительного диска (как я и ожидал во-первых), На этот раз ФС была практически не повреждена, и я смог восстановить все, на что надеялся.
Я понятия не имею, почему LVM отказался активировать VG на первом экземпляре и работал, как и ожидалось, на втором. Поскольку Google не возвращает никаких объяснений, а ответов пока нет, я обеспокоен тем, что восстановление томов LVM ненадежно, и, возможно, лучше его не использовать.