NetworkManager 在离线时杀死 apache
NetworkManager kills apache when going offline
当我关闭 WiFi 时,NetworkManager 终止了 apache2。这可以在'/var/log/apache/error_log'中看到:
[Sun Mar 01 13:25:55 2015] [notice] caught SIGTERM, shutting down
但是,如果我通过
手动关闭 WiFi,则不会发生这种情况
sudo ifconfig wlan0 down
当我断开与 WiFi 的连接时,NetworkManager 似乎进入状态 'inactive'。
这些是我关闭 WiFi 时“/var/log/messages”的一些内容:
Mar 1 13:25:52 raven NetworkManager[22393]: <info> (wlan0): device state change: activated -> disconnected (reason 'user-requested') [100 30 39]
Mar 1 13:25:52 raven NetworkManager[22393]: <info> (wlan0): deactivating device (reason 'user-requested') [39]
Mar 1 13:25:52 raven dhcpcd[350]: received SIGTERM, stopping
Mar 1 13:25:52 raven dhcpcd[350]: wlan0: removing interface
Mar 1 13:25:53 raven NetworkManager[22393]: <info> (wlan0): canceled DHCP transaction, DHCP client pid 350
Mar 1 13:25:53 raven NetworkManager[22393]: <info> NetworkManager state is now DISCONNECTED
Mar 1 13:25:53 raven dbus[16077]: [system] Activating service name='org.freedesktop.nm_dispatcher' (using servicehelper)
Mar 1 13:25:53 raven NetworkManager[22393]: <warn> (pid 350) unhandled DHCP event for interface wlan0
Mar 1 13:25:53 raven NetworkManager[22393]: <warn> Connection disconnected (reason -3)
Mar 1 13:25:53 raven NetworkManager[22393]: <info> (wlan0): supplicant interface state: completed -> disconnected
Mar 1 13:25:53 raven NetworkManager[22393]: <warn> Connection disconnected (reason -3)
有没有办法从 NetworkManager "uncouple" apache2 下线时它不会被杀死
我有 gentoo 3.10.7-gentoo-r1,我正在使用 OpenRC(不是 systemd),
NetworkManager 0.9.8.8 和 apache 2.2.25
同样的问题(多年的 Gentoo 用户)。
非常快速的解决方案:
作为 root,只需键入 apache1
这将使用与初始化脚本 /etc/init.d/apache2
相同的配置启动 apache。唯一的区别是它不会检查已启动的网络。
NetworkManager 停止然后停止的原因是初始化脚本的这一部分:
depend() {
need net
use mysql dns logger netmount postgresql
after sshd
}
need net
部分告诉脚本此服务需要网络正常运行。在使用 NetworkManager 且没有网络连接的机器上,通过 WiFi 或有线网络,不会给出此条件并自动停止服务。
因此,作为第二个(仍然很老套)解决方案,您可以将这一行注释掉。
当我关闭 WiFi 时,NetworkManager 终止了 apache2。这可以在'/var/log/apache/error_log'中看到:
[Sun Mar 01 13:25:55 2015] [notice] caught SIGTERM, shutting down
但是,如果我通过
手动关闭 WiFi,则不会发生这种情况sudo ifconfig wlan0 down
当我断开与 WiFi 的连接时,NetworkManager 似乎进入状态 'inactive'。
这些是我关闭 WiFi 时“/var/log/messages”的一些内容:
Mar 1 13:25:52 raven NetworkManager[22393]: <info> (wlan0): device state change: activated -> disconnected (reason 'user-requested') [100 30 39]
Mar 1 13:25:52 raven NetworkManager[22393]: <info> (wlan0): deactivating device (reason 'user-requested') [39]
Mar 1 13:25:52 raven dhcpcd[350]: received SIGTERM, stopping
Mar 1 13:25:52 raven dhcpcd[350]: wlan0: removing interface
Mar 1 13:25:53 raven NetworkManager[22393]: <info> (wlan0): canceled DHCP transaction, DHCP client pid 350
Mar 1 13:25:53 raven NetworkManager[22393]: <info> NetworkManager state is now DISCONNECTED
Mar 1 13:25:53 raven dbus[16077]: [system] Activating service name='org.freedesktop.nm_dispatcher' (using servicehelper)
Mar 1 13:25:53 raven NetworkManager[22393]: <warn> (pid 350) unhandled DHCP event for interface wlan0
Mar 1 13:25:53 raven NetworkManager[22393]: <warn> Connection disconnected (reason -3)
Mar 1 13:25:53 raven NetworkManager[22393]: <info> (wlan0): supplicant interface state: completed -> disconnected
Mar 1 13:25:53 raven NetworkManager[22393]: <warn> Connection disconnected (reason -3)
有没有办法从 NetworkManager "uncouple" apache2 下线时它不会被杀死
我有 gentoo 3.10.7-gentoo-r1,我正在使用 OpenRC(不是 systemd), NetworkManager 0.9.8.8 和 apache 2.2.25
同样的问题(多年的 Gentoo 用户)。
非常快速的解决方案:
作为 root,只需键入 apache1
这将使用与初始化脚本 /etc/init.d/apache2
相同的配置启动 apache。唯一的区别是它不会检查已启动的网络。
NetworkManager 停止然后停止的原因是初始化脚本的这一部分:
depend() {
need net
use mysql dns logger netmount postgresql
after sshd
}
need net
部分告诉脚本此服务需要网络正常运行。在使用 NetworkManager 且没有网络连接的机器上,通过 WiFi 或有线网络,不会给出此条件并自动停止服务。
因此,作为第二个(仍然很老套)解决方案,您可以将这一行注释掉。