Ubuntu Hardy NFS4 bug
posted on 04 Mar 2009 17:21 by pongtawat in linux-unixใน Ubuntu 8.04 LTS (hardy) ถ้าเราเปิดใช้ NFS4 server (nfs-kernel-serve r) แล้วไป map ที่เครื่องอื่น จะพบว่าที่ client จะเห็น owner ของไฟล์เป็น nobody:nobody เสมอ ไม่ว่าจะตั้งยังไง เหมือนกับ idmapd ไม่ทำงาน ทั้งๆ ที่มันก็ run อยู่
ถ้าลอง restart idmapd (ง่ายๆ คือ /etc/init.d/nfs-common restart) ดูจะพบว่า id mapping จะทำงานได้เป็นปกติทันที
หาอยู่นานว่าเกิดอะไรขึ้น ในที่สุดก็ไปเจอคำอธิบายใน Debian Bug 490181
ปัญหาที่เกิดขึ้นคือ idmapd มันต้องการใช้ไฟล์ใน /proc ซึ่งจะมีก็ต่อเมื่อ nfsd kernel module ถูก load แล้วเท่านั้น แต่ว่า nfsd module ถูก load ใน S20nfs-kernel-server ซึ่งทำงานหลังจาก S20nfs-common ซึ่งเป็นตัว start idmapd ดังนั้นตอนที่ idmapd start จึงยังไม่มี nfsd module อยู่ มันเลยทำงานได้ไม่สมบูรณ์
ปัญหานี้แก้ใน nfs-utils 1:1.1.2-6 ซึ่งของ Ubuntu hardy และ intrepid เป็น 1:1.1.2-2 และ 1:1.1.2-4 ทำให้น่าจะมีํปัญหาเหมือนกันทั้งคู่
วิธีแก้ขัดก็คือสั่งให้ nfsd module มัน load ก่อน nfs-common โดยง่ายที่สุดก็คือไปใส่ nfsd ไว้ใน /etc/modules
edit @ 9 Mar 2009 17:50:59 by pongtawat