Computer >> คอมพิวเตอร์ >  >> ระบบ >> Linux

วิธีเปลี่ยนการอนุญาตไฟล์ซ้ำๆ ใน Linux

วิธีเปลี่ยนการอนุญาตไฟล์ซ้ำๆ ใน Linux

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

วิธีตรวจสอบการอนุญาตไฟล์ใน Linux

เมื่อเกิดข้อผิดพลาด "การอนุญาตถูกปฏิเสธ" ในไฟล์หรือการทำงานของไดเร็กทอรี ให้เริ่มต้นด้วยการตรวจสอบสิทธิ์ที่จัดสรรสำหรับผู้ใช้ กลุ่ม และอื่นๆ

ในการทำเช่นนั้น คุณสามารถใช้ ls -l สั่งการ. ตัวอย่างเช่น ต่อไปนี้คือการอนุญาตสำหรับไฟล์และไดเร็กทอรีต่างๆ ในไดเร็กทอรี “/var”

วิธีเปลี่ยนการอนุญาตไฟล์ซ้ำๆ ใน Linux

ผลลัพธ์ด้านบนมีข้อมูลเฉพาะ

  1. คอลัมน์แรกแสดงถึงสิทธิ์ของไฟล์และไดเรกทอรี ตัวอักษรตัวแรกในคอลัมน์นี้ระบุประเภท:d หมายถึงไดเรกทอรี l ย่อมาจากลิงก์สัญลักษณ์และ - ไฟล์ปกติ
  2. อักขระอีกเก้าตัวถูกจัดกลุ่มเป็นสามชุด:u ผู้ใช้ g กลุ่ม และ o เจ้าของระบุสิทธิ์ของไฟล์หรือไดเรกทอรี r ระบุสิทธิ์ "อ่าน" w ระบุสิทธิ์ "เขียน" และ X ระบุการอนุญาต "ดำเนินการ"
วิธีเปลี่ยนการอนุญาตไฟล์ซ้ำๆ ใน Linux

เมื่อคุณทราบการอนุญาตไฟล์ของไดเรกทอรีการทำงานหรือไฟล์ของคุณแล้ว คุณสามารถเปลี่ยนได้อย่างง่ายดาย

วิธีใช้ chmod เพื่อเปลี่ยนการอนุญาตไฟล์

chmod คำสั่งเป็นวิธีที่ง่ายที่สุดในการเปลี่ยนสิทธิ์ของไฟล์ใน Linux ไวยากรณ์ทั่วไปสำหรับคำสั่งคือ:

chmod {permission}{operator}{mode}
  • การอนุญาต:หมายถึงการอนุญาตที่มอบให้กับผู้ใช้ กลุ่ม เจ้าของ หรือทั้งหมด
  • โอเปอเรเตอร์:สิ่งนี้บ่งชี้ถึงการอนุญาตที่มอบให้กับผู้รับมอบสิทธิ์:+ ให้สิทธิ์ - ปฏิเสธการอนุญาตและ = ระบุว่าจะตั้งค่าการอนุญาตใด
  • โหมด:สิ่งนี้กำหนดว่าต้องตั้งค่าการอนุญาตใด:r อ่าน w เขียนหรือ x ดำเนินการ

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ chmod และวิธีการทำงาน ลองดูบทความนี้

ตัวอย่างเช่น หากต้องการปฏิเสธไม่ให้ทุกคนเข้าถึงไดเร็กทอรีสำรองในไดเร็กทอรี "/var" คุณสามารถใช้คำสั่ง:

 sudo chmod -w /var/backups

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

โชคดีที่คุณสามารถเปลี่ยนการอนุญาตไฟล์ซ้ำๆ ของไดเร็กทอรีหรือไฟล์ รวมถึงไดเร็กทอรีย่อยและไฟล์ ในการทำเช่นนั้น ใช้คำสั่ง chmod เรียกซ้ำ -r ตัวเลือก

ตัวอย่างเช่น ให้ลบ read . แบบเรียกซ้ำ สิทธิ์สำหรับไดเร็กทอรี "/var/backup" และไฟล์และไดเร็กทอรีย่อยทั้งหมด สิทธิ์ปัจจุบันคือ:

drwxrwxrwx  2 root root   4096 Jul 15 06:25 backups

มาเริ่มกันเลย chmod ซ้ำเพื่อเปลี่ยนการอนุญาต:

sudo chmod –r -r /var/backups

ตอนนี้คุณจะเห็นว่าสิทธิ์ของไฟล์มีการเปลี่ยนแปลง

วิธีเปลี่ยนการอนุญาตไฟล์ซ้ำๆ ใน Linux

อนุญาตการเปลี่ยนแปลงแบบเรียกซ้ำด้วยการค้นหา

โดยปกติ คุณจะไม่ได้ตั้งค่าไฟล์และไดเร็กทอรีที่มีการอนุญาตที่คล้ายคลึงกัน เนื่องจากคุณต้องได้รับอนุญาตดำเนินการจึงจะ cd ลงในไดเร็กทอรีเฉพาะ อย่างไรก็ตาม ไฟล์ส่วนใหญ่ไม่ต้องการการอนุญาตดำเนินการนี้

เพื่อเอาชนะสิ่งนี้ คุณสามารถใช้ find ยูทิลิตี้ใน Linux วิธีนี้ช่วยให้คุณค้นหาเฉพาะไฟล์หรือไดเร็กทอรีและตั้งค่าการอนุญาตกับไฟล์เหล่านั้นได้

สำหรับข้อมูลเพิ่มเติมเกี่ยวกับการใช้ Find ใน Linux โปรดดูบทความนี้

ให้เราไปที่ไดเร็กทอรี "/var/log" ไดเร็กทอรีมีทั้งไฟล์และไดเร็กทอรี

วิธีเปลี่ยนการอนุญาตไฟล์ซ้ำๆ ใน Linux

ในการตั้งค่าการอนุญาตเฉพาะสำหรับไฟล์เท่านั้น เราสามารถใช้คำสั่ง find กับ -type f ตัวเลือก

ดูตัวอย่างคำสั่งด้านล่าง:

sudo find /var/log/ -type f -exec chmod 777 {} ;

ในตัวอย่างข้างต้น เราใช้คำสั่ง find เพื่อค้นหาไฟล์ในไดเร็กทอรี “/var/log” จากนั้นตั้งค่าสิทธิ์ในการอ่าน เขียน และดำเนินการสำหรับผู้ใช้ กลุ่ม และทั้งหมด

เราสามารถทำกรณีเดียวกันสำหรับไดเร็กทอรี ในกรณีนี้ เราระบุ -type d เพื่อรับเฉพาะไดเร็กทอรี

ตัวอย่างเช่น:

sudo find /var/log/ -type d -exec chmod 755 {} ;

ในตัวอย่างข้างต้น เราตั้งค่าการอนุญาต 755 ให้กับไดเร็กทอรีเท่านั้น ไม่ใช่ทั้งไฟล์และไดเร็กทอรี

คุณสามารถตรวจสอบได้โดยใช้ ls -la คำสั่ง

วิธีเปลี่ยนการอนุญาตไฟล์ซ้ำๆ ใน Linux

คุณจะสังเกตเห็นว่าไฟล์ทั้งหมดได้รับอนุญาต 777 ในขณะที่ไดเรกทอรีมีสิทธิ์ 755

อยู่ในช่วงปิด

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