แซมบ้าแชร์การอนุญาต: อนุญาตการสร้างไฟล์ แต่ไม่สามารถแก้ไข / ลบได้


0

ฉันต้องการสร้างการแบ่งปัน Samba (โดยที่ NAS ของฉันทำงานบน Linux) ซึ่งผู้ใช้ได้รับอนุญาตให้:

  • สร้างไฟล์ใหม่และโฟลเดอร์ใหม่

และหรือไม่ได้รับอนุญาตให้:

  • ลบหรือแก้ไขไฟล์หรือโฟลเดอร์

เนื่องจาก Linux มีสิทธิ์ rwx เท่านั้นโดยไม่แยกความแตกต่างระหว่าง "เขียน" และ "เขียนใหม่" ฉันสงสัยว่ามันเป็นไปได้หรือไม่

(แม้ว่าระบบปฏิบัติการและบริบทจะแตกต่างกันฉันต้องการสิ่งที่คล้ายกับอนุญาตให้ผู้ใช้สร้างไฟล์ แต่ไม่สามารถแก้ไขและลบได้นอกจากนี้โฟลเดอร์ที่เพิ่มโดยผู้ใช้ควรปฏิบัติตามกฎเดียวกัน: ไม่มีการเปลี่ยนแปลง / ลบไฟล์ / โฟลเดอร์ในพวกเขา)

คำตอบ:


0

มีคำตอบกึ่งคำตอบสองสามข้อที่นี่และที่นี่และฉันคิดว่ามันใกล้เคียงที่สุดเท่าที่คุณจะได้รับ

โดยทั่วไปคุณต้องตั้งเจ้าของไฟล์ให้ไม่ใช่ผู้ใช้ Samba และกลุ่มของไฟล์เป็นกลุ่มที่ผู้ใช้ Samba ไม่ใช่สมาชิก (คุณสามารถสร้างกลุ่มจำลองหากต้องการ)

chown -R root:emptygroup * /path/to/dir/

จากนั้นตั้งค่า sticky bit ของไฟล์เป็น 1:

chmod -R 1777 /path/to/dir/

ธงลบที่ถูก จำกัด หรือ BIT เหนียว

การตั้งค่าสถานะการลบที่ จำกัด หรือบิตที่ จำกัด เป็นบิตเดียวซึ่งการตีความขึ้นอยู่กับชนิดของไฟล์ สำหรับไดเรกทอรีจะป้องกันผู้ใช้ที่ไม่มีสิทธิพิเศษจากการลบหรือเปลี่ยนชื่อไฟล์ในไดเรกทอรีเว้นแต่พวกเขาเป็นเจ้าของไฟล์หรือไดเรกทอรี สิ่งนี้เรียกว่าการตั้งค่าสถานะการลบแบบ จำกัด สำหรับไดเรกทอรีและพบได้ทั่วไปในไดเรกทอรีที่เขียนได้ทั่วโลกเช่น / tmp

โพสต์ที่เชื่อมโยงพูดคุยเกี่ยวกับความต้องการกำหนดเวลางาน cron ที่กำหนดสิทธิ์ในไฟล์ที่สร้างขึ้นใหม่ แต่ในไฟล์ smb.conf ของคุณคุณสามารถใส่บรรทัดต่อไปนี้ที่ควรดูแลสถานการณ์นี้:

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