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-utils ใหม่แล้ว:

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

จากนั้นสร้างไดเร็กทอรีขึ้นใหม่โดยได้รับอนุญาตจากผู้ใช้รูท ฉันไม่แน่ใจด้วยซ้ำว่าข้อผิดพลาดนี้เกี่ยวข้องกับการrpc.statdไม่เริ่มทำงานหรือไม่

ฉันยังพยายามที่จะทำงานrpc.statd -F --no-notifyในเปลือกของฉัน แต่ที่เพิ่งออกมาด้วยรหัส 1 ไม่มีข้อผิดพลาดไม่มีอะไร ไม่มีการตั้งค่าสถานะ verbose หรือ debug ใน manpage

ฉันพยายามล้างข้อมูลของฉัน/etc/exportsและระบบของฉันก็ทันสมัย ​​( pacman -Syu) ฉันไม่ได้เปลี่ยนแปลงอะไรเลยมันหยุดทำงานเมื่อสองสามชั่วโมงก่อน

โปรดทราบว่าการใช้mount -o nolock /dataงาน ดังนั้นส่วนที่เหลือของ NFS / rpc daemons จึงดูเหมือนจะใช้ได้

คำตอบ:


26

ปัญหาเดียวกันที่นี่rpc-stadล้มเหลวตั้งแต่อัปเดตครั้งล่าสุด (คอมพิวเตอร์ของฉันทั้งหมดมีปัญหาหลังจากอัปเดต)

เพื่อแก้ปัญหาฉันเพิ่งเปิดใช้งานและเริ่ม rpcbind:

sudo  systemctl enable   rpcbind.service  # for the next reboot
sudo  systemctl start    rpcbind.service   
sudo  systemctl restart  rpcbind.service

7

มันจะ apear ว่าไฟล์หน่วย rpcbind 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

ไม่แน่ใจว่าไฟล์เหล่านี้หายไปอย่างไร อาจเป็นปัญหาการทุจริตของ FS?

สิ่งที่แปลกคือ nfsd ยังคงทำงานอยู่ แต่ไม่ใช่ statd หลังจากรีบู๊ตแล้ว nfsd ก็ไม่ทำงานเช่นกัน (เพราะต้องการrpcbind) มันเกือบจะเหมือนไฟล์เหล่านี้หายไปในขณะที่ระบบกำลังทำงานอยู่

น่าเสียดายที่systemdไม่ได้ให้ข้อความแสดงข้อผิดพลาดที่ชัดเจนเกี่ยวกับข้อผิดพลาดประเภทนี้ (เช่นการพึ่งพาrpcbindไม่สามารถโหลดได้) ซึ่งจะทำให้การตรวจแก้จุดบกพร่องง่ายขึ้น :-(


แปลก. ฉันเพิ่งพบปัญหาเดียวกัน (ไม่สามารถเมานต์วอลุ่ม NFS3, systemctl start rpc-statdล้มเหลวด้วยข้อความ "ไม่สามารถสร้างผู้ฟัง RPC, ออก" ข้อความ) บนระบบ Arch linux การติดตั้งเปิดใช้งานและเริ่มบริการ rpcbind แก้ปัญหาได้ ฉันสงสัยว่าก่อนหน้านี้ทำงานเป็นซ็อกเก็ตมากกว่าบริการหรือไม่ แต่มีบางอย่างผิดปกติ ฉันโชคไม่ดีที่ไม่สามารถตรวจสอบเบื้องต้นได้หากมีไฟล์ rpcbind. * อยู่ในไดเร็กทอรี / usr / lib / systemd
pgoetz

คุณน่าจะหมายถึง 'systemctl' แทนที่จะเป็น 'systemd' ในสามบรรทัดสุดท้ายในตัวอย่างด้านบน
jeremiah

1
โอ๊ะโอถูกต้องแล้ว ขอบคุณ @ jeremiah
Martin Tournoij

1

ฉันเจอบางกรณีที่ / var / lib / nfs หรือ / var / lib / nfs / statd หายไปซึ่งทำให้ NFS daemons บางตัวออกจากด้วยรหัสข้อผิดพลาด แต่ไม่มีการพิมพ์ข้อความใด ๆ การแก้ไขนั้นง่ายเพียงแค่นี้:

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

แต่มันค่อนข้างแปลกที่ daemons และ systemd service files ไม่ได้พยายามสร้างไดเรกทอรีหรือพิมพ์ข้อความผิดพลาดใด ๆ เกี่ยวกับมัน


ฉันมีปัญหาที่คล้ายกันและสิ่งนี้ใช้ได้สำหรับฉัน ฉันยังไม่รู้ว่าบริการไม่สร้างไดเรกทอรีหรือเหตุใดจึงลบไดเรกทอรี
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

แก้ไขปัญหาของฉัน

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.