vbox虚拟机环境快速配置
vbox虚拟机环境快速配置,通过命令行调用vbox.虚拟机网络设置.Vboxmanage命令的使用
设置双网卡
为了便于调试,无界面访问,一个对外访问,一个私网访问.
Vbox网络配置:
Dhcp配置:
虚拟机配置:
- 外网接口:
- 内网口
绑定静态IP:
网口1:'ifcfg-enp0s3'
网口2:'ifcfg-enp0s8'vi /etc/sysconfig/network-scripts/ifcfg-enp0s8
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=enp0s8
UUID=9f072511-f3bb-37c7-8e1e-79181d93d050
DEVICE=enp0s8
ONBOOT=yes
IPADDR=192.168.56.101
NETMASK=255.255.255.0
GATEWAY=192.168.56.1
重启网卡:service network restart
测试可以访问:
ssh root@192.168.56.101
修改hostnamehostnamectl set-hostname serv-101
配置免登录
生成sshKey复制到对应的服务器上.
ssh-keygen -t rsa
ssh-copy-id -i ~/.ssh/id_rsa.pub root@192.168.56.101
共享盘
更新系统安装依赖
yum update kernel -y
yum install kernel-headers kernel-devel gcc make -y
init 6
挂载光盘
mkdir /mnt/cdrom
sudo mount -t auto /dev/cdrom /mnt/cdrom/
cd /mnt/cdrom
sudo ./VBoxLinuxAdditions.run
挂载共享盘:
先选择路径,
mount -t vboxsf data /data
宿主机配置快捷访问
.bashrc 或者 .zshrc
# 开机
alias vbox-start='vbox() { Vboxmanage startvm "$1" --type headless; };vbox'
# 关机
alias vbox-stop='vbox() { Vboxmanage controlvm "$1" savestate; };vbox'
//savestate 保持状态;poweroff 关机
# 关掉所有
alias vbox-all-stop="vbox() { VBoxManage list runningvms | awk '{print \$1}' | xargs -I '%' Vboxmanage controlvm '%' savestate; };vbox"
# 删除虚机机
alias vbox-stop='vbox() { VBoxManage unregistervm --delete "$1" };vbox'
# 远程运行命令
alias vbox-exec='exec() {VBoxManage --nologo guestcontrol "$1" --username root --password 123456 run --wait-stdout -- /bin/bash -c "$2"};exec'
# 初始化主机
alias vbox-init='fun() {vbox-exec "serv-$1" "/init.sh $1"};fun'
# 克隆新主机
alias vbox-clone='clone() { VBoxManage clonevm "centos7-base" --name="serv-$1" --register && vbox-start "serv-$1" && sleep 10 && vbox-exec "serv-$1" "/init.sh $1"};clone'
远程执行命令
有时IP地址冲突,我们无法ssh进入到虚拟机时,可以用vbox远程管理命令进行修改
vbox-exec是上面的别名: VBoxManage --nologo guestcontrol "$1" --username root --password 123456 run --wait-stdout -- /bin/bash -c "$2"
# 修改IP地址
vbox-exec serv-102 "sed -ri 's/(IPADDR=).*/\1\"192.168.56.102\"/' /etc/sysconfig/network-scripts/ifcfg-enp0s8"
vbox-exec serv-102 "service network restart"
# 设置hostname
vbox-exec serv-102 "hostnamectl set-hostname serv-102"
# 查看IP地址
vbox-exec serv-102 "ip address"
原作者:阿金
本文地址:https://hi-arkin.com/archives/vbox-dev.html