起因(问题) 在使用LVM格式的Xenserver系统使用fdisk /dev/sdX 分配新的空间。导致了服务器下面的几个虚拟机在Xencenter下无法启动,显示“VDI 不可用”。Partprobe我无法读取分区表。 Xenserver有自己的一套分区管理系统,我的服务器是虚拟机直接保存在LVM分区上面。使用fdisk会破坏Xenserver分区结构,因此虚拟机无法启动。
解决方法 参考https://access.redhat.com/solutions/35179的方法。 问题现象: a) # pvscan 出现 “Couldn’t find device with uuid aaaaaa-bbbb-cccc-dddd-eeee-ffff-gggggg.” b) # hexdump -C /dev/sdX |less
LABELONE出现在partition table的中部
操作步骤: a) 移除所有错误加入的分区。
注意:1确保未安装新分区,用作交换或从当前正在使用的设备镜像。 2如果设备是多路径设备,那么请参考解决方案如何删除在device-mapper多路径设备上创建的分区?How to delete partition created on device-mapper multipath device?.
我的情况是新建了 /dev/sdb 分区,我需要使用parted移除新建分区,
如果分区下有其他设备,可以尝试
… b) 重新扫描LVM设备,并尝试激活已恢复的卷:
c) 以上步骤让我启动了3个虚拟机,剩下一个依旧无法启动。是关于SR的错误。 接下来修改 /opt/xensource/sm/blktap2.py 在头部加入import sys
d) 在Xencenter图形界面,点击无法启动的虚拟机,控制台->DVD驱动器->选择为空
e) 启动虚拟机,启动成功。