Am 30.04.2014 11:58, schrieb Aurelien Jarno: > On Tue, Apr 29, 2014 at 03:10:02PM +0200, Michael Biebl wrote: >> Am 29.04.2014 13:10, schrieb Jason Alavaliant: >>> On 2014-04-29 22:36, Michael Biebl wrote: >>>> Am 29.04.2014 11:31, schrieb Jason Alavaliant: >> >>>> Do you have an NFS / remote fs configuration in your /etc/fstab? >>> >>> Yes I've got a nfs4 mounted home directory >>> server.local:/ /home nfs4 defaults 0 0 >> >> I suspect the hang to be caused by the NFS fstab entry. Can you comment >> out the entry and reboot so we have confirmation? > > I got the same issue, and I don't have a bridge interface, but I do have > a NFS entry in /etc/fstab. Disabling it makes the reboot to succeed. > > Given that systemd is now the default, if every persons with an NFS entry > in fstab will get their systems broken, it might be a good idea to increase > the severity of this bug. > >> If so, can you please try the following patch for >> /etc/network/if-up.d/mountnfs with the NFS mount re-enabled. >> >> --- a/network/if-up.d/mountnfs >> +++ b/network/if-up.d/mountnfs >> @@ -7,6 +7,10 @@ >> # Also mounts SMB filesystems now, so the name of >> # this script is getting increasingly inaccurate. >> >> +if [ -d /run/systemd/system ] ; then >> + systemctl status network.target > /dev/null || exit 0 >> +fi >> + >> PATH=/sbin:/bin >> . /lib/init/vars.sh > > This patch works for me, thanks. >
Yeah. In the end though it's an issue in the mountfs / rpcbind interaction. The rpcbing SysV init script has Required-Start: $network. And $network is provided by the /etc/init.d/networking init script. As /etc/network/if-up.d/mountnfs starts the rpcbind SysV init script, this leads to a deadlock if $network (aka network.target) is not yet up. The difference between systemd and sysvinit is, that systemd treats those dependencies dynamically, not statically like sysvinit/insserv at install time. I already poked Roger Leigh, our sysvinit maintainer about this, but haven't heard back from him yet. Let's hope one of our sysvinit maintainers can chime in here. Fwiw, it was pointed out on IRC that the above check is rather heavy-weight, since systemctl status queries the journal, a better check would be systemctl --quiet is-active network.target || exit 0 Cheers, Michael -- Why is it that all of the instruments seeking intelligent life in the universe are pointed away from Earth?
signature.asc
Description: OpenPGP digital signature