# TL;DR
いろいろあってWindows機のHyper-Vを燃やした(消した)が,WSL-likeに雑に捨てれるLinux環境が欲しかった
デフォからいろいろと手を加えたのでメモ
## なぜHyper-Vを捨てた?
ホストのWindowsくんも一応Hyper-V上で動くようになるので,若干だけどもパフォーマンスロスがある.
諸々のエミュレータとかよく使うのでHypervisor Platform経由にしたくなった.遅いので.
別にHyper-Vでもいいんだけど,グラフィックス周りがうんちなのが気に食わない.
# VBoxバックエンドにしたときの構成
- SYSTEMユーザーでVBoxを動かしてる.なので通常ユーザーとかAdministratorからはインスタンスの実体は見えない.
- ネットワークアダプタはデフォルトでNATになる
- ホストからはアクセスできないよん
# VBox CLIやGUIから操作したい
[PsExec](https://learn.microsoft.com/ja-jp/sysinternals/downloads/psexec)を使ってSYSTEMユーザーで実行すればOK.リンク先から落としてPathを通しておく.
VirtualBoxのインストールディレクトリもシステムのPathに通しておく.
```powershell
# CLI
psexec64 -s vboxmanage
# GUI
psexec64 -s -i virtualbox
```
# Bridge Networkにする
デフォルトのNATだと,構成によってはホストからもSSH等が通らない (Windowsのネットワーク周りをよく知らないのでなんでかは不明).
Bridgeでローカルネットワークに出してしまえば多少使い勝手は良くなる.
## VirtualBox上でのNIC名称を調べる
```powershell
vboxmanage list bridgedifs
```
全NICの情報が出てくる.BridgeさせたいNICの`Name`をメモ.
## Multipassインスタンスを止める
```powershell
multipass stop <instance>
```
## インスタンスにBridgeインターフェースを追加
管理者権限で実行しているShellにて
```powershell
psexec64 -s vboxmanage modifyvm <instance> --nic2 bridged --bridge-adapter2 <interface name>
```
## インスタンス起動 & netplan
```bash
multipass shell <instance>
# nic名確認
ip a
# netplan config
# enp0s8は適当なnic名に
sudo vim /etc/netplan/60-bridge.yaml
```
```yaml
# 60-bridge.yaml
network:
ethernets:
enp0s8:
dhcp4: true
dhcp4-overrides:
route-metric: 200
version: 2
```
# apply
```shell
sudo netplan apply
```