我刚刚使用此处记录的服务器升级过程将我的服务器从 10.04LTS 升级到 12.04 LTS:https://help.ubuntu.com/community/PreciseUpgrades。
在启动时,我现在被转储到 busybox shell(稍后会详细介绍)。但是,如果我从以前的版本启动内核,则一切都会正常启动。
我的配置唯一奇怪的是,我的启动设备是使用 RAID1 的多磁盘设备。当我进入 busybox shell 时,输入“mount /dev/md0 /root”就可以了。我尝试传入 rootdelay=30,在启动后 5 秒内就转入 shell。
与此处标记的问题不同: 从 10.04 升级到 12.04,grub 进入 BusyBox 提示,没有出现错误 我没有使用 splash 或 quiet 选项进行引导,也没有收到有关阵列降级的投诉。尽管如此,我尝试使用 bootdegraded 内核选项进行引导,但这也没有用。
有什么想法可以尝试吗?
(是的,电源已插入:-))
配置信息:
Grub 版本:grub(GNU GRUB 0.97)
大多数 grub menu.lst 选项都被注释掉了(以使用默认值)。最新的内核不起作用:
标题 Ubuntu 12.04.2 LTS,内核 3.2.0-51-generic-pae 根(hd0,1) 内核/boot/vmlinuz-3.2.0-51-generic-pae root=/dev/md0 ro initrd /boot/initrd.img-3.2.0-51-generic-pae 安静的
可以正常工作的最新内核:
标题 Ubuntu 12.04.2 LTS,内核 2.6.32-46-generic-pae 根(hd0,1) 内核/boot/vmlinuz-2.6.32-46-generic-pae root=/dev/md0 ro initrd /boot/initrd.img-2.6.32-46-generic-pae 安静的
mdadm 信息:
garrett@stargate:/boot/grub$ sudo mdadm --detail /dev/md0 /dev/md0: 版本:0.90 创建时间:2006 年 12 月 16 日星期六 22:27:17 突袭级别:raid1 数组大小:57609024(54.94 GiB 58.99 GB) 已使用设备大小:57609024 (54.94 GiB 58.99 GB) 突袭设备:2 设备总数:2 首选辅修科目 : 0 持久性:超级块是持久的 更新时间:2013年9月2日星期一17:02:27 状态:干净 活跃设备:2 工作装置:2 故障设备:0 备用设备:0 UUID:5c92f0d9:9cf5be95:03611c5e:a540b92f 事件:0.24172972 编号 主要 次要 RaidDevice 状态 0 8 18 0 活动同步 /dev/sdb2 1 8 2 1 活动同步 /dev/sda2
内核看到的Md设备数据:
garrett@stargate:~$ cat /proc/mdstat 个性:[线性] [多路径] [raid0] [raid1] [raid6] [raid5] [raid4] [raid10] md0 :活动 raid1 sda2[1] sdb2[0] 57609024 块 [2/2] [UU] 未使用的设备:<无>
答案1
这是由奇怪的配置以及启动脚本的改变引起的。
首先,镜像设备 /dev/md0 没有分区表。它被视为一个原始块设备,上面直接有文件系统。在紧急情况下,这允许直接启动备份设备(/dev/sda2 或 /dev/sdb2)。之前在这个分区上安装过一个短暂的 LVM,但认为没有必要,因此该设备被重新初始化为原始 ext3 设备。然而,这并没有成功删除 LMV 的所有痕迹。这导致实用程序 wait-for-root 返回“LVM2_member”作为设备类型。它一直都是这样做的。
其次,对启动脚本 'scripts/local' 的更新将 mount 命令从:
挂载 ${roflag} ${ROOTFLAGS} ${ROOT} ${rootmnt}
到:
挂载 ${roflag} ${FSTYPE:+-t ${FSTYPE} }${ROOTFLAGS} ${ROOT} ${rootmnt}
现在,mount 失败了,因为我们在 mount 命令中强制输入文件系统类型。在这种情况下,类型“LVM2_member”根本不起作用 - 我们需要 ext3。旧版本可以正常工作,因为 mount 可以轻松确定这是一个 ext3 文件系统。
短期解决方法是在内核启动行中传入 rootfstype=ext3。这将忽略不正确的自动检测文件系统类型并指定要挂载的 ext3。