Проблема загрузки LUKS initramfs: & ldquo; / dev / mapper / ubuntu-root не существует. & Rdquo; Как я могу это исправить, используя резервную копию?

Первый раз, относительно новый для Ubuntu / Linux. Не очень повезло с функцией поиска. Пожалуйста, прости эссе ниже - проблема немного уникальна, я думаю ...

Я использую 12.04 на ноутбуке (с UEFI BIOS) с полным шифрованием диска, настроенным с помощью альтернативного компакт-диска. Недавно я сделал резервную копию всего жесткого диска, используя dd, на внешний жесткий диск USB. Недавно сделав некоторые изменения на ноутбуке, я попытался подключить внешний USB-клон, чтобы скопировать на него файлы. Несмотря на получение запроса пароля и его появление в Дисковой утилите в качестве группы логических томов, он фактически не смонтировал внешний диск, заявив, что это «не монтируемая файловая система». Попробовал его на моем рабочем столе, и он прекрасно подключился (как только я установил lvm2).

Используя pvdisplay, я заметил, что и внешний диск, и внутренний диск ноутбука имеют одинаковый UUID (да, это клон!). Итак, на рабочем столе я использовал pvchange -u для изменения uuid внешнего диска. Подключил его к ноутбуку, увы, до сих пор нет радости. Встали, выключили ноутбук (диск все еще подключен), поехали и поужинали. Вернулся, отключил внешний диск от выключенного ноутбука, попытался загрузиться. Проблемы!

Он нормально загружается на экран запроса пароля. Введите пароль и после долгого ожидания он переходит к приглашению initramfs с ошибкой: «ALERT! / Dev / mapper / ubuntu-root не существует». Полуют.

Если я перезагружаюсь и снова подключаю внешний диск, он загружается, как будто запускает root с USB-накопителя. Я попробовал решение здесь , введя / dev / sda3 (и еще больше вариантов) вместо этого. Нет бинго, по-прежнему получать точно такие же сообщения. Тот факт, что я использую LUKS с LVM, кажется, усложняет ситуацию. Я думаю, что я где-то запутал конфигурационный файл, возможно, подключив два диска с одинаковым UUID (глупо!), И теперь он думает, что / root находится на внешнем диске. Я в тупик, как вернуть его.

3
задан 5 January 2013 в 04:13

1 ответ

Я исправил это! Что касается ссылок будущих поколений, вот как:

Проблема заключалась в том, что, подключив клон системы, в которой я работал, я «перепутал» свою систему с тем, на какой диск писать, и каким-то образом обнулил метаданные группы томов для оригинального внутреннего диска. К счастью, у меня все еще были метаданные из клона, который я сделал.

Это означало, что я мог подключить рабочую резервную копию, разблокировать ее и использовать vgcfgbackup, чтобы сделать копию ее метаданных.

~$ sudo vgcfgbackup -f /tmp/trousers
  Volume group "ubuntu" successfully backed up.

Это создает текстовый файл с метаданными в / tmp, называемый брюками (называет его как угодно, без разницы)

Затем я отключил и отключил работающий резервный клон и подключил растопленный внутренний привод. Разблокировал его, как я сделал резервное копирование, затем запустил:

 sudo vgcfgrestore -f /tmp/trousers ubuntu
  Restored volume group ubuntu

После этого группа томов внезапно ожила в дисковой утилите, и внутреннее пространство с разорванными концами было разобрано, смонтировано и снова доступно для чтения!

Критическим моментом здесь является то, что «ubuntu» было названием исходной группы томов. Вы можете убедиться в этом, открыв файл 'брюки' в gedit и посмотрев на запись в строке ниже "creation_time".

Также стоит отметить, что это работало только потому, что резервная копия была точным клоном исходного внутреннего файла, и, следовательно, в файле метаданных VG были все правильные UUID. Я действительно впервые получил сообщение об ошибке, потому что я первоначально вручную изменил один из UUID на внешнем диске. Мне пришлось использовать pvdisplay на оригинальном внутреннем устройстве, чтобы найти его UUID, а затем вручную отредактировать файл 'брюк', чтобы он заработал.

В любом случае, надеюсь, что это поможет кому-нибудь однажды.

0
ответ дан 5 January 2013 в 04:13

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

Похожие вопросы: