首先
如果不是特殊要求,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網卡