Servidor NFS: Não iniciando: portmapper não está sendo executado

12

Estou tentando configurar meu Raspberry Pi com o Wheezy Raspbian 09/02/2013 como um servidor NFS (o cliente será o Ubuntu 12.10). Eu segui estas instruções .

Não consigo iniciar o serviço e recebo a seguinte mensagem:

$ sudo service nfs-kernel-server restart
[ ok ] Stopping NFS kernel daemon: mountd nfsd.
[ ok ] Unexporting directories for NFS kernel daemon....
[ ok ]   Exporting directories for NFS kernel daemon....
[....] Starting NFS kernel daemon: nfsd
[warn] Not starting: portmapper is not running ... (warning).
$ rpcinfo -p
<br>rpcinfo: can't contact portmapper: RPC: Remote system error - No such file or directory

Não sabe o que está faltando?

d2le
fonte

Respostas:

9

Um moderador nesta postagem no fórum disse que este comando funcionaria:

sudo update-rc.d rpcbind enable && sudo update-rc.d nfs-common enable
syb0rg
fonte
1
confirmado como uma solução de trabalho. com atenção à mudança para o comando systemd equivalente sudo systemctl enable rpcbind && sudo systemctl enable nfs-common(embora esses dois serviços pareçam ainda usar a inicialização no estilo init.d).
22917 ben_wing
Eu acho que também precisava iniciar explicitamente os serviços, e que a ordem era importante com o nfs-common precisando ser o primeiro. Eu usei sudo systemctl start nfs-commonentãosudo systemctl start rpcbind
ben_wing
10

Eu tive que reiniciar o serviço rpcbind para funcionar:

$ sudo service rpcbind restart

Eu descobri neste tópico

Bubu
fonte
1
De alguma forma, você não vinculou o tópico, eu o corrigi. Fico feliz em ver novos usuários envolvidos! Além disso, pop para o bate-papo de vez em quando e ficar um pouco, é sempre bom ter alguém novo para falar com: D
RPiAwesomeness
Isso fez o NFS funcionar para mim e não a outra resposta.
Mauvis Ledford
8
$ sudo service rpcbind restart

... funciona, mas o problema "portmapper não está sendo executado" reaparecerá na próxima reinicialização.

A parte inferior desta página possui uma correção que sobreviverá a uma reinicialização, mas lembre-se de que ela excluirá suas / etc / exportações. Em resumo, faça backup do seu / etc / exportações e depois:

sudo apt-get purge rpcbind
sudo apt-get install nfs-kernel-server

Em seguida, restaure seu / etc / exportações.

Stacey Campbell
fonte
usando sua resposta combinada com esta: pihomeserver.fr/en/2013/06/21/… fez o truque para mim.
Chasester
Isso resolveu para mim. Por alguma razão, o servidor do kernel NFS foi instalado incorretamente. Obrigado.
hgf 22/02
Eu já vi o mesmo tipo de problemas em outras distros do Debian (eu os executo nos meus PCs domésticos) - de alguma forma rpcbindé o substituto, portmappermas o alias não parece ter sido concluído (ou é um problema superficial, mascarando um problema mais profundo! ) Além disso, eu administro uma systemdfamília livre - então init.dé provável que eu tenha problemas com scripts defeituosos .
SlySven
6

Estou executando o Raspbian Jessie Lite (lançado em 18 de março de 2016) e tive o mesmo problema. Aqui estão os meus passos para corrigir completamente esse problema, mesmo após uma reinicialização .

Primeiramente, dê uma olhada no arquivo init /etc/init.d/nfs-kernel-server, você deve notar que o nível de execução inicial é 2,3,4,5 .

Observe também o nível de execução inicial dos arquivos a seguir, que é apenas S. Alterei o nível de execução para 2,3,4,5 .

/etc/init.d/nfs-common
/etc/init.d/rpcbind

Em seguida, tente update-rc.dos scripts init alterados com os padrões . Primeira tentativa falha. O truque é remover e adicioná-los novamente.

update-rc.d -f rpcbind remove
update-rc.d rpcbind defaults

update-rc.d -f nfs-common remove
update-rc.d nfs-common defaults

update-rc.d -f nfs-kernel-server remove
update-rc.d nfs-kernel-server defaults

Depois disso, verifique a ordem dos serviços. Deve ser rpcbind, nfs-commone nfs-kernel-server.

Eu também postei um blog para isso. Você também pode encontrá-lo aqui .

