如何在Xen HVM 上安装 Windows 7

如何在Xen HVM 上安装 Windows 7,第1张

Xen 虚拟 Windows 7 的必备条件

本章假设主系统运行的内核可以跑Xen并且安装了标准的Xen工具(如xm),另外,硬件虚拟化要求主系统的硬件支持Intel-VT 或 AMD-V 的虚拟化,为了验证这个可以在主系统中运行一下命令

对于 Intel CPU: grep vmx /proc/cpuinfo对于 AMD CPU: grep svm /proc/cpuinfo

如果以上命令执行后没有任何输出,那么说明你的硬件不支持这些特性,跑不起来Xen HVM客户机

Windows 7 的安装方式

要在Xen HVM中安装window 7,首先需要windows

7的安装盘,或者从Microsoft的官方网站上下载ISO镜像也可以。然后就通过光盘或是镜像安装即可。

如要通过光盘制作一个镜像,请把光盘放入光驱,如果运行了自动加载请先卸载,然后执行以下命令(比如光驱是/dev/cdrom)

dd if=/dev/cdrom of=windows7.iso

为Windows 7 准备存储空间

在客户机安装Windows 7 *** 作系统当然需要为它准备空间了。这个空间可以是一个物理的磁盘驱动器,也可以是一个磁盘镜像文件。如果是一个磁盘驱动器,请注意它的设备名称。通常是 /dev/sd or /dev/hd,后面跟一个字母(如/dev/sdc or /dev/hdb) 生成一个磁盘镜像可用如下dd命令行工具:

dd if=/dev/zero of=xenwin7.img bs=1024k seek=10000 count=0

这条命令就创建了一个10Gb的镜像文件,名为xenwin7.img。

创建Xen Windows 7的配置文件

下一步就是创建Windows 7作为Xen客户机所必须的配置文件,下面就是一个Windows 7 Xen客户机的最小配置的例子:

import os, re

arch = os.uname()[4]

if re.search('64', arch):

arch_libdir = 'lib64'

else:

arch_libdir='lib'

kernel = "/usr/lib/xen/boot/hvmloader"

builder='hvm'

memory = 1024

# Should be at least 2KB per MB of domain memory, plus a few MB per vcpu.

shadow_memory = 8

name = "xenwin7"

vif = [ 'type=ioemu, bridge=xenbr0' ]

acpi = 1

apic = 1

disk = [ 'file:/home/xen/xenwin7.img,hda,w', 'file:/home/xen/windows7.iso,hdc:cdrom,r' ]

device_model = '/usr/' + arch_libdir + '/xen/bin/qemu-dm'

#-----------------------------------------------------------------------------

# boot on floppy (a), hard disk (c) or CD-ROM (d)

# default: hard disk, cd-rom, floppy

boot="dc"

sdl=0

vnc=1

vncconsole=1

vncpasswd=''

serial='pty'

usbdevice='tablet'

上面的例子是用Windows 7的ISO镜像文件安装,如果是用物理磁盘来安装,磁盘指示符应该改成下面这样(用物理设备名代替/dev/sdb):

disk = [ 'phy:/dev/sdb,hda,w', 'file:/home/xen/windows7.iso,hdc:cdrom,r' ]

所以,如果是用光盘安装,命令可以改成如下(/dev/cdrom是物理光驱的路径):

disk = [ 'phy:/dev/sdb,hda,w', 'phy:/dev/cdrom,hdc:cdrom.r' ]

上面的命令把主系统中物理上的磁盘驱动/dev/sdb映射到客户机的/dev/had,/dev/cdrom映射到客户机的CD/DVD 设备(请注意,主系统中的CD/DVD设备在不同linux的发行版本中是不同的)。

如果是用磁盘镜像文件来安装,命令行应换成:

disk = [ 'file:/home/xen/xenwin2008.img,hda,w', 'phy:/dev/cdrom,hdc:cdrom,r' ]

上面例子中展示的一系列配置的设定是为了给Windows 7客户机启动一个图形控制台。当客户机运行的时候,Xen可以提供VNC 或者 SDL的图形控制台。不如,下面的命令是选择VNC的控制台:

vnc = 1

sdl=0

而这下面的命令是选择 SDL控制台:

vnc = 0

sdl = 1

VNC

和 SDL都可一为Windows

7客户机提供良好的图像显示,并且VNC比SDL有更多的优点。首先,VNC在远程访问时比SDL更灵活,无论是在本地网络还是通过英特网,或是在不同的

系统上,都可以连接上客户机系统。其二,当你关掉VNC

viewer窗口时,客户机仍然在运行,你下次再连接的时候还是可以回到你上次离开时的状态。然而,关掉SDL窗口的时候,客户机会立刻关掉并有可能丢失

数据。

在默认情况下,当客户机启动的时候,Xen不会自动启动VNC控制台。如果想要自动启动,那么就要设置如下命令:

vncconsole=1

一些其他的配置选项也可以被设置,但上面的设置是运行一个Windows 7 客户机的最小配置。当一个配置文件写完之后可以把它保存为xenwin7.cfg。

启动Xen的Windows 7 HVM客户机

所有的配置完成之后,就可以启动Xen客户机了:

xm create xenwin7.cfg

Using config file "./xenwin7.cfg".

Started domain xenwin7

几秒钟之后,VNC 或是SDL(取决于你的配置)控制台会出现,并且会启动Windows 7 的安装程序,下图就是在VNC中Xen HVM 客户机Windows 7的一个实例:

xen我没用过。不过建议

1、你看下xen中有没有设置网卡的选项。

2、另外win7中的网卡驱动对不对。

3、虚拟机里和ubuntu里的网络地址应该不在一个区域才对。

设置上去找。仔细下。反正linux系统就是让人折腾的。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/tougao/11273366.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-14
下一篇 2023-05-14

发表评论

登录后才能评论

评论列表(0条)

保存