linux – MD上的root用户启动失败(RAID1)LVM:udev事件定时

前端之家收集整理的这篇文章主要介绍了linux – MD上的root用户启动失败(RAID1)LVM:udev事件定时前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
全新安装的Ubuntu Server 13.10(x64)从位于md lvm的根卷启动时出现问题.我现在已经解决了一个问题,但我想更多地了解正在发生的事情以及可能有哪些更好的解决方案.

由于这台机器的目标是试验Xen(为了更好地理解商用VM托管),该机器由我必须配备的部件组装而成:特别是:Q6600华硕P5QL Pro,1 TB和500 GB SATA光盘(虽然500 GB光盘仍在其他地方使用,但稍后会添加.)

1TB光盘有三个分区:sda1与500 GB光盘上的sdb1大小相同,sda2是交换,sda3中的余额相同. md0是由sda1 sdb1组成的RAID1卷[1],是LVM可用的一个PV.

Ubuntu安装在此VG(vg_mir)中的两个LV(dom0_root和dom0_homes)中,而/ boot位于dom0_root中.

在光盘初始化后立即显示以下消息的具体问题:

kernel: [    3.003506] md: bind<sda1>
kernel: [    3.007705] md/raid1:md0: active with 1 out of 1 mirrors
kernel: [    3.007768] md0: detected capacity change from 0 to 499972440064
kernel: [    3.047284]  md0: unknown partition table
kernel: [    3.124709] device-mapper: table: 252:0: linear: dm-linear: Device lookup Failed
kernel: [    3.124759] device-mapper: ioctl: error adding target to table
kernel: [    3.125156] device-mapper: table: 252:1: linear: dm-linear: Device lookup Failed
kernel: [    3.125196] device-mapper: ioctl: error adding target to table

暂停后,它会放弃并丢弃到initramfs shell.发出命令lvm vgchange -ay成功初始化LVM,/ dev / mapper按预期填充,系统在^ D后正常启动.

通过在/ etc中制作/lib/udev/rules.d/85-lvm2.rules的副本并插入一个如下所示的sleep 1:

SUBSYSTEM=="block",ACTION=="add|change",ENV{ID_FS_TYPE}=="lvm*|LVM*",\
    RUN+="watershed sh -c 'sleep 1; /sbin/lvm vgscan; /sbin/lvm vgchange -a y'"

(并重建initramfs)系统现在无需辅助启动,但这是一个非常糟糕的解决方案.我试过摆弄rootwait =,lvmwait =和scsi_mod.scan =同步内核参数,正如各种bug跟踪器和博客文章中所讨论的那样,但我尝试过的都没有.一些页面表明evms是一个问题,但似乎没有安装.其他人建议在不相关的块设备上超时,我甚至禁用了DVD驱动器.

似乎在md和lvm之间存在某种竞争条件,并且在md0准备好之前udev正在调用lvm.这些内核参数似乎在lvm运行后插入延迟,因此没有任何等待有助于因为vgchange已经运行(并且失败),LV将永远不会准备好.

就我在钻探问题时所做的那样.任何人都可以提出更好的解决方案,或建议如何深入研究以找到更多问题?

[1]因为sdb1此时缺失,所以这个raid卷被手动配置为带有1个设备的RAID1,因为Ubuntu不喜欢在降级卷上启动.

解决方法

我只是有同样的问题,显然是相同类型的硬件和新的13.10 x64安装.由于缺乏经验,我花了几天时间寻找丢失内核模块等的可能性,但在阅读完报告之后,我发现initramfs busyBox提示符下的vgchange -ay确实使系统可引导.我还没有尝试过你发布的1秒延迟解决方法(我会),但我也注意到以下可能与之相关的Debian错误报告:

https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=633024

猜你在找的Linux相关文章