Gentoo在Xen HVM guest虚拟机中运行时支持xvd设备

我正在尝试将Gentoo安装到Xen HVM guest虚拟机中。 一切顺利,安装到您进行grub安装的地步。 显然,grub并不知道标记为“xvd”的块设备(参见https://bugs.gentoo.org/show_bug.cgi?id=424343 )。 最初的错误是:

 livecd#grub-install / dev / xvda
 / dev / xvda没有任何相应的BIOS驱动器

修补/ sbin / grub-install以查看xvd设备并将/boot/grub/device.map修改为:

 (hd0)/ dev / xvda

我现在得到以下错误:

 livecd#grub-install / dev / xvda
 df:警告:不能读取挂载的文件系统的表:没有这样的文件或目录
无法find/ boot的设备:找不到或不是块设备

livecd看到的磁盘很好,fdisk -l显示我的所有分区:

磁盘/ dev / xvda:48.3 GB
设备启动结束系统
 / dev / xvda1 2048 206847 Linux
 / dev / xvda2 206848 4302847 Linux swap / Solaris
 / dev / xvda3 43002848 94371739 Linux

有没有人有Gentoo在Xen DomU上工作? 任何意见越过这个将不胜感激。 看起来只有grub在这一点上有问题。

编辑:添加/ proc / mounts

 livecd〜#cat / proc / mounts
 rootfs / rootfs rw 0 0
 proc / proc proc rw,nosuid,nodev,noexec,relatime 0 0
 sysfs / sys sysfs rw,nosuid,nodev,noexec,relatime 0 0
 udev / dev devtmpfs rw,nosuid,relatime,size = 10240k,nr_inodes = 46256,mode = 755 0 0
 devpts / dev / pts devpts rw,relatime,gid = 5,mode = 620 0 0
 tmpfs / tmpfs rw,relatime 0 0
 / dev / sr0 / mnt / cdrom iso9660 ro,relatime 0 0
 / dev / loop0 / mnt / livecd squashfs ro,relatime 0 0
 xenfs / proc / xen xenfs rw,nosuid,nodev,noexec,relatime 0 0
 rc-svcdir /mnt/livecd/lib64/rc/init.d tmpfs rw,nosuid,nodev,noexec,relatime,size = 1024k,mode = 755 0 0
 fusectl / sys / fs / fuse / connections fusectl rw,relatime 0 0
 shm / dev / shm tmpfs rw,nosuid,nodev,noexec,relatime 0 0
 tmpfs / mnt / livecd / lib64 /固件tmpfs rw,relatime 0 0
 tmpfs / mnt / livecd / usr / portage tmpfs rw,relatime 0 0
 usbfs / proc / bus / usb usbfs rw,nosuid,noexec,relatime 0 0
 / dev / xvda3 / mnt / gentoo ext3 rw,relatime,errors = continue,barrier = 1,data = writeback 0 0
 / dev / xvda1 / mnt / gentoo / boot ext3 rw,relatime,errors = continue,barrier = 1,data = writeback 0 0
 proc / mnt / gentoo / proc proc rw,relatime 0 0
 udev / mnt / gentoo / dev devtmpfs rw,nosuid,relatime,size = 10240k,nr_inodes = 46256,mode = 755 0 0
 devpts / mnt / gentoo / dev / pts devpts rw,relatime,gid = 5,mode = 620 0 0
 shm / mnt / gentoo / dev / shm tmpfs rw,nosuid,nodev,noexec,relatime 0 0

输出ls / dev / da

的/ dev / dac960_gam
的/ dev /重新确认
的/ dev / xvda
的/ dev / xvda1
的/ dev / xvda2
的/ dev / xvda3

grub-install实际上只需要知道要安装什么设备,因为你的livecd没有使用Xen内核,所以不会有xvd设备。 您可以通过查看/ proc / mounts来validation这一点:

 > cat /proc/mounts 

所以假设/ dev / sda是​​您需要安装grub的设备,您需要在livecd环境中安装grub:

 > grub-install --no-floppy /dev/sda 

尽pipe如此,您仍然需要使用正确的xvd设备创buildgrub.conf和fstab文件。