だいたい久しぶりに起動したときにはエラーになる。肝心なときにも
私だけ?
毎回微妙に症状が違って困るのでできるだけメモしていきたい。
その1:外付けHDD(仮想マシンのデータ保存先に指定している)
選択した仮想マシンの起動中にエラーが発生しました。
で仮想ディスクがおかしい的なメッセージだった。
#エラーメッセージのコピペ忘れた。
外付けHDDを抜き差しで再接続後、Hyper-vマネージャを再起動したらOK。
その2:不明。ネットワーク関連
アラートメッセージ
[Window Title]
Hyper-V マネージャー
[Main Instruction]
選択した仮想マシンの起動中にエラーが発生しました。
[Content]
'仮想マシンA' は起動できませんでした。
Emulated Ethernet Port (インスタンス ID 718032DA-6EFB-4EF4-8152-9A2FBDA945BF): 電源をオンにできませんでした。エラー '無効なアドレスにアクセスしようとしています。'。
[Expanded Information]
'仮想マシンA' は起動できませんでした。(仮想マシン ID D8D5E597-90AE-4EAD-9A4E-03BB6D778873)
'仮想マシンA' Emulated Ethernet Port (インスタンス ID 718032DA-6EFB-4EF4-8152-9A2FBDA945BF): 電源をオンにできませんでした。エラー: '無効なアドレスにアクセスしようとしています。' (0x800701E7)。(仮想マシン ID D8D5E597-90AE-4EAD-9A4E-03BB6D778873)
[V] 詳細の表示(D) [閉じる(C)]
ネットワークアダプターをあれこれ切り替えてもダメ。
アダプタを削除して、ハードウェアの追加
から再度、元の仮想スイッチを指定したらOK。
ゲストOS起動後、固定IPだったので新しく作ったネットワークインターフェースに対して再度設定が必要。
Ubuntuだったので、下記手順で再設定。
ネットワークインターフェースの確認
$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host noprefixroute
valid_lft forever preferred_lft forever
2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
link/ether 00:15:5d:00:6d:03 brd ff:ff:ff:ff:ff:ff
inet 172.18.167.219/20 brd 172.18.175.255 scope global eth0
valid_lft forever preferred_lft forever
inet6 fe80::215:5dff:fe00:6d03/64 scope link
valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
link/ether 02:42:60:15:ff:63 brd ff:ff:ff:ff:ff:ff
inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
valid_lft forever preferred_lft forever
4: br-f98cbccb55eb: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default
link/ether 02:42:63:7a:ea:d6 brd ff:ff:ff:ff:ff:ff
inet 172.19.0.1/16 brd 172.19.255.255 scope global br-f98cbccb55eb
valid_lft forever preferred_lft forever
前回のネットワークインターフェースの名前はenp1s0だった。今回はeth0。
毎回思うけど、eth0がこのゲストで設定するネットワークインターフェースだ!ってのはどうやって見分けるんだろう。#そして今回も調べていない。。。
/etc/netplan 配下のファイル(今回は99-enp1s0-fix.yamlだった)を書き換え
# sudo bash
$ cd /etc/netplan/
$ cat 99-enp1s0-fix.yaml
network:
version: 2
renderer: networkd
ethernets:
enp1s0:
dhcp4: false
dhcp6: false
addresses: [172.18.167.219/20]
routes:
- to: default
via: 172.18.160.1
nameservers:
addresses: [8.8.8.8, 8.8.4.4]
$ cp 99-enp1s0-fix.yaml 99-eth0.yaml
$ sed -i -e 's/enp1s0/eth0/' 99-eth0.yaml
$ mv 99-enp1s0-fix.yaml 99-enp1s0-fix.yaml.org
$ netplan apply