开始之前,首先需要使用 VirtualBox 最小化安装 CentOS 7.0。
系统设置
使用 root 账号登录,进行系统设置。
安装组件
安装系统必须的组件。
yum install gcc bzip2 kernel-devel wget
修改主机名称
设置一个便于识别的主机名称,便于以后使用 ssh 登录时方便识别。
vi /etc/hostname
SSH 设置
取消 DNS 解析,使 ssh 登录更快。编辑 /etc/ssh/sshd_config 文件,更改以下配置项:
UseDNS no
安装 VBoxGuestAdditions
安装了 VBoxGuestAdditions 后才可以使用共享目录的功能。
注意:此时需要重启一下系统,否则可能无法继续安装。
点击 VirtualBox 运行界面的 Devices 菜单,选择 Insert Guest Additions CD Image。
挂载光盘并安装 VBoxGuestAdditions
mkdir /media/cdrom
mount /dev/cdrom /media/cdrom
/media/cdrom/VBoxLinuxAdditions.run
umount /media/cdrom
rm -rf /media/cdrom
用户配置
设置 root 用户密码为 vagrant。
创建 vagrant 用户,密码与用户名相同。
配置 vagrant 用户执行 sudo 命令时不需要输入密码。并且可以后台执行指令。 运行 visudo 命令。然后添加如下配置:
vagrant ALL=(ALL) NOPASSWD: ALL
Defaults requiretty
设置 vagrant 用户证书,使其可以无密码登录系统
cd /home/vagrant
mkdir .ssh
wget --no-check-certificate https://raw.github.com/mitchellh/vagrant/master/keys/vagrant.pub -O /home/vagrant/.ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
chown -R vagrant:vagrant .ssh
清理系统
清理临时文件以减小制作出来的 Box 文件体积。
yum clean all
rm -rf /tmp/*
rm -f /var/log/wtmp /var/log/btmp
history -c
然后关闭虚拟系统。
打包
回到物理机终端,使用下面的命令打包输出 box.
vagrant package --base [virtualbox name] --output [box name].box
创建一个 windows 的虚拟环境
开始之前,需要先准备一个 windows 的安装文件,如 win2003.iso。
使用命令行创建 VirtualBox 虚拟机
创建一个名为 win2003 的虚拟机:
vboxmanage createvm --name win2003 --register
设置虚拟机
# 设置系统类型
vboxmanage modifyvm win2003 --ostype Windows2003
# 开启电源管理
vboxmanage modifyvm win2003 --acpi on
# 设置系统内存
vboxmanage modifyvm win2003 --memory 512
# 添加网卡,网络模式为 NAT
vboxmanage modifyvm win2003 --nic1 nat
创建一个的虚拟硬盘,容量为 5G
vboxmanage createhd --filename win2003.vdi --size 5000
绑定虚拟硬盘
# 创建虚拟机的硬盘控制器
vboxmanage storagectl win2003 --name HDD --add ide --bootable on
# 绑定创建的虚拟硬盘
vboxmanage storageattach win2003 --storagectl HDD --port 0 --device 0 --type hdd --medium win2003.vdi
添加光驱并绑定系统安装文件
vboxmanage storageattach win2003 --storagectl HDD --port 0 --device 1 --type dvddrive --medium win2003.iso
启动并安装系统
vboxheadless -s win2003
在桌面环境的电脑上使用远程桌面软件,连接服务器的 3389 端口就可以看到虚拟机的画面,并进行安装操作了。
使用 vboxheadless 命令启动的虚拟机是会话模式的,而且默认启用了远程桌面功能 VRDP。适合首次运行虚拟机安装系统。安装完系统后,想要以后台服务的方式运行,应当使用 vboxmanage startvm 命令:
vboxmanage startvm win2003 --type headless
安装增强包
VirtualBox 默认安装好系统后,使用起来不是很顺畅。特别是鼠标操作时,迟滞感十分严重。安装增强包可以明显改善操作感。首先下载 VirtualBox Guest Additions 增强包: VBoxGuestAdditions_4.3.20.iso。然后使用下面的命令挂载增强包到光驱:
vboxmanage storageattach win2003 --storagectl HDD --port 0 --device 1 --type dvddrive --medium VBoxGuestAdditions_4.3.20.iso
然后启动系统,双击光驱盘符,执行安装程序后重启完成。
添加共享目录
共享目录方便虚拟机和主机之间交换文件,使用下面的命令进行共享目录的添加和删除:
添加共享目录:
vboxmanage sharedfolder add win2003 --name share-name> --hostpath /host/path/folder/ --automount
删除共享目录:
vboxmanage sharedfolder remove win2003 --name share-name>
其它常用技巧
1.添加 NAT 网络模式下的端口转发
# 添加远程桌面的转发
vboxmanage modifyvm vmname> --natpf1 "remote desktop,tcp,,33089,,3389"
vboxmanage modifyvm vmname> --natpf2 "remote desktop,udp,,33089,,3389"
2.关闭虚拟机
vboxmanage controlvm vmname> poweroff
3.开机自动启动虚拟机
设置自动开机的数据库路径:
vboxmanage setproperty autostartdbpath /etc/vbox
添加要开机启动的虚拟机:
vboxmanage modifyvm vmname> --autostart-enabled on --autostop-type acpishutdown
启动管理服务:
service vboxautostart-service restart