ระบบปฏิบัติการยูนิกซ์และ Linux กำหนดสิทธิการเข้าถึงไฟล์และไดเร็กทอรีโดยใช้หนึ่งในสามประเภทของการเข้าถึง (อ่านเขียนและดำเนินการ) ที่กำหนดให้กับแต่ละกลุ่มสามกลุ่ม (เจ้าของกลุ่มและผู้ใช้รายอื่น)
ถ้าคุณแสดงรายการรายละเอียดของแอ็ตทริบิวต์ของไฟล์โดยใช้ LS คำสั่งด้วย -l สวิตช์ (ตัวอย่างเช่น ls -l ชื่อไฟล์ ) จะส่งกลับข้อมูลที่จะมีลักษณะคล้าย ๆ กัน -rwe-RW-r-- ซึ่งหมายถึงการอ่านเขียนและเรียกใช้สิทธิพิเศษสำหรับเจ้าของสิทธิ์ในการอ่านและเขียนสำหรับกลุ่มและอ่านเฉพาะสิทธิ์การเข้าถึงสำหรับผู้ใช้รายอื่นทั้งหมดเท่านั้น
สิทธิการเข้าถึงแต่ละประเภทมีค่าตัวเลขที่ระบุไว้ด้านล่าง:
- อ่าน = 4
- เขียน = 2
- ดำเนินการ = 1
ค่าสำหรับสิทธิ์การเข้าถึงสำหรับแต่ละกลุ่มจะถูกเพิ่มเข้าด้วยกันเพื่อให้ได้ค่าระหว่าง 0 ถึง 7 ซึ่งสามารถใช้เพื่อกำหนดหรือแก้ไขสิทธิ์โดยใช้ chmod (เปลี่ยนโหมด) คำสั่ง
ในตัวอย่างข้างต้นสิทธิ์การเข้าถึงไฟล์ที่เป็นปัญหาสามารถกำหนดได้โดยการป้อน chmod 764 ชื่อไฟล์ . จำนวน 764 มาจาก:
- rwe = 4 (อ่าน) + 2 (เขียน) + 1 (รัน) = 7
- rw = 4 (อ่านแล้ว) + 2 (เขียน) = 6
- r = 4 (อ่าน) = 4
คุณสามารถใช้ chmod คำสั่งเพื่อกำหนดสิทธิการเข้าถึงไฟล์และไดเร็กทอรี โปรดจำไว้ว่าคำสั่งและชื่ออ็อบเจ็กต์ของ Unix และ Linux เป็นตัวพิมพ์เล็กและตัวพิมพ์ใหญ่ คุณต้องใช้ "chmod"ไม่ใช่ CHMod หรืออักษรตัวพิมพ์ใหญ่และตัวพิมพ์เล็ก ๆ
วิธีการใช้คำสั่ง chmod:
- การเข้าถึงแบบเต็มรูปแบบสำหรับทุกคน: chmod 777 ชื่อไฟล์
- สิทธิ์การเข้าถึงแบบเต็มสำหรับสิทธิ์การเป็นเจ้าของและกลุ่ม แต่ผู้ใช้รายอื่น ๆ สามารถอ่านและดำเนินการได้เท่านั้น: chmod 775 ชื่อไฟล์
- การเข้าถึงแบบเต็มสำหรับเจ้าของ แต่ จำกัด สิทธิ์ของกลุ่มและผู้ใช้รายอื่นเพื่ออ่านและดำเนินการไฟล์ในไดเรกทอรีเท่านั้น: chmod 755 dirname
- การเข้าถึงแบบเต็มสำหรับเจ้าของที่ไม่มีสิทธิ์การเข้าถึงหรือสิทธิพิเศษสำหรับบุคคลอื่น: chmod 700 ชื่อไฟล์
- ไม่มีการเข้าถึงไฟล์ในไดเร็กทอรีสำหรับกลุ่มหรือผู้ใช้รายอื่นและเจ้าของถูก จำกัด ให้อ่านและเรียกใช้สิทธิ์เพื่อป้องกันการลบหรือแก้ไขไฟล์โดยไม่ได้ตั้งใจในไดเรกทอรี: chmod 500 dirname
- อนุญาตให้เจ้าของและกลุ่มอ่านและเขียนการเข้าถึงไฟล์เพื่อให้บุคคลอื่นในกลุ่มสามารถแก้ไขหรือลบไฟล์รวมทั้งเป็นเจ้าของได้ แต่ไม่สามารถเข้าถึงผู้ใช้รายอื่นได้: chmod 660 ชื่อไฟล์