我将 Ubuntu Maverick 升级到 Precise 服务器,但在更新 grub 时出现以下错误:
error: physical volume pv0 not found.
现在,对于我的系统,我有 /dev/sda 到 /dev/sde
- /dev/sda1 是 /boot 的 Linux 分区
- /dev/sda5 是 LVM 分区
- /dev/sdb 到 /dev/sde 是 LVM 的 PV
通过查看我的 vg 配置,pv0 是 /dev/sda5
我只有一个叫做“ns2”的卷组,其中有根(/)和一些其他系统的逻辑卷。
我尝试在网上寻求帮助,但他们说我应该升级到 Grub2,因为它对 LVM 的支持更好。我这样做了,但还是出现了同样的错误。我还没有重启服务器,但我感觉它无法启动。不过,我还是想修复这个错误。
我的启动分区不在 LVM 卷中,因此 grub1 或 grub2 也应该可以毫无问题地查看它。
有什么想法吗?我刚刚尝试重新安装 grub,但出现相同的错误,但一切似乎都“正常”。
重启前我可以检查什么?该服务器位于另一个位置,我无法远程访问控制台,因此如果需要执行某些操作,我希望能够做好准备。
编辑:添加了更多信息http://pastebin.com/Smr1pB8W
编辑:添加了 pvs 信息http://pastebin.com/yubMd232
答案1
听起来您在升级 LVM2/GRUB 和内核之间没有重新启动。
您需要将旧版 grub “固定” 足够长的时间,以便将系统重新启动到当前内核版本。此时,您应该可以取消固定,升级 grub,然后一切都会正常。
将其添加到/etc/apt/preferences
:
# Force grub to 1.98+20100804-5ubuntu3
Package: grub-pc
Pin: release n=maverick
Pin-Priority: 1000
现在
apt-get update && apt-get -s dist-upgrade
假设您得到如下一行Inst grub-pc [ 1.98+20100804-5ubuntu3] ....
(并且由此产生的依赖项改组不会破坏您的系统...注意 libc 降级之类的事情),您可以apt-get dist-upgrade
强制 grub 恢复正常。我建议
update-grub
再运行一次,以确保您不会陷入无法启动的情况。
让我知道事情的后续 :)