FS#41433 - [rpcbind] statically enabling the service is crazy
Attached to Project:
Arch Linux
Opened by Mantas Mikulėnas (grawity) - Friday, 01 August 2014, 17:36 GMT
Last edited by Tobias Powalowski (tpowa) - Tuesday, 13 January 2015, 18:27 GMT
Opened by Mantas Mikulėnas (grawity) - Friday, 01 August 2014, 17:36 GMT
Last edited by Tobias Powalowski (tpowa) - Tuesday, 13 January 2015, 18:27 GMT
|
Details
The current package's (0.2.1-5) package() function has the
following:
ln -sf ../rpcbind.socket $pkgdir/usr/lib/systemd/system/sockets.target.wants/rpcbind.socket ln -sf ../rpcbind.service $pkgdir/usr/lib/systemd/system/multi-user.target.wants/rpcbind.service which permanently enables the service to be started on boot for everyone who has installed it, unless the service is masked. This is Just Wrong™, because it wastes time starting a service which I only need like once a week, and ignores that NFS services have (or should have) proper dependencies on rpcbind.socket and that admins can do `systemctl enable` themselves anyway. These two symlinks should not be part of a package like this. |
This task depends upon
Closed by Tobias Powalowski (tpowa)
Tuesday, 13 January 2015, 18:27 GMT
Reason for closing: Fixed
Additional comments about closing: 0.2.2-1
Tuesday, 13 January 2015, 18:27 GMT
Reason for closing: Fixed
Additional comments about closing: 0.2.2-1
Also this is ridiculous and discards idea of socket units anyway -.-
This is why we have nfs-client.target. Why hasn't this been fixed yet?
The solution is just removing $pkgdir/usr/lib/systemd/system/multi-user.target.wants/rpcbind.service. rpcbind.socket could stay, as it serves its purpose.
Installation of package does not imply that a user wants it to being automatically started on every boot. Especially in cases when socket activation mechanism can be utilised.
(assuming that server is configured to use only NFSv4 and higher)
http://lxr.free-electrons.com/source/net/sunrpc/svc.c?v=3.14#L966
You can find more information about that change in this thread:
http://www.spinics.net/lists/linux-nfs/msg41053.html
EDIT: For anyone wondering masking is pretty easy: systemctl mask rpcbind.service
What's holding this fix? (which is reverting parts of https://projects.archlinux.org/svntogit/packages.git/commit/trunk?h=packages/rpcbind&id=62ae5b08aa0dfacf7039278d22dab6558a7b8b6f).
But I don't need rpcbind on my system, because I'm using NFS 4.1 mounts solely. I only need the (u)mount.nfs4, provided by nfs-utils. See
FS#43180.How about decoupling the 2 packages?
This is a large enough problem for me that I'll simply uninstall rpcbind until the next time I need NFS, but this screams to be fixed for users who are rely on NFS more than I do.