linux kvm虚拟机使用
安装配置kvm
1、安装kvm软件包
[root@kvm ~]# yum install kvm python-virtinst libvirt tunctl bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-v2v
2、安装kvm虚拟化管理工具包
[root@kvm ~]# yum install libguestfs-tools
3、查看虚拟化环境
(1)查看虚拟机环境
[root@kvm ~]# virsh -c qemu:///system list
错误:Failed to connect socket to '/var/run/libvirt/libvirt-sock': 没有那个文件或文件夹
错误:连接到管理程序失败
[root@kvm ~]# /etc/init.d/libvirtd restart
正在关闭 libvirtd 守护进程: [失败]
启动 libvirtd 守护进程: [确定]
[root@kvm ~]# virsh -c qemu:///system list
Id 名称 状态
----------------------------------------------------
(2)检測kvm模块是否安装
[root@kvm ~]# lsmod |grep kvm
kvm_intel 53484 0
kvm 316506 1 kvm_intel
(3)查看虚拟工具版本号
[root@kvm ~]# virsh --version
0.10.2
[root@kvm ~]# virt-install --version
0.600.0
[root@kvm ~]# ln -s /usr/libexec/qemu-kvm /usr/bin/
[root@kvm ~]# qemu-kvm --version
QEMU PC emulator version 0.12.1 (qemu-kvm-0.12.1.2-2.448.el6_6), Copyright (c) 2003-2008 Fabrice Bellard
4、手动配置虚拟网桥
(1)桥接模式的概述
事实上我们在虚拟机搭建的时候,我们终于关心的网卡是: eth0, br0, vnet0,vnet1…
当中eth0是我们server原来的物理网卡,而br0是我们虚拟出来的网桥设备,而vnetXXX就是桥接映射到虚拟机里面用到的网卡。
当配置完成之后,我们使用ifconfig命令查看起来的话。会发现eth0是没有IP地址,而br0仿佛是虚拟出来的一个原来eth0的訪问接口,它具有IP地址,能够取代原来的eth0被訪问。而vnetXX的地址能够在建立虚拟机之后在虚拟机里面配置。桥接后能够被外部訪问。
注意:将已有的物理网卡加入到网桥,此时物理网卡eth0工作于混杂模式,所以不须要IP地址。由于网桥是工作在链路层的。br0就提供了IP地址。用来模拟原来的物理网卡的訪问接口.
关于混杂模式:
依据以太网的原理。包是在整个子网里面广播发送的,当网卡发现这个数据帧不是发给自己的也不是广播包的时候。就直接把它丢掉,而不传送到上层内核去处理。而当网卡处于混杂模式的时候,网卡就不会丢掉帧,而是所有向上提交到内核,让内核处理这些帧结构。通常的。混杂模式使用来进行网络调试的,不是正常的工作状态
(2)创建配置br0网桥
[root@kvm ~]# cd /etc/sysconfig/network-scripts/
[root@kvm network-scripts]# cp ifcfg-eth1 ifcfg-br0
[root@kvm network-scripts]# more ifcfg-eth1
DEVICE=eth1
HWADDR=00:0C:29:59:7f:21
TYPE=Ethernet
ONBOOT=yes
BRIDGE=br0
[root@kvm network-scripts]# more ifcfg-br0
DEVICE=br0
HWADDR=00:0C:29:59:7f:21
TYPE=Bridge
UUID=739689d7-857c-4a62-9ede-bd6f18cde92a
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=static
IPADDR=192.168.1.180
NETMASK=255.255.255.0
GATEWAY=192.168.1.1
(3)又一次启动network
[root@kvm ~]# service network restart
正在关闭接口 br0: [确定]
正在关闭接口 eth1: [确定]
关闭环回接口: [确定]
弹出环回接口: [确定]
弹出界面 eth1: [确定]
弹出界面 br0: [确定]
(4)查看网络配置信息
[root@kvm ~]# ifconfig
br0 Link encap:Ethernet HWaddr 00:0C:29:59:7F:21
inet addr:192.168.1.180 Bcast:192.168.1.255 Mask:255.255.255.0 #获取到地址
inet6 addr: fe80::20c:29ff:fe59:7f21/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3170100 errors:0 dropped:0 overruns:0 frame:0
TX packets:1731782 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:4503127474 (4.1 GiB) TX bytes:132209121 (126.0 MiB)
eth1 Link encap:Ethernet HWaddr 00:0C:29:59:7F:21
inet6 addr: fe80::20c:29ff:fe59:7f21/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:3233002 errors:0 dropped:0 overruns:0 frame:0
TX packets:1781748 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:4626338976 (4.3 GiB) TX bytes:136271300 (129.9 MiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
virbr0 Link encap:Ethernet HWaddr 52:54:00:19:DC:45
inet addr:192.168.122.1 Bcast:192.168.122.255 Mask:255.255.255.0
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
vnet0 Link encap:Ethernet HWaddr FE:54:00:20:9C:91
inet6 addr: fe80::fc54:ff:fe20:9c91/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:20 errors:0 dropped:0 overruns:0 frame:0
TX packets:644 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:500
RX bytes:3365 (3.2 KiB) TX bytes:61657 (60.2 KiB)
(5)查看网桥
[root@kvm ~]# brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000c29597f21 no eth1
四、kvm安装CentOS 6.x系统
1、上传CentOS6.4镜像到本地server中
[root@kvm ~]# mkdir /iso
[root@kvm ~]# ls /iso/
CentOS-6.4-x86_64-bin-DVD1.iso
2、创建虚拟机硬盘
[root@kvm ~]# mkdir /kvm
[root@kvm ~]# qemu-img create -f qcow2 /kvm/kvmtest.img 4G
Formatting '/kvm/kvmtest.img', fmt=qcow2 size=4294967296 encryption=off cluster_size=65536
[root@kvm ~]# ls /kvm/
kvmtest.img
[root@kvm ~]# qemu-img --help
qemu-img version 0.12.1, Copyright (c) 2004-2008 Fabrice Bellard
usage: qemu-img command [command options]
QEMU disk image utility
Command syntax:
check [-f fmt] [--output=ofmt] [-r [leaks | all]] [-T src_cache] filename
create [-f fmt] [-o options] filename [size]
commit [-f fmt] [-t cache] filename
compare [-f fmt] [-F fmt] [-T src_cache] [-p] [-s] filename1 filename2
convert [-c] [-p] [-f fmt] [-t cache] [-T src_cache] [-O output_fmt] [-o options] [-S sparse_size] filename [filename2 [...]] output_filename
info [-f fmt] [--output=ofmt] filename
map [-f fmt] [--output=ofmt] filename
snapshot [-l | -a snapshot | -c snapshot | -d snapshot] filename
rebase [-f fmt] [-t cache] [-T src_cache] [-p] [-u] -b backing_file [-F backing_fmt] filename
resize filename [+ | -]size
Command parameters:
'filename' is a disk image filename
'fmt' is the disk image format. It is guessed automatically in most cases
'cache' is the cache mode used to write the output disk image, the valid
options are: 'none', 'writeback' (default), 'writethrough' and 'unsafe'
'src_cache' in contrast is the cache mode used to read input disk images
'size' is the disk image size in bytes. Optional suffixes
'k' or 'K' (kilobyte, 1024), 'M' (megabyte, 1024k), 'G' (gigabyte, 1024M)
and T (terabyte, 1024G) are supported. 'b' is ignored.
3、创建虚拟机
[root@kvm ~]# virt-install --name kvmtest01 --boot network,cdrom,menu=on --ram 1024 --vcpus=1 --os-type=linux --accelerate -c /iso/CentOS-6.4-x86_64-bin-DVD1.iso --disk path=/kvm/kvmtest.img,size=4,format=qcow2,bus=virtio --bridge=br0,model=virtio --vnc --vncport=5991
--vnclisten=0.0.0.0
開始安装......
创建域...... | 0 B 00:01
无法打开显示:
执行 'virt-viewer --help' 来查看可用命令行选项的完整列表
域安装仍在进行。
您能够又一次连接
到控制台以便完毕安装进程。
4、開始通过VNC进行连接,进行安装过程
(1)查看kvm监听的port
[root@kvm ~]# netstat -tnlp |grep kvm
tcp 0 0 0.0.0.0:5991 0.0.0.0:* LISTEN 16291/qemu-kvm
(2)VNC建立连接方式(能够安装虚拟机的系统)
IP:5991
5、登陆操作系统查看
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
2 kvmtest01 running
五、kvm虚拟机的日常管理和配置
1、查看kvm虚拟机配置文件以及执行状态
(1)kvm虚拟机默认配置文件
[root@kvm ~]# cd /etc/libvirt/qemu/
[root@kvm qemu]# ll
总用量 8
-rw------- 1 root root 2456 12月 19 12:16 kvmtest01.xml
drwx------ 3 root root 4096 12月 19 11:56 networks
(2)virsh命令帮助
[root@kvm qemu]# virsh --help
或者
[root@kvm qemu]# virsh
欢迎使用 virsh,虚拟化的交互式终端。
输入:'help' 来获得命令的帮助信息
'quit' 退出
virsh # help
(3)查看kvm虚拟机的状态
[root@kvm qemu]# virsh list --all
Id 名称 状态
----------------------------------------------------
2 kvmtest01 running
2、kvm虚拟机关机或断电
我们在开启与关闭KVM虚拟机时。通常是通过start、shutdown、reboot等命令来进行。
可是有时候我们会发如今使用shutdown、reboot命令进行关闭和重新启动虚拟机时,虚拟机没有不论什么反应,该怎么执行还是怎么执行,这个时候我们可能就会使用destroy暴力关机。
为什么会出现这样的现象?
经过查询相关资料发现,原来这几个命令是向KVM虚拟机发送一个ACPI指令。来实现相关对虚拟机的操作。而默认安装KVM虚拟机时,特别是linux虚拟机。没有安装ACPI服务,因此导致虚拟机没有对这些命令做出对应的动作。
解决的方法:
假设要实现这些指令的功能,那么就须要在KVM的虚拟机中,安装ACPI服务,然后启动该服务就可以。
KVM虚拟机中眼下windows系统默认ACPI服务已经安装并启动,所以我们仅仅须要对Linux进行安装ACPI服务就可以。
(1)安装acpid服务
[root@kvm ~]# yum install acpid
(2)将acpid服务设置开机自启动
[root@kvm ~]# /etc/init.d/acpid status
acpid 已停
[root@kvm ~]# /etc/init.d/acpid start
启动 acpi 守护进程: [确定]
[root@kvm ~]# chkconfig acpid on
[root@kvm ~]# chkconfig --list acpid
acpid 0:关闭 1:关闭 2:启用 3:启用 4:启用 5:启用 6:关闭
(3)关机
默认情况下virsh工具不能对linux虚拟机进行关机操作,linux操作系统须要开启与启动acpid服务。在安装KVM linux虚拟机必须配置此服务。
[root@kvm ~]# virsh shutdown kvmtest01
域 kvmtest01 被关闭
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
2 kvmtest01 running
(4)强制关闭电源
[root@kvm ~]# virsh destroy kvmtest01
域 kvmtest01 被删除
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
- kvmtest01 关闭
3、通过配置文件启动虚拟机
[root@kvm ~]# virsh create /etc/libvirt/qemu/kvmtest01.xml
域 kvmtest01 被创建(从 /etc/libvirt/qemu/kvmtest01.xml)
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
3 kvmtest01 running
4、kvm虚拟机开机的两种方式
第一种:
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
- kvmtest01 关闭
[root@kvm ~]# virsh start kvmtest01
域 kvmtest01 已開始
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
4 kvmtest01 running
另外一种:通过配置文件启动虚拟机
[root@kvm ~]# virsh create /etc/libvirt/qemu/kvmtest01.xml
域 kvmtest01 被创建(从 /etc/libvirt/qemu/kvmtest01.xml)
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
3 kvmtest01 running
5、配置开机自启动虚拟机
[root@kvm ~]# ll /etc/libvirt/qemu
总用量 8
-rw------- 1 root root 2456 12月 19 12:16 kvmtest01.xml
drwx------ 3 root root 4096 12月 19 11:56 networks
[root@kvm ~]# virsh autostart kvmtest01
域 kvmtest01标记为自己主动開始
[root@kvm ~]# ll /etc/libvirt/qemu
总用量 12
drwxr-xr-x 2 root root 4096 12月 19 13:07 autostart #开机自启动文件
-rw------- 1 root root 2456 12月 19 12:16 kvmtest01.xml
drwx------ 3 root root 4096 12月 19 11:56 networks
6、导出kvm虚拟机配置文件
凝视:kvm虚拟机配置文件能够通过这样的方式进行备份
[root@kvm ~]# virsh dumpxml kvmtest01 > /etc/libvirt/qemu/kvmtest02.xml
[root@kvm ~]# ll /etc/libvirt/qemu/
总用量 16
drwxr-xr-x 2 root root 4096 12月 19 13:07 autostart
-rw------- 1 root root 2456 12月 19 12:16 kvmtest01.xml
-rw-r--r-- 1 root root 2642 12月 19 13:22 kvmtest02.xml
drwx------ 3 root root 4096 12月 19 11:56 networks
7、加入删除kvm虚拟机
(1)删除kvm虚拟机
说明:该命令仅仅是删除了可vmtest01的配置文件,并非删除虚拟磁盘文件
说明:该命令仅仅是删除了可vmtest01的配置文件。并非删除虚拟磁盘文件
[root@kvm ~]# ll /etc/libvirt/qemu
总用量 16
drwxr-xr-x 2 root root 4096 12月 19 13:07 autostart
-rw------- 1 root root 2456 12月 19 12:16 kvmtest01.xml #kvmtest01虚拟机的配置文件
-rw-r--r-- 1 root root 2642 12月 19 13:22 kvmtest02.xml #kvmtest01虚拟机的备份配置文件
drwx------ 3 root root 4096 12月 19 11:56 networks
[root@kvm ~]# virsh destroy kvmtest01
域 kvmtest01 被删除
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
- kvmtest01 关闭
[root@kvm ~]# virsh undefine kvmtest01
域 kvmtest01 已经被取消定义
[root@kvm ~]# ll /etc/libvirt/qemu
总用量 12
drwxr-xr-x 2 root root 4096 12月 19 13:29 autostart
-rw-r--r-- 1 root root 2642 12月 19 13:22 kvmtest02.xml #发现虚拟机的配置文件被删除了
drwx------ 3 root root 4096 12月 19 11:56 networks
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
(2)又一次定义虚拟机配置文件
通过导出备份的配置文件恢复原KVM虚拟机的定义,并又一次定义虚拟机
[root@kvm ~]# virsh define /etc/libvirt/qemu/kvmtest01.xml
定义域 kvmtest01(从 /etc/libvirt/qemu/kvmtest01.xml)
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
- kvmtest01 关闭
(3)启动kvmtest01虚拟机
[root@kvm ~]# virsh start kvmtest01
域 kvmtest01 已開始
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
5 kvmtest01 running
8、kvm的挂起和恢复命令
(1)挂起
[root@kvm ~]# suspend kvmtest01
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
6 kvmtest01 暂停
(2)恢复
[root@kvm ~]#resume kvmtest01
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
6 kvmtest01 running
六、kvm虚拟机控制台登陆配置
说明:下面全部的操作都是在kvm虚拟主机上操作的也就是kvmtest01上操作的
1、加入ttyS0的许可,同意root登陆
[root@localhost ~]# echo "ttyS0" >> /etc/securetty
[root@localhost ~]# more /etc/securetty
console
vc/1
vc/2
vc/3
vc/4
vc/5
vc/6
vc/7
vc/8
vc/9
vc/10
vc/11
tty1
tty2
tty3
tty4
tty5
tty6
tty7
tty8
tty9
tty10
tty11
ttyS0 #加入ttyS0
2、改动grub.conf配置文件
[root@localhost ~]# vim /etc/grub.conf
凝视加入console=ttyS0
# grub.conf generated by anaconda
#
# Note that you do not have to rerun grub after making changes to this file
# NOTICE: You have a /boot partition. This means that
# all kernel and initrd paths are relative to /boot/, eg.
# root (hd0,0)
# kernel /vmlinuz-version ro root=/dev/vda3
# initrd /initrd-[generic-]version.img
#boot=/dev/vda
default=0
timeout=5
splashimage=(hd0,0)/grub/splash.xpm.gz
hiddenmenu
title CentOS (2.6.32-358.el6.x86_64)
root (hd0,0)
kernel /vmlinuz-2.6.32-358.el6.x86_64 ro root=UUID=7b02e71c-06b4-4f5f-af83-dfe20e93fddf rd_NO_LUKS KEYBOARDTYPE=pc KEYTABLE=u
s rd_NO_MD crashkernel=auto LANG=zh_CN.UTF-8 rd_NO_LVM rd_NO_DM rhgb quiet console=ttyS0 #加入console=ttyS0
initrd /initramfs-2.6.32-358.el6.x86_64.img
3、改动/etc/inittab文件
[root@localhost ~]# echo "S0:12345:respawn:/sbin/agetty ttyS0 115200" >> /etc/inittab
[root@localhost ~]# more /etc/inittab
# inittab is only used by upstart for the default runlevel.
#
# ADDING OTHER CONFIGURATION HERE WILL HAVE NO EFFECT ON YOUR SYSTEM.
#
# System initialization is started by /etc/init/rcS.conf
#
# Individual runlevels are started by /etc/init/rc.conf
#
# Ctrl-Alt-Delete is handled by /etc/init/control-alt-delete.conf
#
# Terminal gettys are handled by /etc/init/tty.conf and /etc/init/serial.conf,
# with configuration in /etc/sysconfig/init.
#
# For information on how to write upstart event handlers, or how
# upstart works, see init(5), init(8), and initctl(8).
#
# Default runlevel. The runlevels used are:
# 0 - halt (Do NOT set initdefault to this)
# 1 - Single user mode
# 2 - Multiuser, without NFS (The same as 3, if you do not have networking)
# 3 - Full multiuser mode
# 4 - unused
# 5 - X11
# 6 - reboot (Do NOT set initdefault to this)
#
id:3:initdefault:
S0:12345:respawn:/sbin/agetty ttyS0 115200
5、重新启动kvm虚拟主机
[root@localhost ~]# reboot
6、在控制端kvmserver上操作
virsh console kvmtest01
kvm主机本机虚拟机直接克隆
(1)虚拟机kvmtest01的磁盘文件路径
root@kvm ~]# ll /kvm/kvmtest.img
-rw-r--r-- 1 root root 1115422720 12月 19 14:25 /kvm/kvmtest.img
(2)虚拟机的名称
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
1 kvmtest01 running
(3)開始克隆
[root@localhost ~]# virt-clone -o kvmtest01 -n kvmtest02 -f /kvm/kvmtest02.img
正在克隆 kvmtest.img 51% [===================== ] 6.9 MB/s | 544 MB 01:15 ETA
(4)克隆完毕
[root@kvm ~]# virt-clone -o kvmtest01 -n kvmtest02 -f /kvm/kvmtest02.img
ERROR 必须暂停或者关闭有要克隆设备的域。
[root@kvm ~]# virsh destroy kvmtest01
域 kvmtest01 被删除
[root@kvm ~]# virt-clone -o kvmtest01 -n kvmtest02 -f /kvm/kvmtest02.img
正在克隆 kvmtest.img | 1.0 GB 01:18
Clone 'kvmtest02' created successfully.
參数解释
-o ORIGINAL_GUEST, --original=ORIGINAL_GUEST
原始客体的名称;必须为关闭或者暂停状态
-n NEW_NAME, --name=NEW_NAME
新client的名称
-f NEW_DISKFILE, --file=NEW_DISKFILE
作为新client磁盘映像的新文件
(5)启动kvm虚拟机
Clone 'kvmtest02' created successfully.
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
- kvmtest01 关闭
- kvmtest02 关闭
[root@kvm ~]# virsh start kvmtest02
域 kvmtest02 已開始
[root@kvm ~]# virsh list --all
Id 名称 状态
----------------------------------------------------
2 kvmtest02 running
- kvmtest01 关闭
(6)kvm控制台登陆kvmtest02虚拟机
[root@kvm ~]# virsh console kvmtest02
连接到域 kvmtest02
Escape character is ^]
Welcome to CentOS
正在启动 udev:[确定]
设立主机名 localhost.localdomain: [确定]
检查文件系统
Checking all file systems.
[/sbin/fsck.ext4 (1) -- /] fsck.ext4 -a /dev/vda3
/dev/vda3: clean, 33318/118320 files, 231356/472832 blocks
[/sbin/fsck.ext4 (1) -- /boot] fsck.ext4 -a /dev/vda1
/dev/vda1: 正在修复日志
/dev/vda1: clean, 38/51200 files, 32302/204800 blocks
[确定]
将根文件系统又一次挂载成读写模式: [确定]
挂载本地文件系统: [确定]
启用/etc/fstab中的交换空间: [确定]
进入非互动式启动
ip6tables:应用防火墙规则:[确定]
iptables:应用防火墙规则:[确定]
弹出环回接口: [确定]
弹出界面 eth0: 设备 eth0 似乎不存在, 初始化操作将被延迟。
[失败]
正在启动 auditd:[确定]
启动系统日志记录器:[确定]
启动系统消息总线:[确定]
挂载其他文件系统: [确定]
又一次激发失败的 udev 事件[确定]
加入 udev 持久规则[确定]
正在启动 sshd:[确定]
启动 postfix: [确定]
正在启动 crond:[确定]
CentOS release 6.4 (Final)
Kernel 2.6.32-358.el6.x86_64 on an x86_64
localhost.localdomain login: root
Password:
Last login: Fri Dec 19 16:23:37 on ttyS0
[root@localhost ~]# ifconfig
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
2、通过拷贝配置文件与磁盘文件的虚拟机复制克隆(适用于异机的静态迁移)
sheng
注意:KVM克隆的时候须要注意几点
1、编辑配置文件的时候。尽量不要使用vim/vi,由于vim/vi改动的配置当时不会生效。所以要使用KVM特定的编辑命令 virsh edit kvmtest01
2、因为使用的虚拟机。克隆后的虚拟机是仅仅有lo回环地址,没有物理网卡。须要我们手动改动
[root@kvm ~]# ll /etc/udev/rules.d/70-persistent-net.rules
-rw-r--r-- 1 root root 420 12月 18 21:22 /etc/udev/rules.d/70-persistent-net.rules
linux kvm虚拟机使用的更多相关文章
- Oracl Linux KVM虚拟机备份
Oracle Linux KVM 作为Oracle Linux的一部分,基于KVM的Oracle Linux 服务器虚拟化解决方案在功能上得到了增强.用户可以利用Oracle Linux旧版本,将操 ...
- kvm虚拟化学习笔记(二)之linux kvm虚拟机安装
KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51 ...
- linux kvm虚拟机快速构建及磁盘类型
KVM命令管理 virsh命令:用来管理各虚拟机的接口命令查看/创建/停止/关闭...支持交互模式格式:virsh 控制指令 [虚拟机名称] [参数] [root@room1pc01 桌面]# vir ...
- Linux kvm虚拟机的基本操作命令
Linux 虚拟化kvm virsh常用命令篇 1.创建虚拟机 virsh define damo.xml //创建的虚拟机不是活动的 virsh create damo.xml //创建的虚拟机是活 ...
- linux kvm虚拟机安装
1.上传ISO文件,这里采用OEL5.8x64iso 2.开始安装OEL5.8 (1)raw格式磁盘 virt- --vcpus= --disk path=/data/test02.img,size= ...
- kvm虚拟化学习笔记(四)之kvm虚拟机日常管理与配置
KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51 ...
- kvm虚拟化学习笔记(三)之windows kvm虚拟机安装
KVM虚拟化学习笔记系列文章列表----------------------------------------kvm虚拟化学习笔记(一)之kvm虚拟化环境安装http://koumm.blog.51 ...
- 在 Linux 的 KVM虚拟机 上安装 Mac OS 系统的研究总结
在 Linux 的 KVM虚拟机 上安装 Mac OS 系统的研究总结 一.资料来源: 网上一共找到两个方法,一个是视频上的教程,一个是网页资料. 二.视频资料方法内容:1.install qe ...
- 关于Linux虚拟化技术KVM的科普 科普二(KVM虚拟机代码揭秘)
代码分析文章<KVM虚拟机代码揭秘--QEMU代码结构分析>.<KVM虚拟机代码揭秘--中断虚拟化>.<KVM虚拟机代码揭秘--设备IO虚拟化>.<KVM虚拟 ...
随机推荐
- Photoshop 学习中
快捷键: f8打开信息调板,注意虽然数字最高是255,但0也是数值之一,因此共256级. f7开启图层调板 f6调出调色板,按D还原为默认颜色 ctrl + 放大,ctrl - 缩小 f 可以切换显示 ...
- Scrum Meeting Alpha - 3
Scrum Meeting Alpha - 3 NewTeam 2017/10/27 地点:新主楼F座二楼 任务反馈 团队成员 完成任务 计划任务 安万贺 找到了几个开源项目,参考了API的包装方式, ...
- 通过PING命令中的TTL来判断对方操作系统
---恢复内容开始--- 通过PING命令中的TTL来判断对方操作系统简单来说,TTL全程Time to Live,意思就是生存周期.首先要说明ping命令是使用的网络层协议ICMP,所以TTL指的是 ...
- 一、VueJs 填坑日记之基础概念知识解释
概述在最开始听说vuejs这个词是在2016年,当时天真的认为自己是个后端开发工程师不需要学习太多的前端知识,不过紧接着在2017年在公司就用到了vuejs.对于初学者(尤其是干后端的初学者)来说,刚 ...
- 二:Redis快速入门及应用
Redis的使用难吗?不难,Redis用好容易吗?不容易.Redis的使用虽然不难,但与业务结合的应用场景特别多.特别紧,用好并不容易.我们希望通过一篇文章及Demo,即可轻松.快速入门并学会应用. ...
- python基础-------模块与包(三)正则表达式
re模块正则表达式 正则表达式常用符号: [ re模块使用方法]: match(string[, pos[, endpos]]) | re.match(pattern, string[, flags] ...
- maven学习之二
三 profile介绍 可以有多个地方定义profile.定义的地方不同,它的作用范围也不同. (1) 针对于特定项目的profile配置我们可以定义在该项目的pom.xml中. (2) ...
- python打包exe pyinstaller 简单使用
源由 最近公司让做了一个小工具,使用python写的,写完之后要求能放在其它电脑上运行,于是就开始寻找方案; 按网上的说法 py2exe已经很久没更新了,资料也不多: 于是就采用pyinstaller ...
- 宏WINAPI和几种调用约定
在VC SDK的WinDef.h中,宏WINAPI被定义为__stdcall,这是C语言中一种调用约定,常用的还有__cdecl和__fastcall.这些调用约定会对我们的代码产生什么样的影响?让我 ...
- 使用ztree展示树形菜单结构
官网:http://www.treejs.cn/v3/main.php#_zTreeInfo 一.功能简介 在权限系统中,实现给角色指定菜单权限的功能.主要包括以下几点: 读取全部菜单项,并以树形结构 ...