我正在尝试在 XenServer 5.5 服务器上将 VM 的 HVM 模式转换为 PV 模式。
作为此例程的一部分,我需要将 /etc/fstab 中的分区名称 /dev/hd* 更改为 /dev/xvd*。
这是我当前的 /etc/fstab:
/dev/vg_os/lv_sys / ext3 defaults 1 1
LABEL=/boot /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/vg_os/lv_swap swap swap defaults 0 0
/boot = /dev/hda1
/ = /dev/hda2 (allocted for LVM /dev/vg_os/lv_sys)
我需要将 /dev/hda1 更改为 /dev/xvda1,将 /dev/hda2 更改为 /dev/xvda2。据我所知,/dev/hda1 可以这样替换:
/dev/vg_os/lv_sys / ext3 defaults 1 1
/dev/xvda1 /boot ext3 defaults 1 2
tmpfs /dev/shm tmpfs defaults 0 0
devpts /dev/pts devpts gid=5,mode=620 0 0
sysfs /sys sysfs defaults 0 0
proc /proc proc defaults 0 0
/dev/vg_os/lv_swap swap swap defaults 0 0
并且应该使用诸如 vgchange 之类的 LVM 工具来替换 /dev/hda2。
pvdisplay /dev/hda2
--- Physical volume ---
PV Name /dev/hda2
VG Name vg_os
PV Size 109.90 GB / not usable 21.44 MB
Allocatable yes
PE Size (KByte) 32768
Total PE 3516
Free PE 60
Allocated PE 3456
PV UUID dTkHMo-Bd7T-ia9q-8cEc-Xc4p-670p-D4kgRV
我无法找到如何将 LVM PV 名称从 /dev/hda2 更改为 /dev/xvda2。
答案1
LVM 不会按名称查找物理卷。(事实上,这是它的优点之一。)LVM 会查看所有潜在的物理卷,检查它们是否有 LVM 签名,如果有,则读取它们以找出它们属于哪个卷组以及它们包含什么。因此,您需要做的就是转换卷并确保 LVM 正在寻找以下形式的物理卷/dev/xvd?[0-9]
(我假设 XenServer 上已经是这种情况)。
答案2
我通过应用 xs-tools 的 XenServer 5.5 内核修复了这个问题。
RHEL 5.5 xen 内核无法在 XenServer 5.5 的 PV 模式下启动,可能是因为它使用了不同的分区名称约定。这就是它无法找到 /boot 分区的原因。
最后,我能够将 XenServer 5.5 VM HVM 模式 2 PV 转换为使用“其他操作系统”模板安装的 RHEL 5.5。
如果有人感兴趣的话这里有一个迷你 HOWTO:
http://wiki.virtastic.com/display/howto/CentOS+5.5+with+XenServer+Tools+on+XenServer+5.5
如果是 RHEL 5.5,您需要先安装 xs-tools,而不是安装 RHEL 5.5 xen 服务器。