脚本自动安装虚拟机
1.vim /mnt/.sh
文件内容如下:
#!/bin/bash #翻译器,幻数
virt-install \ #命令 换行符\
--name $1 \ #虚拟机名字,$1 传参变量
--cdrom /iso/rhel-server-7.0-x86_64-dvd.iso \
#安装源选择方式及路径,用ls /home/kiosk/Desktop/r 用Tab补齐文件名并复制进来
--ram 1024 \ #内存,用virt-manager打开一个虚拟机查看它的ram,cpu,硬盘路径,虚拟机接口资源,运行模式,进行编写
--cpus 1 \
--disk /var/lib/libvirt/images/$1.qcow2,size=9,bus=virtio \
#路径 硬盘名字 大小 bus是指定硬盘数据输入输出类型
--network source=br0,model=virtio & #虚拟机资源接口,运行模式,加 & 打入后台运行,不占用终端
退出保存
chmod +x /mnt/.sh #给文件可执行权限
/mnt/.sh #执行文件,会执行文件里面的命令,如果内容里面写的$1则给文件后面加内容
$1脚本后面所跟的内容是什么$1就是什么,传参变量,将脚本外面内的传到内部
操作命令如下图,虚拟机完成前部分自动安装,后半部分祥见虚拟机图形界面安装
2.虚拟机快照
用脚本生成快照
cd /mnt/
vim vm_sanpshoot.sh
#!/bin/bash
qemu-img create -f qcow2 -b \
/var/lib/libvirt/images/$1.qcow2 \
/var/lib/libvirt/images/$2.qcow2
virt-install \
--name $2 \
--cpus 1\
--ram 1024 \
--disk /var/lib/libvirt/images/$2.qcow2,bus=virtio \
--network source=br0,model=virtio \
--import &
:wq #退出保存
/mnt/vm_sanpshoot.sh 母本名 快照名
列出虚拟机及其状态,其中tutu是butterfly的快照
实验1:在一台虚拟机上拷贝虚拟机硬盘及硬盘信息文件
cd /etc/libvirt/qemu/
ls
mv *.xml /mnt/
cd /var/lib/libvirt/images/
ls
mv .qcow2 /mnt/
virsh create .xml
virsh define .xml
实验2:在两台虚拟机时
scp /mnt/rhe* root@172.25.254.67:/mnt/ #上传虚拟机硬盘文件及硬盘信息文件到67主机的mnt目录
virsh create .xml文件 #一次性打开,关闭后不存在
virsh define .xml文件 #永久建立虚拟机
virsh undefine 虚拟机名 #删除虚拟机