NFS больше не монтируется: rpc-statd не запускается

13

Всякий раз, когда я пытаюсь запустить монтирование NFS, я получаю:

Feb 12 00:02:19 martin-xps.lico.nl rpc.statd[23582]: Version 1.3.2 starting
Feb 12 00:02:19 martin-xps.lico.nl rpc.statd[23582]: Flags: TI-RPC
Feb 12 00:02:19 martin-xps.lico.nl rpc.statd[23582]: Running as root.  chown /var/lib/nfs to choose different user
Feb 12 00:02:19 martin-xps.lico.nl rpc.statd[23582]: failed to create RPC listeners, exiting
Feb 12 00:02:19 martin-xps.lico.nl systemd[1]: rpc-statd.service: control process exited, code=exited status=1
Feb 12 00:02:19 martin-xps.lico.nl systemd[1]: Failed to start NFS status monitor for NFSv2/3 locking..
Feb 12 00:02:19 martin-xps.lico.nl systemd[1]: Unit rpc-statd.service entered failed state.
Feb 12 00:02:19 martin-xps.lico.nl systemd[1]: rpc-statd.service failed.
Feb 12 00:02:19 martin-xps.lico.nl rpc.statd[23584]: Version 1.3.2 starting
Feb 12 00:02:19 martin-xps.lico.nl rpc.statd[23584]: Flags: TI-RPC
Feb 12 00:02:19 martin-xps.lico.nl rpc.statd[23584]: Running as root.  chown /var/lib/nfs to choose different user
Feb 12 00:02:19 martin-xps.lico.nl rpc.statd[23584]: failed to create RPC listeners, exiting

Я пытался chown /var/lib/nfsдо rpc, который только дает мне ошибку минус строка «Запуск в качестве корня»:

Feb 12 00:05:09 martin-xps.lico.nl rpc.statd[23773]: Version 1.3.2 starting
Feb 12 00:05:09 martin-xps.lico.nl rpc.statd[23773]: Flags: TI-RPC
Feb 12 00:05:09 martin-xps.lico.nl rpc.statd[23773]: failed to create RPC listeners, exiting
Feb 12 00:05:09 martin-xps.lico.nl systemd[1]: rpc-statd.service: control process exited, code=exited status=1
Feb 12 00:05:09 martin-xps.lico.nl systemd[1]: Failed to start NFS status monitor for NFSv2/3 locking..
Feb 12 00:05:09 martin-xps.lico.nl systemd[1]: Unit rpc-statd.service entered failed state.
Feb 12 00:05:09 martin-xps.lico.nl systemd[1]: rpc-statd.service failed.
Feb 12 00:05:09 martin-xps.lico.nl rpc.statd[23775]: Version 1.3.2 starting
Feb 12 00:05:09 martin-xps.lico.nl rpc.statd[23775]: Flags: TI-RPC
Feb 12 00:05:09 martin-xps.lico.nl rpc.statd[23775]: failed to create RPC listeners, exiting

Я попытался переустановить NFS-утилит:

$ pacman -R nfs-utils
$ rm -r /var/lib/nfs
$ pacman -S nfs-utils 

Затем он заново создает каталог с разрешения пользователя root. Я даже не уверен, если эта ошибка даже связана с rpc.statdне запуска.

Я также пытался запустить rpc.statd -F --no-notifyв своей оболочке, но это просто выходит с кодом 1. Нет ошибок, нет ничего. На странице руководства нет подробного или отладочного флага.

Я также попытался очистить мой /etc/exports, и моя система обновлена ​​( pacman -Syu). Я ничего не изменил, он просто перестал работать несколько часов назад.

Обратите внимание, что с помощью mount -o nolock /data работает; так что остальные демоны NFS / rpc вроде бы в порядке.

Мартин Турной
источник

Ответы:

26

Та же проблема здесь, rpc-stad не удалось с момента последнего обновления (все мои компьютеры имели проблему после обновления).

Для решения проблемы я просто включил и запустил rpcbind:

sudo  systemctl enable   rpcbind.service  # for the next reboot
sudo  systemctl start    rpcbind.service   
sudo  systemctl restart  rpcbind.service
humhumhum
источник
7

Похоже, что файлы модуля rdcbind systemd пропали без вести:

$ find /usr/lib/systemd -name 'rpcbind*'
# no output

Переустановка это решило проблему:

$ pacman -S rpcbind
# [...]

$ find /usr/lib/systemd -name 'rpcbind*
/usr/lib/systemd/system/rpcbind.service
/usr/lib/systemd/system/rpcbind.target
/usr/lib/systemd/system/rpcbind.socket

$ systemctl enable rpcbind
$ systemctl start rpcbind
$ systemctl restart nfs-server

Не уверен, как эти файлы отсутствовали; возможно проблема коррупции ФС?

Странно то, что nfsd все еще работал, а statd - нет. После перезагрузки nfsd тоже не работал (потому что это нужноrpcbind ). Как будто эти файлы исчезли во время работы системы.

К сожалению systemd, нет четкого сообщения об ошибке такого рода ошибок (т.е. rpcbindне удалось загрузить зависимость ), что значительно облегчило бы отладку :-(

Мартин Турной
источник
Weird. Я только что столкнулся с точно такой же проблемой (не смог смонтировать том NFS3, systemctl start rpc-statdпотерпел неудачу с сообщением «не удалось создать слушателей RPC, выход») в системе Arch Linux. Установка, включение и запуск службы rpcbind решили проблему. Интересно, раньше это работало как сокет, а не как служба, но где-то что-то пошло не так. К сожалению, мне не удалось проверить a priori, есть ли какие-либо файлы rpcbind. * В каталоге / usr / lib / systemd.
pgoetz
Вы, вероятно, имеете в виду «systemctl» вместо «systemd» в последних трех строках в вашем примере выше?
Иеремия
1
Ой, да, исправлено. Спасибо @jeremiah.
Мартин Турной
1

Я сталкивался с некоторыми случаями, когда отсутствовали / var / lib / nfs или / var / lib / nfs / statd, что приводит к завершению работы некоторых демонов NFS с кодом ошибки, но без печати какого-либо сообщения. Исправить это просто, вот так:

$ sudo mkdir -p /var/lib/nfs/statd

Но немного странно, что демоны и служебные файлы systemd не пытаются создавать каталоги или печатать какие-либо сообщения об ошибках об этом.

mulad
источник
У меня была похожая проблема, и это работает для меня. Я до сих пор не знаю, как службы не создают каталоги или почему каталог удаляется.
ftrujillo
0

Точно так же я видел эти ошибки:

Starting NFS status monitor for NFSv2/3 locking....
Version 1.3.3 starting
Flags: TI-RPC
Failed to access local netconfig database: Netconfig database not found
failed to create RPC listeners, exiting
rpc-statd.service: Control process exited, code=exited status=1
rpc-statd.service: Failed with result 'exit-code'.
Failed to start NFS status monitor for NFSv2/3 locking..

В моем случае я нарушил права доступа, /etc/netconfigкоторые должны быть доступны для чтения всем пользователям (как это делается /etc/).

Установка для файла perms:

chmod 644 /etc/netconfig

исправил мою проблему.

KurtB
источник