NFS Server: Tidak memulai: portmapper tidak berjalan

12

Saya mencoba mengatur Raspberry Pi saya dengan Wheezy Raspbian 2013-02-09 sebagai server NFS (klien akan Ubuntu 12.10). Saya telah mengikuti instruksi ini .

Saya tidak dapat memulai layanan dan mendapatkan pesan berikut:

$ 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

Tidak yakin apa yang hilang?

d2le
sumber

Jawaban:

9

Seorang moderator di posting forum ini mengatakan bahwa perintah ini akan berfungsi:

sudo update-rc.d rpcbind enable && sudo update-rc.d nfs-common enable
syb0rg
sumber
1
dikonfirmasi sebagai solusi yang berfungsi. dengan pandangan ke arah perintah to systemd equivalent sudo systemctl enable rpcbind && sudo systemctl enable nfs-common(meskipun kedua layanan ini tampaknya masih menggunakan init.d style startup).
ben_wing
Saya pikir saya juga perlu untuk memulai layanan secara eksplisit, dan memesan itu penting dengan nfs-common perlu menjadi yang pertama. saya gunakan sudo systemctl start nfs-commonkemudiansudo systemctl start rpcbind
ben_wing
10

Saya harus memulai kembali layanan rpcbind agar berfungsi:

$ sudo service rpcbind restart

Saya sudah menemukannya di utas ini

Bubu
sumber
1
Anda entah bagaimana tidak menautkan ke utas, saya telah memperbaikinya untuk Anda. Senang melihat pengguna baru terlibat! Juga, masuk ke obrolan dari waktu ke waktu dan tetaplah sedikit, itu selalu menyenangkan untuk memiliki seseorang yang baru untuk diajak bicara: D
RPiAwesomeness
Ini membuat NFS bekerja untuk saya, bukan jawaban yang lain.
Mauvis Ledford
8
$ sudo service rpcbind restart

... tidak berfungsi, tetapi masalah "portmapper tidak berjalan" akan muncul kembali pada reboot berikutnya.

Bagian bawah halaman ini memiliki perbaikan yang akan selamat dari reboot, tetapi ketahuilah itu akan menghapus / etc / ekspor Anda. Singkatnya, backup / etc / ekspor Anda kemudian:

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

Kemudian kembalikan / etc / ekspor Anda.

Stacey Campbell
sumber
menggunakan jawaban Anda dikombinasikan dengan ini: pihomeserver.fr/en/2013/06/21/… melakukan trik untuk saya.
Chasester
Ini terpecahkan bagi saya. Untuk beberapa alasan server kernel NFS salah diinstal. Terima kasih.
hgf
Saya telah melihat masalah yang sama pada distro Debian lain (saya menjalankannya pada PC rumahan saya) - entah bagaimana rpcbindmerupakan penggantinya portmappertetapi aliasing sepertinya belum selesai (atau ini adalah masalah dangkal yang menutupi yang lebih dalam! ) Juga, saya menjalankan systemdrumah tangga gratis - jadi init.dskrip yang salah mungkin bagi saya untuk memiliki masalah dengan.
SlySven
6

Saya menjalankan Raspbian Jessie Lite (dirilis pada 18 Maret 2016), dan mendapatkan masalah yang sama. Inilah langkah-langkah saya untuk memperbaiki masalah ini sepenuhnya, bahkan jika setelah reboot .

Pertama-tama lihat pada file init untuk /etc/init.d/nfs-kernel-server, Anda harus memperhatikan runlevel start-nya adalah 2,3,4,5 .

Lihat juga runlevel mulai file berikut, yang hanya S. Saya mengubah runlevel-nya menjadi 2,3,4,5 .

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

Kemudian coba update-rc.dskrip init yang diubah dengan default . Percobaan pertama gagal. Caranya adalah dengan menghapus dan menambahkannya lagi.

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

Setelah itu, periksa urutan layanan. Ini harus rpcbind, nfs-commondan nfs-kernel-server.

Saya juga memposting blog untuk ini. Anda juga dapat menemukannya di sini .

lesca
sumber
Setelah berbulan-bulan mencoba untuk memperbaikinya melalui berbagai cara lain, saya pasrah me-restart NFS secara manual saat boot. Solusi ini berfungsi. Terima kasih!
Boneskull
Ini adalah perbaikan. Semua yang diposting tidak memperbaiki masalah. Terimakasih banyak sudah mem-posting ini!
chaoticlacker
2

Masalah yang mendasarinya adalah symlinks di /etc/rc*.d tersebar sedikit. Beberapa saran di atas bergantung pada pembuatan kembali tautan ini dan, mungkin, mereka dibuat dengan urutan yang lebih tepat. Terkadang. Coba -

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

untuk melihat kapan mereka dimulai. Pada kenyataannya, Anda hanya perlu mereka mulai di level 3, jadi saya mengedit /etc/init.d/rcpbind, /etc/init.d/nfs-common dan /etc/init.d/nfs-kernel-server jadi "# Default-Start: 3 "dan jalankan ini untuk menegakkannya -

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

Perhatikan bahwa pembaruan-rc.d tidak akan mengubah entri yang ada dan diam-diam gagal menghapus entri (jika skrip masih ada) kecuali Anda menambahkan -f. Idealnya Anda akan berakhir dengan sesuatu seperti ini -

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

Dan sekarang akan boot dengan bersih. Pembaruan untuk NFS mungkin menimpa pekerjaan baik Anda ...

David Bannon
sumber
Ini adalah jawaban IMHO terbaik. Memberikan pendekatan langsung untuk memahami masalah ini.
Daan
1

Saya juga berjuang dengan masalah yang sama. Solusi di atas tidak berhasil. Dalam kasus saya itu berasal dari masalah dengan lokal saya . Baris berikut muncul di terminal selama instalasi: nfs-kernel-server nfs-common rpcbind.

perl: peringatan: Pengaturan lokal gagal.

Pastikan Anda tidak melihat kesalahan tentang lokal Anda selama instalasi paket-paket ini. Saya memperbaiki lokasi saya, menginstal ulang paket dan sekarang berfungsi.

Rotareti
sumber
Sepertinya mungkin bagi saya bahwa menginstal paket-paket itu dua kali mungkin telah memperbaiki masalah, daripada memilah lokasi Anda - meskipun tentu saja itu adalah hal yang baik untuk diluruskan bagaimanapun juga!
SlySven
Saya setuju. Bagaimanapun, setelah memperbaiki lokal, instalasi kedua tampak jauh lebih aman tanpa semua kesalahan.
Rotareti
1

Ini bekerja untuk saya. Bersihkan dan tahan reboot.

Anda harus mengatur systemd untuk melakukan pemesanan dengan benar

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

diambil dari sini

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

nachoparker
sumber
0

Saya memperbaikinya dengan: $ sudo service portmap start Kemudian restart service nfs: $ sudo service nfs-kernel-server restart

dan itu berhasil.

Francesco
sumber
0

Saya telah menguji sebagian besar solusi sebelumnya, mereka tidak berfungsi setelah restart dari Raspberry Pi (perintah tidak rpcinfo -p | grep nfsmemberi saya apa-apa).

Solusi:

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

atau

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

Untuk memverifikasi:

> sudo shutdown -r now

> rpcinfo -p | grep nfs

Diuji pada Raspian 8 (jessie)

STB Land
sumber