Linux - Change Permissions and Ownership for Files and Folders (chmod, chown, members, groups )
สารบัญ:
- วิธีใช้
chown
- วิธีการเปลี่ยนเจ้าของไฟล์
- วิธีการเปลี่ยนเจ้าของและกลุ่มของไฟล์
- วิธีการเปลี่ยนกลุ่มของไฟล์
- วิธีการเปลี่ยนความเป็นเจ้าของลิงค์สัญลักษณ์
- วิธีการเปลี่ยนความเป็นเจ้าของไฟล์ซ้ำ
- การใช้ไฟล์อ้างอิง
- ข้อสรุป
คำสั่ง
chown
ช่วยให้คุณสามารถเปลี่ยนผู้ใช้และ / หรือความเป็นเจ้าของกลุ่มของไฟล์ไดเรกทอรีหรือลิงก์สัญลักษณ์ที่กำหนด
ใน Linux ไฟล์ทั้งหมดจะเชื่อมโยงกับเจ้าของและกลุ่มและได้รับมอบหมายสิทธิ์การเข้าถึงสำหรับเจ้าของไฟล์สมาชิกกลุ่มและอื่น ๆ
ในบทช่วยสอนนี้เราจะแสดงวิธีใช้คำสั่ง
chown
ผ่านตัวอย่างการปฏิบัติ
วิธีใช้
chown
ก่อนที่จะเข้าสู่วิธีการใช้คำสั่ง
chown
เริ่มต้นด้วยการทบทวนไวยากรณ์พื้นฐาน
นิพจน์คำสั่ง
chown
ใช้แบบฟอร์มต่อไปนี้:
chown USER FILE(s)
USER
เป็นชื่อผู้ใช้หรือ ID ผู้ใช้ (UID) ของเจ้าของใหม่
GROUP
เป็นชื่อของกลุ่มใหม่หรือ group ID (GID)
FILE(s)
คือชื่อของไฟล์ไดเรกทอรีหรือลิงก์หนึ่งไฟล์หรือมากกว่า รหัสตัวเลขควรนำหน้าด้วยสัญลักษณ์
+
-
USER
- หากระบุเฉพาะผู้ใช้ผู้ใช้ที่ระบุจะกลายเป็นเจ้าของไฟล์ที่กำหนดความเป็นเจ้าของกลุ่มจะไม่เปลี่ยนแปลงUSER:
- เมื่อชื่อผู้ใช้ตามด้วยเครื่องหมายโคลอน:
และไม่ได้ระบุชื่อกลุ่มผู้ใช้จะกลายเป็นเจ้าของไฟล์และความเป็นเจ้าของกลุ่มไฟล์จะเปลี่ยนเป็นกลุ่มล็อกอินของผู้ใช้USER:GROUP
- หากระบุทั้งผู้ใช้และกลุ่ม (โดยไม่มีการเว้นวรรคระหว่างผู้ใช้) ความเป็นเจ้าของผู้ใช้ของไฟล์จะเปลี่ยนเป็นผู้ใช้ที่กำหนดและความเป็นเจ้าของกลุ่มจะเปลี่ยนเป็นกลุ่มที่กำหนด:GROUP
- หากผู้ใช้ถูกละไว้และกลุ่มจะนำหน้าด้วยโคลอน:
เฉพาะความเป็นเจ้าของกลุ่มของไฟล์จะเปลี่ยนเป็นกลุ่มที่กำหนด:
หากมีเพียงโคลอน:
จะได้รับโดยไม่ระบุผู้ใช้และกลุ่มจะไม่มีการเปลี่ยนแปลงใด ๆ
ตามค่าเริ่มต้นความสำเร็จ
chown
จะไม่สร้างผลลัพธ์ใด ๆ และส่งกลับค่าศูนย์
ใช้
ls -l
เพื่อค้นหาว่าใครเป็นเจ้าของไฟล์หรือกลุ่มของไฟล์:
ls -l filename.txt
-rw-r--r-- 12 linuxize users 12.0K Apr 8 20:51 filename.txt |- | | | +-----------> Group +-------------------> Owner
เฉพาะผู้ใช้ root หรือผู้ใช้ที่มีสิทธิ์
sudo
เท่านั้นที่สามารถเปลี่ยนความเป็นเจ้าของกลุ่มของไฟล์ได้
วิธีการเปลี่ยนเจ้าของไฟล์
ในการเปลี่ยนเจ้าของไฟล์ให้ใช้คำสั่ง
chown
ตามด้วยชื่อผู้ใช้ของเจ้าของใหม่และไฟล์เป้าหมายเป็นอาร์กิวเมนต์:
chown USER FILE
ตัวอย่างเช่นคำสั่งต่อไปนี้จะเปลี่ยนความเป็นเจ้าของไฟล์ชื่อ
file1
เป็นเจ้าของใหม่ชื่อ
linuxize
:
chown linuxize file1
หากต้องการเปลี่ยนความเป็นเจ้าของไฟล์หรือไดเรกทอรีหลายรายการให้ระบุเป็นรายการที่คั่นด้วยช่องว่าง คำสั่งด้านล่างเปลี่ยนความเป็นเจ้าของไฟล์ชื่อ
file1
และไดเรกทอรี
dir1
เป็นเจ้าของใหม่ชื่อ
linuxize
:
chown linuxize file1 dir1
ID ผู้ใช้ที่เป็นตัวเลข (UID) สามารถใช้แทนชื่อผู้ใช้ ตัวอย่างต่อไปนี้จะเปลี่ยนความเป็นเจ้าของไฟล์ชื่อ
file2
เป็นเจ้าของใหม่ด้วย UID
1000
:
chown 1000 file2
หากมีเจ้าของตัวเลขเป็นชื่อผู้ใช้กรรมสิทธิ์จะถูกโอนไปยังชื่อผู้ใช้ เพื่อหลีกเลี่ยงคำนำหน้านี้ ID ด้วย
+
:
วิธีการเปลี่ยนเจ้าของและกลุ่มของไฟล์
ในการเปลี่ยนทั้งเจ้าของและกลุ่มของไฟล์ให้ใช้คำสั่ง
chown
ตามด้วยเจ้าของใหม่และกลุ่มที่คั่นด้วยโคลอน (:) โดยไม่มีการเว้นวรรคและไฟล์เป้าหมาย
chown USER:GROUP FILE
คำสั่งต่อไปนี้จะเปลี่ยนความเป็นเจ้าของไฟล์ชื่อ
file1
เป็นเจ้าของใหม่ชื่อ
linuxize
และ
users
กลุ่ม:
chown linuxize:users file1
หากคุณไม่ใช้ชื่อกลุ่มหลังเครื่องหมายโคลอน (:) กลุ่มของไฟล์จะถูกเปลี่ยนเป็นกลุ่มเข้าสู่ระบบของผู้ใช้ที่ระบุ:
วิธีการเปลี่ยนกลุ่มของไฟล์
ในการเปลี่ยนเฉพาะกลุ่มไฟล์ให้ใช้คำสั่ง
chown
ตามด้วยโคลอน (:) และชื่อกลุ่มใหม่ (โดยไม่มีช่องว่างระหว่างกัน) และไฟล์เป้าหมายเป็นอาร์กิวเมนต์:
chown:GROUP FILE
คำสั่งต่อไปนี้จะเปลี่ยนกลุ่มการเป็นเจ้าของไฟล์ชื่อ
file1
เป็น
www-data
:
chown:www-data file1
คำสั่งอื่นที่คุณสามารถใช้เพื่อเปลี่ยนความเป็นเจ้าของกลุ่มของไฟล์คือ
chgrp
วิธีการเปลี่ยนความเป็นเจ้าของลิงค์สัญลักษณ์
เมื่อไม่ใช้ตัวเลือกการเรียกซ้ำคำสั่ง
chown
จะเปลี่ยนความเป็นเจ้าของกลุ่มของไฟล์ที่ symlink ชี้ไม่ใช่ลิงก์สัญลักษณ์เอง
ตัวอย่างเช่นหากคุณพยายามเปลี่ยนเจ้าของและกลุ่มของสัญลักษณ์ลิงค์
symlink1
ที่ชี้ไปที่
/var/www/file1
chown
จะเปลี่ยนความเป็นเจ้าของไฟล์หรือไดเรกทอรีที่ symlink ชี้ไปที่:
chown www-data: symlink1
โอกาสที่จะเปลี่ยนความเป็นเจ้าของเป้าหมายคุณจะได้รับข้อผิดพลาด“ ไม่สามารถอ้างอิงได้ 'symlink1': ปฏิเสธการอนุญาต”
ข้อผิดพลาดเกิดขึ้นเนื่องจากโดยค่าเริ่มต้นบน symlink การกระจาย Linux ส่วนใหญ่ได้รับการคุ้มครองและคุณไม่สามารถทำงานกับไฟล์เป้าหมายได้ ตัวเลือกนี้มีการระบุไว้ใน
/proc/sys/fs/protected_symlinks
1
หมายถึงเปิดใช้งานและปิดใช้งาน
0
เราไม่แนะนำให้ปิดการใช้งานการป้องกัน symlink
ในการเปลี่ยนความเป็นเจ้าของกลุ่มของ symlink ให้ใช้ตัวเลือก
-h
:
วิธีการเปลี่ยนความเป็นเจ้าของไฟล์ซ้ำ
ในการเรียกใช้ซ้ำบนไฟล์และไดเรกทอรีทั้งหมดภายใต้ไดเรกทอรีที่กำหนดให้ใช้ตัวเลือก
-R
(
--recursive
):
chown -R USER:GROUP DIRECTORY
ตัวอย่างต่อไปนี้จะเปลี่ยนความเป็นเจ้าของไฟล์และไดเรกทอรีย่อยทั้งหมดภายใต้ไดเรกทอรี
/var/www
เป็นเจ้าของและกลุ่มใหม่ชื่อ
www-data
:
chown -R www-data: /var/www
หากไดเรกทอรีมีลิงก์สัญลักษณ์ผ่านตัวเลือก
-h
:
chown -hR www-data: /var/www
ตัวเลือกอื่น ๆ ที่สามารถใช้เมื่อเปลี่ยนความเป็นเจ้าของไดเรกทอรีซ้ำคือ
-H
และ
-L
หากอาร์กิวเมนต์ที่ส่งไปยังคำสั่ง
chown
เป็นลิงก์สัญลักษณ์ที่ชี้ไปยังไดเร็กทอรีอ็อพชัน
-H
จะทำให้คำสั่งสำรวจผ่าน
-L
บอกให้
chown
สำรวจแต่ละลิงก์สัญลักษณ์ไปยังไดเร็กทอรีที่พบ โดยปกติแล้วคุณไม่ควรใช้ตัวเลือกเหล่านี้เพราะคุณอาจทำให้ระบบของคุณสับสนหรือสร้างความเสี่ยงด้านความปลอดภัย
การใช้ไฟล์อ้างอิง
ตัวเลือก
--reference=ref_file
ช่วยให้คุณเปลี่ยนความเป็นเจ้าของผู้ใช้และกลุ่มของไฟล์ที่กำหนดให้เหมือนกับไฟล์อ้างอิงที่ระบุ (
ref_file
) หากไฟล์อ้างอิงเป็นลิงค์สัญลักษณ์
chown
จะใช้ผู้ใช้และกลุ่มของไฟล์เป้าหมาย
chown --reference=REF_FILE FILE
ตัวอย่างเช่นคำสั่งต่อไปนี้จะกำหนดผู้ใช้และกลุ่มความเป็นเจ้าของของ
file1
ให้กับ
file2
ข้อสรุป
chown
เป็นโปรแกรมอรรถประโยชน์บรรทัดคำสั่ง Linux / UNIX สำหรับเปลี่ยนผู้ใช้และ / หรือความเป็นเจ้าของกลุ่มของไฟล์
หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับคำสั่ง
chown
โปรดไปที่หน้า man chown หรือพิมพ์
man chown
ในเทอร์มินัลของคุณ
คำสั่ง linux พื้นฐาน
การรู้วิธีใช้บรรทัดคำสั่งจะมีประโยชน์มาก ในบทความนี้เราจะดำเนินการตามคำสั่ง Linux ที่ใช้บ่อยที่สุดที่ผู้ดูแลระบบ Linux ใช้เป็นประจำทุกวัน
คำสั่ง Chmod ใน linux (การอนุญาตไฟล์)
ใน Linux การเข้าถึงไฟล์นั้นได้รับการจัดการผ่านการอนุญาตไฟล์คุณสมบัติและความเป็นเจ้าของ บทช่วยสอนนี้ครอบคลุมถึงวิธีการใช้คำสั่ง chmod เพื่อเปลี่ยนสิทธิ์การเข้าถึงของไฟล์และไดเรกทอรี
คำสั่ง Chgrp ใน linux (เปลี่ยนกลุ่ม)
ใน Linux แต่ละไฟล์จะเชื่อมโยงกับเจ้าของและกลุ่มและมีสิทธิ์ที่กำหนดว่าผู้ใช้คนใดสามารถอ่านเขียนหรือดำเนินการไฟล์ คำสั่ง chgrpc เปลี่ยนความเป็นเจ้าของกลุ่มของไฟล์ที่กำหนด