Message ID | 20170407150738.6200-1-steved@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On 04/07/2017 11:07 AM, Steve Dickson wrote: > There has been an number startup problems where parts of > the NFS server fail to start due to DNS and other > parts of the network not be up. > > Reading the systemd.special it seems network.target is > a passive unit which does not wait and network-online.target > is an active unit which does not wait so that > should be used. > > Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1419351 > > Signed-off-by: Steve Dickson <steved@redhat.com> Committed... steved. > --- > systemd/nfs-server.service | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/systemd/nfs-server.service b/systemd/nfs-server.service > index 5be5de6..7cf4ae0 100644 > --- a/systemd/nfs-server.service > +++ b/systemd/nfs-server.service > @@ -7,8 +7,8 @@ Wants=rpcbind.socket > Wants=rpc-statd.service nfs-idmapd.service > Wants=rpc-statd-notify.service > > -After= local-fs.target > -After= network.target proc-fs-nfsd.mount rpcbind.socket nfs-mountd.service > +After= local-fs.target network-online.target > +After= proc-fs-nfsd.mount rpcbind.socket nfs-mountd.service > After= nfs-idmapd.service rpc-statd.service > Before= rpc-statd-notify.service > > -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Fri, Apr 07 2017, Steve Dickson wrote: > There has been an number startup problems where parts of > the NFS server fail to start due to DNS and other > parts of the network not be up. > > Reading the systemd.special it seems network.target is > a passive unit which does not wait and network-online.target > is an active unit which does not wait so that > should be used. I assume that last "not" should not be there? According to systemd.special, we should add Wants=network-online.target though "Requires" is probably OK. nfs-server.service already has Requires= network.target which you didn't change. Also nfs-mountd rpc-statd-notify and rpc.statd all have After = network.target They should probably be changed too ?? Thanks, NeilBrown > > Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1419351 > > Signed-off-by: Steve Dickson <steved@redhat.com> > --- > systemd/nfs-server.service | 4 ++-- > 1 file changed, 2 insertions(+), 2 deletions(-) > > diff --git a/systemd/nfs-server.service b/systemd/nfs-server.service > index 5be5de6..7cf4ae0 100644 > --- a/systemd/nfs-server.service > +++ b/systemd/nfs-server.service > @@ -7,8 +7,8 @@ Wants=rpcbind.socket > Wants=rpc-statd.service nfs-idmapd.service > Wants=rpc-statd-notify.service > > -After= local-fs.target > -After= network.target proc-fs-nfsd.mount rpcbind.socket nfs-mountd.service > +After= local-fs.target network-online.target > +After= proc-fs-nfsd.mount rpcbind.socket nfs-mountd.service > After= nfs-idmapd.service rpc-statd.service > Before= rpc-statd-notify.service > > -- > 2.9.3 > > -- > To unsubscribe from this list: send the line "unsubscribe linux-nfs" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html
On 04/09/2017 09:12 PM, NeilBrown wrote: > On Fri, Apr 07 2017, Steve Dickson wrote: > >> There has been an number startup problems where parts of >> the NFS server fail to start due to DNS and other >> parts of the network not be up. >> >> Reading the systemd.special it seems network.target is >> a passive unit which does not wait and network-online.target >> is an active unit which does not wait so that >> should be used. > > I assume that last "not" should not be there? Right... > > According to systemd.special, we should add > Wants=network-online.target > though "Requires" is probably OK. I did see that... but the bug report said After= worked so I went with that... > > nfs-server.service already has > Requires= network.target > which you didn't change. > > Also nfs-mountd rpc-statd-notify and rpc.statd all have > After = network.target > > They should probably be changed too ?? yup... good call. steved. > > Thanks, > NeilBrown > > >> >> Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1419351 >> >> Signed-off-by: Steve Dickson <steved@redhat.com> >> --- >> systemd/nfs-server.service | 4 ++-- >> 1 file changed, 2 insertions(+), 2 deletions(-) >> >> diff --git a/systemd/nfs-server.service b/systemd/nfs-server.service >> index 5be5de6..7cf4ae0 100644 >> --- a/systemd/nfs-server.service >> +++ b/systemd/nfs-server.service >> @@ -7,8 +7,8 @@ Wants=rpcbind.socket >> Wants=rpc-statd.service nfs-idmapd.service >> Wants=rpc-statd-notify.service >> >> -After= local-fs.target >> -After= network.target proc-fs-nfsd.mount rpcbind.socket nfs-mountd.service >> +After= local-fs.target network-online.target >> +After= proc-fs-nfsd.mount rpcbind.socket nfs-mountd.service >> After= nfs-idmapd.service rpc-statd.service >> Before= rpc-statd-notify.service >> >> -- >> 2.9.3 >> >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html -- To unsubscribe from this list: send the line "unsubscribe linux-nfs" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
On Mon, Apr 10 2017, Steve Dickson wrote: > On 04/09/2017 09:12 PM, NeilBrown wrote: >> On Fri, Apr 07 2017, Steve Dickson wrote: >> >>> There has been an number startup problems where parts of >>> the NFS server fail to start due to DNS and other >>> parts of the network not be up. >>> >>> Reading the systemd.special it seems network.target is >>> a passive unit which does not wait and network-online.target >>> is an active unit which does not wait so that >>> should be used. >> >> I assume that last "not" should not be there? > Right... >> >> According to systemd.special, we should add >> Wants=network-online.target >> though "Requires" is probably OK. > I did see that... but the bug report said After= > worked so I went with that... I think that is dangerous, though obviously not very... On my openSUSE system, systemctl show network-online.target | grep By= only shows WantedBy=winbind.service If I didn't have winbind installed, nothing would want the .target, so it wouldn't be activated, so nfs-server wouldn't be ordered with it. The network still comes up because the services that activate it are WantedBy=multi-user.target so nfs-server will (eventually) work, but there is no guarantee of ordering. I think it would be safest to follow the man page and Want or Require network-online.target, rather than assume that something else will. Thanks, NeilBrown > >> >> nfs-server.service already has >> Requires= network.target >> which you didn't change. >> >> Also nfs-mountd rpc-statd-notify and rpc.statd all have >> After = network.target >> >> They should probably be changed too ?? > yup... good call. > > steved. > >> >> Thanks, >> NeilBrown >> >> >>> >>> Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1419351 >>> >>> Signed-off-by: Steve Dickson <steved@redhat.com> >>> --- >>> systemd/nfs-server.service | 4 ++-- >>> 1 file changed, 2 insertions(+), 2 deletions(-) >>> >>> diff --git a/systemd/nfs-server.service b/systemd/nfs-server.service >>> index 5be5de6..7cf4ae0 100644 >>> --- a/systemd/nfs-server.service >>> +++ b/systemd/nfs-server.service >>> @@ -7,8 +7,8 @@ Wants=rpcbind.socket >>> Wants=rpc-statd.service nfs-idmapd.service >>> Wants=rpc-statd-notify.service >>> >>> -After= local-fs.target >>> -After= network.target proc-fs-nfsd.mount rpcbind.socket nfs-mountd.service >>> +After= local-fs.target network-online.target >>> +After= proc-fs-nfsd.mount rpcbind.socket nfs-mountd.service >>> After= nfs-idmapd.service rpc-statd.service >>> Before= rpc-statd-notify.service >>> >>> -- >>> 2.9.3 >>> >>> -- >>> To unsubscribe from this list: send the line "unsubscribe linux-nfs" in >>> the body of a message to majordomo@vger.kernel.org >>> More majordomo info at http://vger.kernel.org/majordomo-info.html
diff --git a/systemd/nfs-server.service b/systemd/nfs-server.service index 5be5de6..7cf4ae0 100644 --- a/systemd/nfs-server.service +++ b/systemd/nfs-server.service @@ -7,8 +7,8 @@ Wants=rpcbind.socket Wants=rpc-statd.service nfs-idmapd.service Wants=rpc-statd-notify.service -After= local-fs.target -After= network.target proc-fs-nfsd.mount rpcbind.socket nfs-mountd.service +After= local-fs.target network-online.target +After= proc-fs-nfsd.mount rpcbind.socket nfs-mountd.service After= nfs-idmapd.service rpc-statd.service Before= rpc-statd-notify.service
There has been an number startup problems where parts of the NFS server fail to start due to DNS and other parts of the network not be up. Reading the systemd.special it seems network.target is a passive unit which does not wait and network-online.target is an active unit which does not wait so that should be used. Fixes: https://bugzilla.redhat.com/show_bug.cgi?id=1419351 Signed-off-by: Steve Dickson <steved@redhat.com> --- systemd/nfs-server.service | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-)