您尚未登录。

#1 2013-11-21 23:04:16

yichenburan
会员
注册时间: 2011-09-03
帖子: 35

将磁盘的分区作为qemu虚拟磁盘, 如何启动?(已解决, 启动windows xp不能这么干)

工作需要 要装windowsxp , 我使用 -hda /dev/sda6 不是sda, 在sda6里面创建了一个mbr, 安装xp,
我想利用主机里的grub来引导, 磁盘是gpt的, windows不支持gpt, 但sda6里面的分区是mbr的.
qemu启动成功, grub引导启动失败.
fdisk -l /dev/sda6 可以查看分区.


qemu 支持使用物理硬盘, 但要加上 -hda /dev/sdX 可以启动你物理磁盘中的操作系统(和主机启动相同的系统貌似有问题)
我现在就是把分区当硬盘用了.

grub2 能引导这种虚拟磁盘吗?

最近编辑记录 yichenburan (2013-11-22 12:27:28)


一切有为法,如梦幻泡影。

离线

#2 2013-11-22 10:18:13

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,384
个人网站

Re: 将磁盘的分区作为qemu虚拟磁盘, 如何启动?(已解决, 启动windows xp不能这么干)

Windows 能从这种磁盘上启动吗?

离线

#3 2013-11-22 10:53:49

yichenburan
会员
注册时间: 2011-09-03
帖子: 35

Re: 将磁盘的分区作为qemu虚拟磁盘, 如何启动?(已解决, 启动windows xp不能这么干)

sda6 是 msdos类型的, qemu支持使用整块真实的物理磁盘, 我把/dev/sda6当成整块磁盘给qemu用, 在里面分区。
fdisk -l /dev/sda6
Disk /dev/sda6: 53.7 GB, 53686771200 bytes
255 heads, 63 sectors/track, 6527 cylinders, total 104856975 sectors
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 4096 bytes
I/O size (minimum/optimal): 4096 bytes / 4096 bytes
Disk identifier: 0x00084f77

     Device Boot      Start         End      Blocks   Id  System
/dev/sda6p1   *          63   104856254    52428096    c  W95 FAT32 (LBA)
Partition 1 does not start on physical sector boundary.

在外面mount -o loop,offset=$((512*63)) /dev/sda6 /mnt
挂载成功
grub2  可以识别(hd0,gpt6,msdos1)

set root=(hd0,gpt6,msdos1)
chainloader +1
couldn't read the boot system


一切有为法,如梦幻泡影。

离线

#4 2013-11-22 12:25:40

yichenburan
会员
注册时间: 2011-09-03
帖子: 35

Re: 将磁盘的分区作为qemu虚拟磁盘, 如何启动?(已解决, 启动windows xp不能这么干)

这种方法应该是不会成功的, windows xp把/dev/sda6当成一整块磁盘才能启动, 但是在非虚拟的环境下, 一定会尝试去识别整块物理磁盘, 而不会把物理磁盘的一部分当成一个磁盘,  所以一定会失败, 倒是linux, 如果在fstab中指定 /dev/sda6中分区的偏移量说不定能成功, 不过没心情测试了.

我这么做主要是windowsxp不认识gpt类型的硬盘, 看来我得把gpt转成mbr才行.

如果谁知道有办法做到, 启动分区中的 windowsxp分区, 告诉我一声.

最近编辑记录 yichenburan (2013-11-22 12:28:37)


一切有为法,如梦幻泡影。

离线

#5 2013-11-22 14:56:51

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,384
个人网站

Re: 将磁盘的分区作为qemu虚拟磁盘, 如何启动?(已解决, 启动windows xp不能这么干)

你直接在虚拟机里用 xp 吧。

离线

#6 2013-11-23 21:27:50

yichenburan
会员
注册时间: 2011-09-03
帖子: 35

Re: 将磁盘的分区作为qemu虚拟磁盘, 如何启动?(已解决, 启动windows xp不能这么干)

百合仙子 说:

你直接在虚拟机里用 xp 吧。

没有主机好用, 我们的电脑配置较低, 不过硬盘成功转换成为mbr类型的了, 没有丢失数据, 只是一个扩展分区起始位置不对齐, gparted不能对这个分区操作, 不影响使用.
我在验证是否成功的时候不敢重启电脑, 如果分区表错误, 重启就麻烦了, 就用qemu 启动主机硬盘, 经过qemu验证没问题才重启的.多亏了qemu


一切有为法,如梦幻泡影。

离线

#7 2015-11-07 23:16:19

自由建客
穷若韩信
所在地: 桂林市第六人民医院
注册时间: 2011-08-27
帖子: 250
个人网站

Re: 将磁盘的分区作为qemu虚拟磁盘, 如何启动?(已解决, 启动windows xp不能这么干)

你就是把 sda6 那个分区当作磁盘镜象给虚拟机用了吧?

离线

#8 2015-11-08 07:16:17

yichenburan
会员
注册时间: 2011-09-03
帖子: 35

Re: 将磁盘的分区作为qemu虚拟磁盘, 如何启动?(已解决, 启动windows xp不能这么干)

自由建客 说:

你就是把 sda6 那个分区当作磁盘镜象给虚拟机用了吧?

这个是两年前在上家公司遇到的问题了 当时是的 虚拟机可以引导 主机不行 具体的记不清了


一切有为法,如梦幻泡影。

离线

页脚