lesca
fonte
Depois de meses tentando consertar isso por vários outros meios, eu havia me resignado a reiniciar manualmente o NFS na inicialização. Esta solução funciona. Obrigado!
boneskull
Esta é a correção. Todos os outros postados não resolveram o problema. Muito obrigado por postar isso!
Chaoticslacker
2

O problema subjacente é que os links simbólicos em /etc/rc*.d estão espalhados um pouco. Algumas das sugestões acima se baseiam em refazer esses links e, talvez, sejam feitas com a ordem mais apropriada. As vezes. Experimentar -

for i in rpcbind nfs-common nfs-kernel-server ; do find /etc/rc* -name "S*$i*"; done

para ver quando eles são iniciados. Na realidade, você só precisa deles iniciados no nível 3, então editei /etc/init.d/rcpbind, /etc/init.d/nfs-common e /etc/init.d/nfs-kernel-server para "# Default-Start: 3 "e executou isso para aplicá-lo -

for i in rpcbind nfs-common nfs-kernel-server ; do update-rc.d -f "$i" remove; update-rc.d "$i" defaults; done

Observe que o update-rc.d não altera uma entrada existente e falha silenciosamente ao remover uma entrada (se o script ainda existir), a menos que você adicione o -f. Idealmente, você terminará com algo assim -

/etc/rc3.d/S01rpcbind
/etc/rc3.d/S02nfs-common
/etc/rc3.d/S03nfs-kernel-server

E agora será inicializado corretamente. Uma atualização para o NFS pode substituir seu bom trabalho ...

David Bannon
fonte
Esta é a melhor resposta IMHO. Fornece uma abordagem direta para entender o problema.
214 Daan Daan
1

Eu estava lutando com o mesmo problema também. As soluções acima não funcionaram. No meu caso, veio de um problema com meus locais . A linha a seguir apareceu no terminal durante a instalação do: nfs-kernel-server nfs-common rpcbind.

perl: aviso: falha na configuração da localidade.

Verifique se você não vê um erro sobre seus códigos de idioma durante a instalação desses pacotes. Corrigi meus códigos de idioma, reinstalei os pacotes e agora ele funciona.

Rotareti
fonte
Parece-me possível que a instalação desses pacotes duas vezes possa ter resolvido o problema de qualquer maneira, em vez de resolver seus locais - embora, claro, isso seja uma coisa boa a ser resolvida de qualquer maneira!
SlySven
Concordo. De qualquer forma, depois de corrigir os códigos de idioma, a segunda instalação parecia muito mais segura, sem todos os erros.
Rotareti
1

Isso funciona para mim. Limpe e resista à reinicialização.

Você precisa configurar o systemd para fazer o pedido corretamente

cat <<EOF | sudo tee -a /etc/systemd/system/nfs-common.services
[Unit]
Description=NFS Common daemons
Wants=remote-fs-pre.target
DefaultDependencies=no

[Service]
Type=oneshot
RemainAfterExit=yes
ExecStart=/etc/init.d/nfs-common start
ExecStop=/etc/init.d/nfs-common stop

[Install]
WantedBy=sysinit.target
EOF

cat <<EOF | sudo tee -a /etc/systemd/system/rpcbind.service
[Unit]
Description=RPC bind portmap service
After=systemd-tmpfiles-setup.service
Wants=remote-fs-pre.target
Before=remote-fs-pre.target
DefaultDependencies=no

[Service]
ExecStart=/sbin/rpcbind -f -w
KillMode=process
Restart=on-failure

[Install]
WantedBy=sysinit.target
Alias=portmap
EOF

sudo systemctl enable nfs-common
sudo systemctl enable rpcbind
sudo reboot

tirado daqui

https://github.com/geerlingguy/raspberry-pi-dramble/issues/65#issuecomment-283046966

nachoparker
fonte
0

Corrigi-o com: $ sudo service portmap start Em seguida, reinicie o serviço nfs: $ sudo service nfs-kernel-server restart

e funciona.

Francesco
fonte
0

Eu testei a maioria das soluções anteriores, elas não funcionam após a reinicialização do Raspberry Pi (o comando rpcinfo -p | grep nfs não me deu nada).

Solução:

echo service nfs-kernel-server restart | sudo tee -a /etc/rc.local

ou

sudo vi /etc/rc.local
service nfs-kernel-server restart

Verificar :

> sudo shutdown -r now

> rpcinfo -p | grep nfs

Testado em Raspian 8 (jessie)

STB Land
fonte