引导上的LVM错误导致回退到initramfs

林志颖

我最近将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:未定义的符号:PC是罪魁祸首,我想这/sbin/lvm与正确的库没有正确链接,导致引导映像完全无法运行LVM,因此不会加载LVM卷。

我尝试过的

  1. lvm在initramfs shell中运行会返回有关符号查找的相同错误。

  2. 删除/usr/local/lib/libreadline.so.5并运行lvm将使其引发关于libreadline.so.5不可用的错误

  3. vgchange不是有效的命令(我认为它lvm是必需的,应lvm vgchange -ay改为使用它来运行?)

我应该尝试重新构建启动映像以包括的正确副本lvm但是,我不确定如何执行此操作(我应该引导14.04活磁盘并安装lvm2,还是应该执行更多步骤?如何修改initramfs并进行修复?)我担心会弄乱现有的LVM配置。我该怎么办?谢谢!

林志颖

经过修改liveCD之后,我已经解决了以下问题:

  1. 从Live CD和Live CD引导sudo apt-get install lvm2

  2. 从中检查LV lvdisplay,并从中找出启动分区lsblk

  3. 使用以下方法安装LV lvchange -a y

  4. 挂载根LV和引导分区,例如

    须藤mkdir /新

    须藤挂载/ dev / mapper / my-root / new

    须藤挂载/ dev / sda1 / new / boot

  5. chroot/new并重新安装lvm2在那里。

  6. 转到/usr/local/lib/删除(或移动)libreadline.so.5

  7. ldconfig

  8. 尝试lvm从chroot运行,您将看到关于/var不可用的错误,而不是通常的libreadline.so.5错误。

  9. update-initramfs -u -v您将看到libreadline.so.5不再复制/usr/local/lib,而是复制x86_64这是正确的共享库。

  10. 重启。lvm现在应该可以在initramfs中正确加载,因此它可以成功挂载根分区,并且您现在可以启动。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

stderrr上的错误导致程序崩溃

来自分类Dev

Mac OS X上的Valgrind错误导致printf double

来自分类Dev

数组错误导致问题

来自分类常见问题

SBT错误:“无法构建终端;回退到不受支持...”

来自分类Dev

CoqIDE负载路径错误导致反射

来自分类Dev

ajax错误导致成功的函数调用

来自分类Dev

Rubyzip错误导致日志损坏

来自分类Dev

SASS错误导致奇怪的Gulp崩溃

来自分类Dev

打字稿路径导致错误导入

来自分类Dev

Gulp-错误导致任务停止

来自分类Dev

Rubyzip错误导致日志损坏

来自分类Dev

链表逻辑错误导致程序死机

来自分类Dev

qSin和qCos错误导致

来自分类Dev

@IBAction:回退到默认行为

来自分类Dev

在加密设备上从LVM引导

来自分类Dev

* ngIf在一个元素上的错误导致* ngFor无法在另一个元素上正常工作

来自分类Dev

遇到未捕获的错误时,node.js摩卡回退到调试器

来自分类Dev

chroot 错误:“我:arm64 无法执行,回退到 qemu-user”

来自分类Dev

尝试并排除练习错误导致的错误

来自分类Dev

可能的内存错误导致未报告的错误

来自分类Dev

Gnome / metacity和Chrome错误导致致命错误

来自分类Dev

浮点数错误导致快速查找

来自分类Dev

Babel生成的代码导致错误导出未定义

来自分类Dev

错误导致嵌入式javascript无法运行

来自分类Dev

Android套接字连接的IP错误导致冻结

来自分类Dev

node.js-需求错误导致内存泄漏?

来自分类Dev

jQuery-UI错误导致图像移动

来自分类Dev

基数运算符(#)错误导致Alloy

来自分类Dev

Java异常错误导致代码突然停止