我想知道在 Debian Jessie 中重新启动网络服务的正确方法是什么。我知道我可以使用:
service networking restart
或者
/etc/init.d/networking restart
无论如何,这给我的 ssh 连接带来了问题,或者
invoke-rc.d networking restart
和其他两种方法系统控制与启动/停止。
但哪种方法才是正确的呢?
答案1
我会使用该service
命令,因为它在不同的发行版中更加一致。因此,对于您提到的命令,我会选择的变体是:
service networking restart
而且我肯定会在screen
会话中运行它,或者通过其他方式确保它不会在您与键入它的 shell 失去连接的情况下无法完成。(我曾尝试通过登录然后ssh
重新启动网络来失去与机器的连接,结果在网络关闭时 ssh 连接终止并发送 HUPservice
以使其不会再次启动网络。)
过去,有些系统只是service
对脚本进行简单的包装,/etc/init.d
前两个命令会执行完全相同的操作。但现在有些系统有时service
会执行不同的操作,并且通常service
更了解在特定发行版上该做什么。并且invoke-rc.d
还依赖于发行版。
尽管service
在各个发行版中服务名称最为相似,但服务名称仍有可能不同。例如,有些发行版的服务名称为 ,network
而有些发行版的服务名称为。在某些配置中,重新启动可能比networking
更合适。network-manager
networking
答案2
我刚刚在 Debian 11(Bullseye)上重新启动了网络:
# systemctl restart networking
连接没有丢失。我相信它在旧版本上也有效。