Windows平台下Multipass使用VirtualBox驱动踩坑指南
首先
如果不是特殊要求,windows下建议还是直接用默认的hyperV会简单很多
至于windows如何开启hyperV搜下都有,这里便不再赘述
如果懒得折腾,建议还是直接安装Ubuntu服务端
以下内容基于官方文档,建议以最新的官方文档为准
安装
进入multipass官网选择windows平台下载
安装的过程中有可以选择驱动的选项,默认是hyperV,选择VBox
默认添加环境变量
剩下的就是修改安装路径等此处略过
启动后cmd里输入multipass version
测试是否安装成功
设置
安装成功后先不急着起实例
官方文档
使用管理员权限打开cmd修改multipass驱动
multipass set local.driver=virtualbox
测试是否修改成功
multipass get local.driver
起个实例试试,开始的时候可能会慢一点,得等一会
multipass launch -n test1
具体的内存cpu等设置见文档
再多验证一下
multipass list
这时候你会发现实例的IPv4为空,但这并不影响访问外网,实例默认会有NAT网卡。这里的IPv4指的是实例和宿主机的内网ip。
如果不需要配置内网ip,看到这里就可以结束了。
内网IP设置
首先确保Path配置了vbox的环境变量
下载PSTools
查看VBox已有的hostonly接口名称
PsExec.exe -s $env:VBOX_MSI_INSTALL_PATH\VBoxManage.exe list hostonlyifs
一般会有一个默认的名为VirtualBox Host-Only Ethernet Adapter的接口,直接使用这个就行,如果没有的话也可以自己新建一个
VBoxManage hostonlyif create
详见文档
添加hostonly网卡,用到的接口名字必须对应
PsExec.exe -s $env:VBOX_MSI_INSTALL_PATH\VBoxManage.exe modifyvm testUbuntu --nic2 hostonly --hostonlyadapter2 'VirtualBox Host-Only Ethernet Adapter'
--nic2
这个2指的是虚拟机的第2张网卡,--hostonlyadapter2
中的2也是一样
添加后使用showvminfo 查看虚拟机信息
\PsExec.exe -s $env:VBOX_MSI_INSTALL_PATH\VBoxManage.exe showvminfo 虚拟机名字 |findstr NIC
直接看网卡状态信息
可以看到有两张网卡,NIC1也就是默认的NAT网卡,NIC2是刚才添加的hostonly网卡,interface也就是接口名字必须和前面查到hostonly接口名字一致!
其他网卡都为未启用的状态
*VBox GUI 界面配置hostonly网卡见附4
接着进到实例当中修改网络配置
multipass shell test1
先用ip link
或其他查网卡的命令查一下
注意enp038是刚才添加的网卡
Ubuntu在18.04后的网络配置方法为修改Networkplan的YAML文件
在/etc/netplan/*.yaml 先备份后再对文件进行修改
查下宿主机的vbox网卡
再对实例的YAML文件进行添加
关闭dhcp4
测试下外网
测试内网
这里是宿主机ping实例,如果从实例ping宿主机因为防火墙可能ping不通
注意:不要把宿主机的网关加上,否则只能访问内网!
加上192.168.56.1网关后发现内网可以正常外网ping不通
apt-get update时会报错"Temporary failure resolving"
找了一圈有说是dns没加的,尝试在/etc/resolv.conf中添加8.8.8.8和114.114.114.114 加了之后没用
最后查看了下路由sudo -n route
发现0.0.0.0指向两个不同的网关
删除/etc/netplan/*.yaml文件中添加的宿主机的网关后重新应用配置文件sudo netplan try
sudo netplan apply
后再次查看路由正常,能ping通内外网
具体的Ubuntu网络配置请自行搜索,这里就不再详细描述
附加
1
如果在实例中开启了ufw防火墙,请务必把22端口优先添加的允许规则中,multipass实例默认使用ssh和宿主机通信
2
multipass info
命令下展示的实例信息可能不全,如果要看完整信息建议到vbox中查看
3
默认情况下multipass的数据文件目录在
C:\Windows\System32\config\systemprofile\AppData\Roaming\multipassd
可以通过创建mklink软连接的形式搬家到其他目录下,mklink的使用方法推荐下这篇win10下使用mklink命令给C盘软件搬家
4.前台配置VBox网卡
管理员下执行
& $env:USERPROFILE\Downloads\PSTools\PsExec.exe -s -i $env:VBOX_MSI_INSTALL_PATH\VirtualBox.exe
此时会将运行的实例通过virtualbox图形页面展示出来
建议先将实例停止在进行网络配置
multipass stop test1
点击设置-网络,此时可以看到默认的NAT网卡,点击网卡2,点击启用并添加hostonly网卡
欢迎交流探讨!
本文来自博客园,作者:Splus,转载请注明原文链接:https://www.cnblogs.com/s-plus/p/15890597.html
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」