#手册 VirtualBox官方参考手册
#新建
##创建虚拟机
创建一个虚拟机,名字是ubuntu1,装的操作系统为Ubuntu64位
# vboxmanage createvm --name ubuntu1 --ostype Ubuntu_64 --register
--register
意思是注册到vms里,如果没有register,以后vboxmanage list vms
是看不到ubuntu1的。
命令完成后,可以通过命令vboxmanage showvminfo ubuntu1
来查看新建的虚拟机信息。
默认设置为:磁盘控制器为空,共享粘贴板为禁用,拖放禁用,内存128m,处理器1核,运行峰值100%
##添加磁盘控制器
磁盘是挂在磁盘控制器下的,除磁盘外,光盘等也是挂磁盘控制器下,所以现在要添加一个磁盘控制器到新建的虚拟机上
// 磁盘控制器有5种,常用的2种,一个是ide,一个sata。
// 添加sata磁盘控制器,名字为SATAController(名字随便取)
# vboxmanage storagectl ubuntu1 --name "SATAController" --add sata --hostiocache on --bootable on
// 或添加ide磁盘控制器,名字为IDE Controller(名字随便取)
# vboxmanage storagectl ubuntu1 --name "IDE Controller" --add ide --controller PIIX4 --hostiocache on --bootable on
##添加磁盘并将磁盘挂在磁盘控制器上 ###创建一个虚拟磁盘
创建一个虚拟磁盘,在当前目录,如果加上--variant fixed,表示固定大小,否则为动态大小
// 虚拟磁盘文件名为ubuntu1f.vid,大小为动态的10G
# vboxmanage createhd --filename ubuntu1f.vdi --size 10000
// 命令运行完后会在当前目录出现一个256k的ubuntu1f.vid文件,该文件会在后续安装系统时膨胀
###虚拟硬盘放入磁盘控制器
将虚拟硬盘放入vms为ubuntu1的磁盘控制器,之前我们已经添加了2个磁盘控制器,SATAController和"IDE Controller"
# vboxmanage storageattach ubuntu1 --storagectl "SATAController" --port 0 --device 0 --type hdd --medium /home/wayne/VirtualBox\ VMs/ubuntu1/ubuntu1f.vdi
继续挂一张光盘
# vboxmanage storageattach ubuntu1 --storagectl "SATAController" --port 1 --device 0 --type dvddrive --medium /home/wayne/ubuntu-14.04.3-server-amd64.iso
##网络配置
将pp1的网卡1,改成桥接模式
vboxmanage modifyvm pp1 --nic1 bridged
vboxmanage modifyvm pp1 --bridgeadapter1 eth1
##调整内存大小
将内存调整为512mb
# VBoxManage modifyvm ubuntu1 --memory "512"
##调整cpu数量和运行峰值
运行峰值如为100%表示禁用运行峰值
设置2核,运行峰值调整为80%
# VBoxManage modifyvm ubuntu1 --cpus 2 --cpuexecutioncap 80
打开远程 vboxmanage modifyvm ubuntu1 --vrde on
启动 vboxmanage startvm ubuntu1 --type headless
##只有1个vdi的情况下制作虚拟机
// 创建一个名字为pp1的windowsxp的虚拟机
vboxmanage createvm --name pp1 --ostype WindowsXP --register
// 从已有的has.vdi克隆一个新的pp1.vdi
vboxmanage clonemedium disk has.vdi pp1.vdi
// 将pp1.vdi放到前面创建的项目中
cd ~
mv pp1.vdi VirtualBox\ VMs/pp1/
// 对虚拟机pp1创建一个ide控制器,用来挂pp1.vdi
vboxmanage storagectl pp1 --name "IDE Controller" --add ide --controller PIIX4 --hostiocache on --bootable on
// 将pp1挂到ide控制器下
vboxmanage storageattach pp1 --storagectl "IDE Controller" --port 0 --device 0 --type hdd --medium /home/wayne/VirtualBox\ VMs/pp1/pp1.vdi
// 内存512m
VBoxManage modifyvm pp1 --memory "512"
// 单核cpu,80%
VBoxManage modifyvm pp1 --cpus 1 --cpuexecutioncap 80
// 开远程桌面,端口15001
vboxmanage modifyvm pp1 --vrde on --vrdeport 15001
// 开机
vboxmanage startvm pp1 --type headless
##有1个虚拟机的情况下克隆虚拟机
// 将pp1的所有,克隆给pp2,且不要忘记注册
vboxmanage clonevm pp1 --name pp2 --register
// 克隆后,远程端口也被克隆,为防止冲突,改一下,开远程桌面,端口15002
vboxmanage modifyvm pp1 --vrde on --vrdeport 15002
// 克隆后记得去pp2里将系统主机名改掉,以防和pp1主机名冲突
#维护 ##查看正在虚拟机
// 查看所有建立的虚拟机
vboxmanage list vms
// 查看正在运行的虚拟机
vboxmanage list runningvms
##关机
暴力关机
vboxmanage controlvm pp2 poweroff
按电源按钮软关机
vboxmanage controlvm pp2 acpipowerbutton
#批量维护
##开机
对cli1 cli2 cli3 这3台进行开机操作
vboxmanage startvm cli{1,2,3} --type headless
##关机
对cli1 cli2 cli3 这3台进行关机机操作
for((a=1;a<=3;a++));do vboxmanage controlvm cli${a} acpipowerbutton; done;
or
for a in {1..3};do vboxmanage controlvm cli${a} acpipowerbutton; done;
or
for a in {cli1,cli2,cli3,othername,qita};do vboxmanage controlvm ${a} acpipowerbutton; done;
查看内存
for((a=1;a<=3;a++));do vboxmanage showvminfo cli${a} | grep "Memory"; done;