ให้สิทธิ์ผู้ใช้เฉพาะในการเขียนไปยังโฟลเดอร์โดยใช้เครื่องหมาย + w


153

ฉันรู้ว่าฉันสามารถกำหนดสิทธิ์ให้เขียนถึงเจ้าของ / กลุ่ม / คนอื่น ๆ เช่นนี้:

chmod u+w myfolder

ฉันสามารถระบุผู้ใช้เฉพาะที่นี่ได้ไหม? บางคนชอบสิ่งนี้:

chmod username u+w myfolder

ฉันไม่คิดว่ามันเป็นไปได้ ทำไมคุณไม่เพิ่มผู้ใช้ในกลุ่ม?
Emil

คำตอบ:


157

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

sudo chown username: myfolder

ผู้ใช้ที่เป็นเจ้าของ myfolder จะเป็นชื่อผู้ใช้ จากนั้นคุณสามารถดำเนินการ

sudo chmod u+w myfolder

เพื่อเพิ่มสิทธิ์การเขียนให้กับผู้ใช้ชื่อผู้ใช้

แต่ถ้าคุณต้องการเพิ่มผู้ใช้นี้ในกลุ่มที่เกี่ยวข้องกับ "myfolder" คุณสามารถเรียกใช้

sudo usermod -a -G groupname username

จากนั้นดำเนินการ

sudo chmod g+w myfolder

เพื่อเพิ่มสิทธิ์การเขียนลงในกลุ่ม


มีวิธีที่ผู้ใช้ทั้งสองจะสามารถเข้าถึงโฟลเดอร์ได้และไม่จำเป็นต้องมีกลุ่ม ขอแนะนำในการตอบคำถามเดียวกันที่นี่: superuser.com/a/235398/191720
Luan Nico

ฉันสามารถทำได้โดยsudoไม่
becko

1
@ เบ็ค: คุณสามารถถ้าคุณลดลงไปที่เปลือกหอย
Charo

1
@Charo ฉันหมายถึงโดยไม่ต้อง root
becko

1
@AER: ในคำสั่งแรกหากโคลอนตามusernameหลังกลุ่มที่เป็นเจ้าของจะถูกเปลี่ยนเป็นusername(หากคุณไม่ใช้โคลอนดังกล่าวกลุ่มที่เป็นเจ้าของจะไม่เปลี่ยนแปลง)
Charo

192

คุณสามารถใช้setfacl:

setfacl -m u:username:rwx myfolder

การตั้งค่าการอนุญาตสำหรับผู้ใช้เฉพาะโดยไม่ต้องเปลี่ยนความเป็นเจ้าของของไดเรกทอรี

ตรวจสอบหน้า manสำหรับรายละเอียดและตัวอย่างเพิ่มเติม


8
คำตอบที่สมบูรณ์แบบ! นอกจากนี้ยังsetfaclมีให้บริการบน CentOS ( yum -y install acl) และ FreeBSD เช่นกัน
เวียต

7
เพียงแค่ทราบ: setfacl = ตั้งค่าไฟล์ ACL, ACL = รายการควบคุมการเข้าถึงดังนั้นสำหรับสั้น ๆ "setFacl" - วิธีที่ง่ายกว่าที่จะจำฉันคิดว่า
Yawar Murtaza

12
หากคุณต้องการใช้มันซ้ำกับไดเรกทอรีย่อยทั้งหมด: เพิ่มแฟล็ก -R เช่นนี้:setfacl -R -m u:username:rwx myfolder
Jose A

วิธีที่ง่ายที่สุดในการให้อนุญาตสำหรับผู้ใช้ใหม่
Rajesh Mbm

1
มีวิธีให้สิทธิ์แก่ผู้ใช้rwโดยไม่เปลี่ยนxสิทธิ์ที่มีอยู่แล้วหากใช้งานกับหลาย ๆ ไฟล์หรือเรียกซ้ำอีกครั้ง?
Qi Fan

8

ไม่เป็นไปไม่ได้ คุณสามารถเปลี่ยนเจ้าของไฟล์ด้วย

[sudo] chown username: foldername

หรือคุณสามารถเพิ่มผู้ใช้ในกลุ่มที่เป็นเจ้าของไฟล์ได้

usermod -a -G {group-name} username

useradd -G {group-name} usernameบอกฉันว่าชื่อผู้ใช้นั้นมีอยู่แล้ว
Erdal G.

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