To be a better coder
分类: LINUX
2017-11-06 16:36:22
原文地址: KVM 虚拟化源码编译安装 作者:baochenggood
KVM 虚拟化安装
系统环境 :Red Hat Enterprise Linux Server release 6.3 (Santiago) X64
内核版本:linux-3.4.1.tar.gz
1..软件下载:
wget
2软件安装:
tar -zxvf linux-3.4.1.tar.gz
cd linux-3.4.1
make menuconfig
向下翻,选择 [*] Virtualization ---> 回车
进入 [*] Virtualization ---> 选中 kvm,选中对处理器的支持( KVM for Intel processors support 和 KVM for AMD processors support)
选择后 选择 Exit -----Exit 会弹出一个保存框,点击YES 即可
yum install ncurses* 依赖包,不安装报错
make vmlinux -j 20 #编译kernel ##编译很慢请耐心等待##
make bzImage #编译bzImage
make modules -j 20 #编译内核模块
make modules_install #安装module
ls -l /lib/modules/3.4.1/kernel/
make install
init 6 #重启 必须的
modprobe kvm #加载kvm 和kvm_intel模块
modprobe kvm_intel
ls -l /dev/kvm
lsmod |grep kvm
报错处理:
FATAL:Errorinsertingkvm_intel (/lib/modules/2.6.32-279.el6.x86_64/kernel/arch/x86/kvm/kvm-intel.k
这个错误时虚拟机做实验vt没有打开,没有虚拟机功能没法加载模块
改过重启即可
这里使用git进行下载qemu-kvm源码托管在git上,这里用git下载
安装git
yum -y install git*
git clone
这个超慢不推荐
到 去下载源码这样心急的朋友可以快点
这里用的git 克隆的
cd qemu-kvm.git
1.qemu的configure 文件配置
./configure #执行configure 文件进行配置,执行可能会有报错,后面有报错解决
下面的显示才是正常:
VNC support yes #通常需要通过VNC连接到客户机中
KVM support yes #这是对kvm的支持
2.qemu-kvm 编译
过程配置之后就是编译qemu-kvm
make -j 20 #编译微慢请耐心等待
剩下还有很多省略了
3.安装qemu-kvm
编译完成后,运行“make install” 命令即可安装 qemu-kvm
qemu-kvm 检查是否安装成功
which qemu-system-x86_64 #检查是否有这个命令
which qemu-img
ls /usr/local/share/qemu/
ls /usr/local/share/qemu/keymaps/
报错解决:
报错1
root@localhost qemu-1.7.0]# ./configure
ERROR: zlib check failed
Make sure to have the zlib libs and headers installed
解决办法: yum -y install zlib-devel
报错2
root@localhost qemu-1.7.0]# ./configure
ERROR: glib-2.12 required to compile QEMU
解决方法:yum -y install glib*
报错3
[root@localhost qemu-1.7.0]# make install
GEN config-all-devices.mak
(cd /root/qemu-1.7.0/pixman; autoreconf -v --install)
/bin/sh: autoreconf: command not found
make: *** [/root/qemu-1.7.0/pixman/configure] Error 127
解决办法: yum -y install automake
1.创建镜像文件
需要创建一个镜像 文件或者磁盘分区来存储客户机的系统和文件,可以使用dd工具
dd if=/dev/zero of=/kvm/rhel6u3.img bs=1M count=8192
2.准备一个RHEL6.3的iso用于安装系统
3.创建虚拟机
qemu-system-x86_64 -hda /kvm/rhel6u3.img -cdrom /root/rhel-server-6.3-x86_64-dvd.iso -boot d -m 1024 -net nic -net tap,ifname=tap1,script=no,downscript=no
其中-m 1024是分给客户机1G内存 -smp 4 是给客户机分配4个cpu,-boot order=cd 指定系统的启动顺序为(光驱,硬盘,)-hda 分配给客户ide硬盘(即之前准备好的镜像) -cdrom 是分给客户机的光驱。对于win2k的安装必须指定-win2k-hack参数,否则安装会中途出错退出,这个参数只需要在安装的时候使用,在运行的时候是不需要的。
默认情况下QEMU会启动一个vnc server 端口(:5900)可以用vncviewer 工具连接到QEMU的vnc端口查看客户机
用vnc 连接到QEMU
4..配置虚拟化网络环境
配置网卡:
宿主机网卡配置:IP 配置为192.168.10.10
配置虚拟机网卡地址:IP 配置为 192.168.101
网络桥接配置
#!/bin/bash
#kvm network
brctl addbr br0
tunctl -t tap0 -u user1 #这个用户必须系统有添加
tunctl -t tap1 -u user1 #tunctl如果报错说明没安装yum install tunctl -y 安装即可
brctl addif br0 eth0
brctl addif br0 tap0
brctl addif br0 tap1
ifconfig br0 192.168.10.10
ifconfig eth0 0.0.0.0 promisc
ifconfig tap0 up
ifconfig tap1 up
route add -net 0.0.0.0 netmask 0.0.0.0 gw 192.168.10.1
启动虚拟机脚本:
可以做开机启动,随着系统启动
#!/bin/bash
qemu-system-x86_64 -hda /kvm/rhel6u3.img -m 512 -localtime -net nic -net tap,ifname=tap1,script=no,downscript=no
宿主机vnc图形界面连接虚拟机脚本:
#!/bin/bash
vncviewer :5900
这样虚拟机与真实机器之间网络就通了