str*_*rix 5 linux ubuntu lvm udev md
全新安装的 Ubuntu Server 13.10 (x64) 从位于 md+lvm 的根卷启动时遇到问题。我现在已经找到了一个解决方案,但我想更多地了解正在发生的事情以及可能有哪些更好的解决方案。
由于这台机器的目标是试验 Xen(为了更好地了解商业虚拟机托管),所以这台机器是由我手头的零件组装而成的,具体来说:Q6600 + Asus 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
Run Code Online (Sandbox Code Playgroud)
暂停后,它放弃并进入 initramfs shell。发出命令lvm vgchange -ay成功初始化 LVM,/dev/mapper 按预期填充,系统在 ^D 后正常启动。
通过在 /etc 中复制 /lib/udev/rules.d/85-lvm2.rules 并插入sleep 1如下所示的a :
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'"
Run Code Online (Sandbox Code Playgroud)
(并重建 initramfs)系统现在可以独立启动,但这是一个相当糟糕的解决方案。我试过摆弄rootwait=,lvmwait=和scsi_mod.scan=sync内核参数,如各种错误跟踪器和博客文章中所讨论的那样,但我尝试过的都没有奏效。有几页表明 evms 有问题,但似乎没有安装。其他人建议在不相关的块设备上超时,我什至禁用了 DVD 驱动器。
看起来 md 和 lvm 之间存在某种竞争条件,并且 lvm 在 md0 准备就绪之前被 udev 调用。这些内核参数似乎在lvm 运行后插入延迟,因此没有多少等待帮助,因为 LV 永远不会准备好,因为vgchange已经运行(并且失败)。
这就是我深入研究问题的程度。任何人都可以提出更好的解决方案,或者建议如何深入研究以找到更多问题?
[1] 由于此时 sdb1 丢失,因此该 raid 卷被手动配置为具有 1 个设备的 RAID1,因为 Ubuntu 不喜欢在降级的卷上启动。
小智 3
我刚刚遇到了同样的问题,显然具有相同类型的硬件和全新的 13.10 x64 安装。由于经验不足,我花了几天时间寻找丢失内核模块等的可能性,但在阅读了您的报告后,我确实发现 initramfs busybox 提示符下的 vgchange -ay 确实使系统可启动。我还没有尝试过您发布的 1 秒延迟解决方法(我会的),但我还注意到以下可能相关的 Debian 错误报告:
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=633024
| 归档时间: |
|
| 查看次数: |
1998 次 |
| 最近记录: |