chown บนพาร์ติชัน NFS ที่เมาท์ให้“ ไม่อนุญาตการดำเนินการ”


31

ฉันมีพาร์ติชันระยะไกลที่ฉันได้ติดตั้งในเครื่องโดยใช้ NFS

'mount' ให้

192.168.3.1:/mnt/storage-pools/ on /pools type nfs (rw,addr=192.168.3.1)

บนเซิร์ฟเวอร์ที่ฉันมีในการส่งออก:

/mnt/storage-pools   *(rw,insecure,sync,no_subtree_check)

จากนั้นฉันก็ลอง

 touch /pools/test1
 ls -lah
 -rw-r--r--  1 65534 65534    0 Dec 13 20:56 test1
 chown root.root test1
 chown: changing ownership of `test1': Operation not permitted

ฉันพลาดอะไรไป ดึงผมออกมา


ทุกครั้งที่ฉันพบปัญหานี้มีช่องว่างในไฟล์การส่งออกระหว่างเมานต์เซิร์ฟเวอร์และ (rw, ...
egorgry

คำตอบ:


26

โดยค่าเริ่มต้นroot_squashตัวเลือกการส่งออกจะเปิดใช้งานดังนั้น NFS ไม่อนุญาตให้ผู้ใช้รูทจากลูกค้าดำเนินการเป็นรูทบนเซิร์ฟเวอร์แทนการจับคู่กับ ID ผู้ใช้ / กลุ่มที่ระบุโดยanonuidและanongidตัวเลือก (default = 65534) นี่คือการกำหนดค่า/etc/exportsร่วมกับตัวเลือกการส่งออกอื่น ๆ


21

อ่านส่วนที่exports(5)เกี่ยวข้องกับ "รูตบีบ":

บ่อยครั้งที่ไม่พึงประสงค์ที่ผู้ใช้รูทบนเครื่องไคลเอนต์จะได้รับการปฏิบัติเหมือนเป็นรูทเมื่อเข้าถึงไฟล์บนเซิร์ฟเวอร์ NFS ด้วยเหตุนี้ uid 0 จะถูกแมปกับ id อื่น: anony ที่เรียกว่าหรือไม่มี uid โหมดการทำงานนี้ (เรียกว่า 'การบีบอัดราก') เป็นค่าเริ่มต้นและสามารถปิดได้ด้วย no_root_squash

ดังนั้นคุณต้องการ:

/mnt/storage-pools   *(rw,insecure,sync,no_subtree_check,no_root_squash)

(แก้ไขคำสะกดผิด)

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