การจัดการความเป็นเจ้าของและการอนุญาตไฟล์อาจเป็นงานที่สำคัญที่สุดของผู้ดูแลระบบ ในระบบปฏิบัติการที่มีผู้ใช้หลายราย เช่น ลินุกซ์ การกำหนดความเป็นเจ้าของไฟล์และไดเรกทอรีอย่างเหมาะสมถือเป็นสิ่งสำคัญ
คำสั่ง chown เป็นเครื่องมือที่มีประโยชน์ที่สุดสำหรับสิ่งนี้ เพื่อไม่ให้เข้าใจผิดกับ โครโมด chown สามารถแก้ไขความเป็นเจ้าของไฟล์ของผู้ใช้และกำหนดให้กับกลุ่มต่างๆ ได้ เป็นคำสั่งสำคัญในการเรียนรู้สำหรับผู้ใช้ Linux ตัวจริงจัง
นี่คือคำแนะนำในการเริ่มต้นใช้งาน
คุณจะตรวจสอบความเป็นเจ้าของไฟล์ได้อย่างไร
ก่อนที่คุณจะเริ่มย้ายไฟล์ไปตามเจ้าของและกลุ่มต่างๆ คุณควรเรียนรู้วิธีตรวจสอบเจ้าของปัจจุบันของไฟล์ก่อน กระบวนการนี้ง่ายดาย: การเพิ่มแฟล็ก -l ให้กับคำสั่ง ls ปกติจะรวมถึงข้อมูลความเป็นเจ้าของไฟล์หรือไดเร็กทอรีที่สอบถาม
สมมติว่าคุณมีไฟล์ชื่อ example.txt คำสั่งเพื่อดูข้อมูลความเป็นเจ้าของจะมีลักษณะดังนี้:
ls -l example.txt
การใช้ chown ในไฟล์เดียว
วิธีที่ง่ายที่สุดในการใช้ chown คือการเปลี่ยนผู้ใช้ที่เป็นเจ้าของไฟล์ใดไฟล์หนึ่ง ไวยากรณ์คือชื่อไฟล์ชื่อผู้ใช้ sudo chown โดยที่ชื่อผู้ใช้คือชื่อผู้ใช้ที่คุณต้องการมอบไฟล์ให้ และชื่อไฟล์คือชื่อของไฟล์ที่ต้องการ นี่คือสิ่งที่ดูเหมือนในทางปฏิบัติ:
sudo chown someone_else example.txt
โปรดทราบว่าการดำเนินการนี้ไม่ได้เปลี่ยนความเป็นเจ้าของกลุ่มของไฟล์ แต่จะเปลี่ยนแปลงเฉพาะผู้ใช้เท่านั้น หากต้องการเปลี่ยนเจ้าของกลุ่ม คุณต้องใช้ไวยากรณ์อื่น – sudo chown :groupname filename
ในกรณีเฉพาะนี้ สิ่งนี้จะกลายเป็น:
sudo chown :group2 example.txt
คุณยังสามารถรวมทั้งสองคำสั่งไว้ในบรรทัดเดียวเพื่อเปลี่ยนผู้ใช้และความเป็นเจ้าของกลุ่มของไฟล์:
sudo chown me:group1 example.txt
การเปลี่ยนความเป็นเจ้าของไฟล์หลายไฟล์ด้วย Chown
การเปลี่ยนความเป็นเจ้าของไฟล์ทุกไฟล์ทีละไฟล์ค่อนข้างน่าเบื่อเมื่อต้องจัดการกับไฟล์จำนวนมาก โชคดีที่ คำสั่ง Linux ส่วนใหญ่ ช่วยให้คุณสามารถเชื่อมโยงชื่อไฟล์ที่คั่นด้วยช่องว่างหลาย ๆ ชื่อเข้าด้วยกันภายในคำสั่งเดียว เช่นนี้:
sudo chown someone_else:group2 example1.txt example2.txt.
ใช้เคล็ดลับเดียวกันนี้เพื่อตรวจสอบความเป็นเจ้าของไฟล์หลายไฟล์ด้วย:
ls -l example1.txt example2.txt
แม้จะรวมชื่อไฟล์หลายชื่อเป็นคำสั่งเดียว กระบวนการก็ไม่สะดวกเกินไปสำหรับไฟล์มากกว่า 2-3 ไฟล์ แนวทางที่ดีกว่าคือการเปลี่ยนความเป็นเจ้าของเนื้อหาทั้งหมดของไดเร็กทอรีพร้อมกัน
สามารถทำได้โดยการเพิ่มแฟล็ก -R ให้กับคำสั่ง chown สิ่งนี้ทำให้ chown ผ่านเนื้อหาของไดเร็กทอรีและเปลี่ยนความเป็นเจ้าของไฟล์ทุกไฟล์ภายในแบบวนซ้ำ นี่คือการสาธิต:
sudo chown -R someone_else:group2 ตัวอย่าง
เราสามารถใช้แฟล็กแบบเรียกซ้ำอีกครั้งเพื่อตรวจสอบความเป็นเจ้าของไฟล์ในโฟลเดอร์ตัวอย่าง
ls -l -R ตัวอย่าง
แก้ไขความเป็นเจ้าของไฟล์ด้วย UID
ผู้ดูแลระบบที่จัดการผู้ใช้จำนวนมากจะเบื่อหน่ายกับการป้อนชื่อผู้ใช้ซ้ำๆ อย่างรวดเร็ว การพิมพ์ผิดเพียงครั้งเดียวในชื่อใดๆ ทำให้เกิดข้อผิดพลาดในการใช้ chown ซึ่งทำให้สิ่งต่างๆ ช้าลงอย่างมาก
ทางเลือกที่ดีกว่าคือการใช้ ID ผู้ใช้แทน UID คือตัวเลขสี่หลักที่กำหนดให้กับผู้ใช้แต่ละคนที่สร้างขึ้น โดยเริ่มจาก 1,000 ขึ้นไป ป้อนได้ง่ายกว่าสตริงมากและเกิดข้อผิดพลาดน้อยกว่ามาก
หากต้องการใช้วิธีนี้ เพียงแทนที่ชื่อผู้ใช้ด้วย UID:
sudo chown 1001 example.txt
หากคุณไม่ทราบ UID ของผู้ใช้ คุณสามารถตรวจสอบได้อย่างรวดเร็วด้วยคำสั่ง id เพียง ป้อนid -u usernameเพื่อดู ID เฉพาะของผู้ใช้รายนั้น
วิธีการนี้สามารถขยายไปยังชื่อกลุ่มได้เช่นกัน หากต้องการรับ UID ของกลุ่มเข้าสู่ระบบของผู้ใช้และกลุ่มอื่นๆ ที่ใช้คำสั่ง id โดยไม่มีแฟล็ก -u
id someone_else
ดังที่คุณเห็น เรามีรหัสกลุ่มต่างๆ ที่เป็นของผู้ใช้ที่ระบุ เมื่อรวมทุกอย่างเข้าด้วยกัน เราสามารถใช้ chown แบบนี้เพื่อกำหนดเจ้าของใหม่และเปลี่ยนกลุ่มของไฟล์:
sudo chown 1001:1003 example.txt
คุณทำอะไรได้อีกกับคำสั่ง chown?
เราได้สาธิตการใช้งานทั่วไปส่วนใหญ่ของ chown แล้ว ตอนนี้คุณสามารถเปลี่ยนผู้ใช้และกลุ่มที่เป็นเจ้าของไฟล์ได้ด้วยวิธีต่างๆ แต่นั่นไม่ใช่ขีดจำกัดความสามารถของคำสั่งโดยสมบูรณ์.
คุณสามารถดูคำอธิบายทางเทคนิคและรายการอาร์กิวเมนต์ทั้งหมดที่คุณสามารถใช้กับคำสั่งได้จากหน้าคู่มืออย่างเป็นทางการ เพียงป้อน man chown ในเทอร์มินัลเพื่อดู
โชวน์มีประโยชน์หรือไม่?
หากคุณเป็นผู้ใช้คอมพิวเตอร์ของคุณเพียงคนเดียว คุณจะไม่จำเป็นต้องใช้ chown แต่ถ้าคุณใช้ระบบ Linux ในสภาพแวดล้อมแบบมืออาชีพ ไม่ว่าจะเป็นเซิร์ฟเวอร์เชิงพาณิชย์หรือคอมพิวเตอร์ของมหาวิทยาลัย การเรียนรู้คำสั่ง chown (นอกเหนือจาก โครโมด ) ก็มีความสำคัญสูงสุด
ความสามารถในการกำหนดและลบไฟล์ให้กับผู้ใช้และกลุ่มถือเป็นสิ่งสำคัญในการรักษาขอบเขตที่เข้มงวดในระบบที่มีผู้ใช้หลายราย ส่วนที่ดีที่สุดเกี่ยวกับ chown คือความยืดหยุ่น คุณสามารถทำงานกับไฟล์เดี่ยวหรือทั้งไดเร็กทอรีด้วยคำสั่งเดียวกัน
คุณยังสามารถมอบหมายความเป็นเจ้าของให้กับผู้ใช้และกลุ่มแยกกันและในคำสั่งรวมได้ เมื่อใช้ร่วมกับ UID ที่สะดวกยิ่งขึ้น ทำให้การจัดการแม้แต่ลำดับชั้นผู้ใช้ที่ซับซ้อนที่สุดเป็นเรื่องง่าย
.