一、自动创建虚拟机脚本:
#!/bin/bash
echo "virtual machine is creating ..."
virt-install \
--cdrom /home/kiosk/iso/rhel-server-7.0-x86_64-dvd.iso \
--vcpus 1 \
--memory 1000 \
--disk /var/lib/libvirt/images/$1.qcow2,size=10,bus=virtio \
--network source=br0,model=virtio \
--name $1 &>/dev/null &
1.下面简要说明每行的含义:
第二行代表安装时在shell中输出 “virtual machine is creating ...” 。
第三行表示镜像文件在系统中的存放路径。
第四行表示给cpu分配的核心数。
第五行表示给内存分配的大小。
第六行表示硬盘采用虚拟化的方式,大小为10.0GB,模拟的硬盘文件以.qcow2形式的文件放在目录 /var/lib/libvirt/images/ 下面。
第七行代表网卡采用虚拟化的方式,虚拟化真机的网卡br0。
第八行代表虚拟机的名字为变量$1,
2.编写玩脚本后,给该文件加上执行权限,chmod +x virtual_creat.sh; 接着以直接路径运行该脚本,并在命令末尾加上变量的值; 运行完后结果如下图:
二、自动化创建快照脚本:
#!/bin/bash
echo "virtual machine's snopshot is creating ..."
qemu-img create -f qcow2 \
-b /var/lib/libvirt/images/$1.img \
/var/lib/libvirt/images/$2.qcow2
virt-install \
--vcpus 1 \
--memory 1024 \
--disk /var/lib/libvirt/images/$2.qcow2,bus=virtio \
--network source=br0,model=virtio \
--name $2 \
--import
##1.脚本分为两部分:
(1)创建$1虚拟机的快照$2,占据代码块的二、三、四、五行,其实就是下方的一个命令,中间用换行符隔开了而已:
qemu-img create -f qcow2 -b /var/lib/libvirt/images/$1.img /var/lib/libvirt/images/$2.qcow2
参数-f 代表 指定的文件类型,-b参数意思是 将名为$1.img的虚拟机快照为名为$2.qcow2的虚拟机,这里一定要准确的输入源虚拟机的模拟硬盘文件的文件名!