需求来源
本地virtualbox 上有四台互联虚拟机,由于物理机是台笔记本,网络可能会发生变化
而且,由于某些原因,虚拟机需要设置成静态ip
所以,当网络发生变化时,我需要适应性的修改虚拟机的网卡中的ip(IPADDR)和路由(GATEWAY)的配置
鉴于手动修改太过于繁琐,所以想实现本地物理机脚本控制虚拟机,主要面临情况以及需要实现的功能如下:
(1)虚拟机可能已经无法联网,无法被ssh 登陆
(2)需要修改的配置可能不止一两个,很多配置 需要执行 shell 脚本 或者修改 配置 文件
(3)实现从物理机控制虚拟机,不管是通过VBoxManage 还是 python 或者是 golang 控制等
(4)主要实现,包括关机状态下自动开启虚拟机,执行shell 脚本或者bash 命令(脚本或者命令是在虚拟机中执行),最关键的是一定要能执行 bash 命令
物理环境
物理机:MAC OS X
virtualbox:版本 5.2.16
虚拟机:centos 7(四台全是)
安装准备
VBoxGuestAdditions镜像:下载地址 http://download.virtualbox.org/virtualbox/5.2.16/