23

我对 vagrant 比较陌生,但到目前为止我肯定喜欢它。

我经常遇到的一个小问题是,当我的主机网络暂时中断时,它会影响我与我的 vagrant guest vm 的连接。

当我的主机网络再次恢复时,我必须 - 在我的主机上 - 运行vagrant halt,然后vagrant up才能“重置”我的访客 vagrant vm 的网络,以便它可以再次连接到互联网。

是否有更“优雅”的方式通过我的主机网络获取我的虚拟机的互联网连接以检测互联网网络连接是否已备份?

4

4 回答 4

26

是的,最简单的解决方案是重新启动 VM 本身内的网络子系统。不应中断 SSH 连接。在 Ubuntu 上,执行以下操作:

sudo /etc/init.d/networking restart
于 2012-04-30T18:42:51.440 回答
3

关于 Mitchell 的回答,对于我的 Vagrant 版本 1.5.2,命令略有不同:

须藤/etc/init.d/网络重启

而不是使用“网络”。我知道没什么大不了的,只是想说。

与 Vagrant Mitchell 的伟大合作!

于 2014-06-13T20:28:58.090 回答
2

这是我所做的:

HOST=VM IP 地址 PRIVATE_KEY_PATH= 私钥路径

ssh vagrant@$HOST -i $PRIVATE_KEY_PATH登录到虚拟机

然后,sudo /etc/init.d/networking restart

于 2013-12-04T10:48:04.723 回答
0

其他答案中列出的命令的更新版本(2018 年)*:

对于 Ubuntu 16.04.* LTS(Xenial Xerus):

sudo systemctl restart networking

# Check the status - there is no better way with systemd for now:
# https://github.com/systemd/systemd/issues/1287
sudo systemctl status networking

对于 CentOS 7.5(networkvsnetworking是非常不幸的区别,但我们在这里):

sudo systemctl restart network

# Check the status - there is no better way with systemd for now:
# https://github.com/systemd/systemd/issues/1287
sudo systemctl status network

*在现代发行版中,答案中列出的脚本只是systemd's 的包装systemctl

于 2018-08-02T06:26:54.337 回答