Недавно я обновил Ubuntu со старой версии LTS (12.04) до 14.04 LTS, и после перезагрузки ubuntu не загружается и появляется ошибка в /sbin/lvm
Показано:
There appears to be one or more degraded LVM volumes, and your root device may
depend on the LVM volumes being online.
One or more of the following LVM volumes are degraded:
/sbin/lvm: symbol lookup error: /usr/local/lib/libreadline.so.5: undefined symbol: PC
Gave up waiting for root device...
ALERT! /dev/mapper/my-server-root does not exist. Dropping to a shell!
Похоже, что / sbin / lvm: ошибка поиска символа: /usr/local/lib/libreadline.so.5: неопределенный символ: ПК виноват, и я полагаю, что /sbin/lvm
не был правильно скомпонован с соответствующими библиотеками, из-за чего загрузочный образ вообще не мог запустить LVM, поэтому тома LVM не загружались.
Что я пробовал
Бег lvm
в оболочке initramfs возвращает ту же ошибку при поиске символа.
Удаление /usr/local/lib/libreadline.so.5
и бег lvm
вызовет ошибку о libreadline.so.5
вместо этого не доступен.
vgchange
не является допустимой командой (я предполагаю, что для этого требуется lvm
и его следует запускать, используя lvm vgchange -ay
вместо?)
я угадать что я должен попытаться пересобрать загрузочный образ, чтобы включить правильную копию lvm
. Однако я не уверен, как это сделать (нужно ли мне загружать живой диск 14.04 и устанавливать lvm2
, или мне нужно сделать еще несколько шагов? Как я могу изменить initramfs и исправить это?), И я боюсь, что испортил существующую конфигурацию LVM. Как мне это сделать? Спасибо!