Red Hat Bugzilla – Bug 830438
Most of network services do not listen on network interfaces after Fedora starts up or the interface is brought up
Last modified: 2012-06-25 13:27:36 EDT
Created attachment 590618 [details]
NetworkManager dispatcing script for nfs-server
Description of problem:
1. After Fedora starts up most of network services (named, squid, nfs-server etc.)
do not listen to inbound requests on network interfaces.
2. After the services have been restarted they usually start working
3. After some network interface are brought down and then up the services do not start listening on it.
Install Fedora to a computer with one or several network interface. Install and configure bind, squid and nfs-server.
Steps to Reproduce:
1. Start Fedora
2. Try to use these service from another computer (nslookup, firefox or mount -t nfs4)
No responce from these services
Because by default Fedora uses NetworkManager instead of /etc/rc.d/init.d/network script, most of network services start before NetworkManager brings the network interfaces up so they do not start listen on these interfaces.
There are several scripts in /etc/NetworkManager/dispatcher.d. They should notify network services (named, squid etc.) that some network interface has brought up or down. Unfortunately, they all run executables from /sbin directory which does not more exist in Fedora 17. So these scripts do not work at all in Fedora 17.
And there is no notification script for nfs-server.
After I modified these scripts, having changed
'/sbin/ip' to 'ip'
'/sbin/service' to 'service'
'/sbin/systemctl' to 'systemctl'
and having provided a script 20-nfs-server (see attatchment), all my services started working after Fedora startup
(In reply to comment #0)
> Unfortunately, they all run executables from /sbin
> directory which does not more exist in Fedora 17.
/sbin should be a symlink to /usr/sbin. It sounds like your machine is broken. Did you use a non-supported method to upgrade from 16 to 17? If so, it might not have done all the necessary cleanup/fixing needed for the / -> /usr move... You should have symlinks for /bin, /lib, /lib64 (on x86_64), and /sbin.
You are right. The symlink /sbin exists in my machine. There was another
reason for dispatcher scripts not to work: systemctl resides in /usr/bin
rather /sbin, but the scripts try to run /sbin/systemctl.
OK. The scripts in /etc/NetworkManager/dispatcher.d/ aren't part NetworkManager though. They're provided by other packages, to be used by NetworkManager. So you need to file bugs against those other packages.
closing per previous comment: the bugs are in packages other than NetworkManager