如何在CentOS系统中装虚拟windows系统

如何在CentOS系统中装虚拟windows系统,第1张

对于项目需求什么的多么奇葩都不为过啦,然后就是收到一个需要在centos7上装个KVM,然后在上面装个win7系统,本来以为就是装个虚拟机嘛,应该很简单,可是第一步就遇到一个bug,天呐,下面就来看看这一系列的奇妙之旅吧:

1、确定虚拟机可以安装的条件是否符合

grep'(vmx|svm)'/proc/cpuinfo

2、开始安装KVM

[root@localhost ~]# yum

install qemu-kvm libvirt virt-install bridge-utils

3、查看是否加载KVM模块成功

[root@kvm ~]# lsmod|grep kvm

kvm_intel

138567 0

kvm

441119 1 kvm_intel

#如果没有这两条,可以用"modprobe kvm"加载;

#相关命令"insmodrmmodmodinfo"

4、#启动libvirtd

[root@localhost ~]# systemctl start libvirtd

[root@localhost

~]# systemctl enable

libvirtd

[root@localhost ~]# systemctl list-unit-files|grep

libvirtd

libvirtd.service

enabled

这个时候如果在之前没有设置网络 的话就会出现如下错误:

Redirecting to /bin/systemctl start

libvirtd.serviceFailed to issue method call: Unit

libvirtd.service failed to load: No such fileor

directory.

然后就该用# ifconfig来查看自己网卡信息,将每个网卡的配置文件里的

/etc/sysconfig/network-scripts/ ifcfg-XXX(XXX代表每个网卡的名字)文件中 HWADDR参数改为上述结果对应网卡的MAC地址

5、安装VNC-server、VNC-viewer组件来进行虚拟机可视化安装

目前VNC主要有两个版本,即realVNC和tigerVNC,关于服务器安装VNC-server,两种版本都可以,但客户端的VNC-viewer,建议安装tigerVNC-viewer,因为realVNC-viewer会在创建虚拟机的端口如590x由于连接加密的问题连接不上服务器。

安装序列号,进行注册# /usr/bin/vnclicense -add VKUPN-MTHHC-UDHGS-UWD76-6N36A这里贡献部分licenseVKUPN-MTHHC-UDHGS-UWD76-6N36A

69NCN-JRLBC-QD28Y-5KLY2-UEE6A

6GQQQ-HXLBS-U2H8Q-B6UB7-R7R6A

8XWCU-ZRJBF-U7BXZ-G5EAE-ZPQ2A

6XQQQ-WXL4Q-NN4KX-NUTC6-8ZK6A

PGUFQ-HTZBB-WNHU7-YHDQC-A7R6A至此服务器端的安装已经完成

客户端安装tigerVNC-viewer首先下载tigerVNC,本客户端采用64位win7,所以下载64位的windows

版本http://sourceforge.net/projects/tigervnc/这里仅安装客户端tigerVNC-viewer然后就可以用vnc viewer远程桌面连接了,这里要用系统帐号的密码登录,

默认端口为5900,远程桌面连接端口则是5900+n(n是vncserver命令指定的)

7、下面就可以安装虚拟机了

1)、创建centOS虚拟机

通过qemu-img创建一个40G的映像文件

#qemu-img create -f qow2 /var/lib/libvirt/images/win710.img 40G

2)、创建运行脚本

#!/bin/.sh

virt-install --connect qemu:///system \

--name win7test2 --ram

2048 --vcpus=2 --cpuset=auto \

--disk

path=/var/lib/libvirt/images/win710.img,bus=virtio,size=100,format=qcow2

\

--network=network=default,model=virtio,mac=RANDOM \

--graphics vnc,port=5910

\

--disk

device=cdrom,path=/var/lib/libvirt/images/cn_windows_7_professional_with_sp1_x64_dvd_621744.iso

\

--disk

device=cdrom,path=/var/lib/libvirt/images/virtio-win-1.iso \

--os-type=windows

--os-variant=win7 --boot cdrom,hd

以上结果:

[root@localhost Admin]#

./installvm.sh

WARNING 需要图形,但未设置 DISPLAY。未运行

virt-viewer。

WARNING 没有为该虚拟机启动控制台,默认为 --wait

-1

开始安装......

创建域......

|0 B

00:00

域安装正在进行。请等待 以便安装完成。

在此过程中可能会出现“域连接不正确的错误”

是因为win710.img文件和cn_windows_7_professional_with_sp1_x64_dvd_621744.iso

权限不同造成的,将其放到一个文件夹下就可以啦!

其中,因为win默认不支持virtio驱动,而通过openstack管理虚拟机是需要virtio驱动的。需要两个virtio驱动,一个是硬盘的,一个是网卡的,即:virtio-win-0.1-30.iso和virtio-win-1.1.16.vfd,在脚本中我们将此驱动进行了加载即:virtio-win-1.iso

virt-install命令解析见http://blog.csdn.net/starshine/article/details/6998189

3)、通过vncviewer观察安装进度连接端口处写192.168.1.193:5910,连接上之后出现安装界面,继续安装即可,因为默认没有virtio驱动,所以识别

不了硬盘,需要手动选择,整个过程如下:http://www.centoscn.com/CentOS/Intermediate/2015/1106/6393.html

win7和岑投诉设置开机引导方法:

恢复centos的引导:

用centos iso 制作启动u盘进入到安装centos的界面,开机选择的时不要选择安装centos,而是选择troubleshooting疑难解答选项,然后选择rescue a centos system。

按tab键选择continue (一定要选),然后选择确认。

进入命令行界面,输入chroot /mnt/sysimage;接着就是重要的一步,安装grub2。

执行以下命令:/sbin/grub2-install /dev/sda安装成功后执行reboot重新启动系统。

这是又把centos的启动项找回来,windows的引导要在之后通过grub2来完成。

恢复windows的引导:

重新启动系统之后centos系统就能打开,可通过grub2的功能实现windows的引导。

注意:如windows系统安装在ntfs格式的分区中,应先安装ntfs-3g,使centos能识别出windows所在的分区。

打开终端,在root用户下执行下面的命令。grub2-mkconfig -o /boot/grub2/grub.cfg。

grub.cfg为grub的配置文件。 系统自动找到windows 8 系统与xp系统的引导项,并加入到grub.cfg菜单中。就避免手功改动文件的危险,并且所有系统都能正常启动。


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存