Spy*_*s K 2 powershell hyper-v windows-10 hyper-v-manager ubuntu-18.04
在 Windows 10 Pro PC (Win10ProPC#1) 中,我有一个 Ubuntu 18.04.02 LTS VM,是很久以前创建的。从那时起,我也一直在使用以下命令作为脚本的一部分。因此在Win10ProPC#1中运行以下命令
Get-vm -Name Ubuntu18.04.2LTS | Select -ExpandProperty NetworkAdapters
Run Code Online (Sandbox Code Playgroud)
退货
VMName IPAddresses
------ -----------
Ubuntu18.04.2LTS {172.17.199.244, ffff::ffff:ffff:ffff:ffff}
Run Code Online (Sandbox Code Playgroud)
我最近在另一台具有相似规格的 PC 上重新创建了相同的环境 (Win10ProPC#2)。有一个小变化,Ubuntu VM 现在是 Ubuntu18.04.3LTS。但是在 Win10ProPC#2 中运行以下命令
Get-vm -Name Ubuntu18.04.3LTS | Select -ExpandProperty NetworkAdapters
Run Code Online (Sandbox Code Playgroud)
退货
VMName IPAddresses
------ -----------
Ubuntu18.04.3LTS {}
Run Code Online (Sandbox Code Playgroud)
在这两种情况下,VM(来宾)都可以访问互联网,我可以从来宾操作系统内部找到 IP 地址。(虽然这确认了有一个 IP,但这不是我想要的。我需要从上面的命令获取 IP。)
问题是 Win10ProPC#2 中的 NetworkAdapters 中没有报告 IP 地址,而 Win10ProPC#1 中有一些。我需要使 Win10ProPC#2 能够获取虚拟机的 IP 地址。
两台电脑均使用最新的Windows 10 Pro版本(64位)。此外,两个虚拟机都有动态 IP 并使用“默认交换机”网络配置。在这两种情况下,脚本均由 Powershell“以管理员身份”运行。
我担心我错过了某个设置或配置,但我已经仔细检查了 HyperV 的所有设置并且都是相同的。有什么想法吗?
要充分利用 Hyper-V,请安装适当的 linux-tools 和 linux-cloud-tools 软件包来安装与 Ubuntu 虚拟机一起使用的工具和守护程序。
sudo apt-get update
sudo apt-get install linux-image-virtual linux-tools-virtual linux-cloud-tools-virtual
sudo reboot now
Run Code Online (Sandbox Code Playgroud)
负责hv-kvp-daemon将 IP 信息从来宾共享到虚拟机管理程序,因此请确保它正在运行
sudo systemctl status hv-kvp-daemon
Run Code Online (Sandbox Code Playgroud)
本文提供有关检查 的状态的信息hv-kvp-daemon。尝试确定是否hv-kvp-daemon正在运行。有可能已linux-image-virtual linux-tools-virtual linux-cloud-tools-virtual安装但服务未激活。例如,当尝试启动时,hv-kvp-daemon我得到了以下响应。
ubuntu@LinuxVM:~$ sudo hv_kvp_daemon
WARNING: hv_kvp_daemon not found for kernel 5.0.0-36
You may need to install the following packages for this specific kernel:
linux-tools-5.0.0-36-generic
linux-cloud-tools-5.0.0-36-generic
You may also want to install one of the following packages to keep up to date:
linux-tools-generic
linux-cloud-tools-generic
Run Code Online (Sandbox Code Playgroud)
安装正确的版本解决了我的问题。
$ sudo apt-get install linux-tools-5.0.0-36-generic linux-cloud-tools-5.0.0-36-generic linux-tools-generic linux-cloud-tools-generic
Run Code Online (Sandbox Code Playgroud)
之后可以按hv_kvp_daemon如下方式启动。
sudo hv_kvp_daemon
Run Code Online (Sandbox Code Playgroud)
之后就可以从 powershell 获取 IP。
| 归档时间: |
|
| 查看次数: |
2805 次 |
| 最近记录: |