Ubuntu 16.04 中 rpcbind 服务无法在启动时正常启动
root@HZ-Saturn /etc/systemd # systemctl status rpc-statd.service
● rpc-statd.service - NFS status monitor for NFSv2/3 locking.
Loaded: loaded (/lib/systemd/system/rpc-statd.service; disabled; vendor preset: enabled)
Active: inactive (dead)
root@HZ-Saturn ~ # journalctl /sbin/rpcbind
-- Logs begin at Thu 2016-05-12 12:09:23 CEST, end at Thu 2016-05-12 14:54:54 CEST. --
May 12 12:16:51 HZ-Saturn rpcbind[1738]: rpcbind: xdr_/run/rpcbind/rpcbind.xdr: failed
May 12 12:16:51 HZ-Saturn rpcbind[1738]: rpcbind: xdr_/run/rpcbind/portmap.xdr: failed
如果我开始手动
systemctl start rpcbind
它正在发挥作用。
root@HZ-Saturn ~ # systemctl start rpcbind
root@HZ-Saturn ~ # systemctl status rpcbind
● rpcbind.service - RPC bind portmap service
Loaded: loaded (/lib/systemd/system/rpcbind.service; indirect; vendor preset: enabled)
Drop-In: /run/systemd/generator/rpcbind.service.d
└─50-rpcbind-$portmap.conf
Active: active (running) since Thu 2016-05-12 15:13:50 CEST; 2s ago
Main PID: 1497 (rpcbind)
Tasks: 1 (limit: 512)
Memory: 528.0K
CPU: 4ms
CGroup: /system.slice/rpcbind.service
└─1497 /sbin/rpcbind -f -w
May 12 15:13:50 HZ-Saturn systemd[1]: Starting RPC bind portmap service...
May 12 15:13:50 HZ-Saturn rpcbind[1497]: rpcbind: xdr_/run/rpcbind/rpcbind.xdr: failed
May 12 15:13:50 HZ-Saturn rpcbind[1497]: rpcbind: xdr_/run/rpcbind/portmap.xdr: failed
May 12 15:13:50 HZ-Saturn systemd[1]: Started RPC bind portmap service.
如何修复?
答案1
这是 Ubuntu 16 中 systemd 配置 rpcbind 单元的错误。 https://bugs.launchpad.net/ubuntu/+source/rpcbind/+bug/1558196
解决方案:
systemctl add-wants multi-user.target rpcbind.service
答案2
以上并不是解决办法。 截至本文发布时,Ubuntu 16.04 LTS - Xenial 仍未实施解决方案。我在多用户环境中成功运行了这个补丁一个月。我从之前的发帖人链接中找到了下面的补丁,但该链接已被删除。
补丁可以在这里找到:
答案3
作为一种解决方法,安装 nfs-kernel-server 也可以解决此问题,因为 nfs-kernel-server 服务可以弥补缺失的网络服务依赖关系。
当然,您必须愿意在机器上运行 nfs 服务器。