0Pricing
DevOps Bootcamp · บทเรียน

ทำความเข้าใจสิทธิ์ไฟล์ (chmod, chown)

เรียนรู้เกี่ยวกับสิทธิ์ไฟล์ของ Linux วิธีที่สิทธิ์เหล่านี้ปกป้องข้อมูล และวิธีเปลี่ยนสิทธิ์โดยใช้ 'chmod' และ 'chown'

ทำความเข้าใจสิทธิ์ไฟล์ (chmod, chown) เป็นบทเรียน DevOps Bootcamp ฟรีบน CoddyKit นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน คุณสามารถอ่านบทเรียนทั้งหมดด้านล่างฟรี — จากนั้นลองปฏิบัติด้วยตัวคุณเองในเบราว์เซอร์พร้อมตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7 บทเรียนนี้เป็นส่วนหนึ่งของเส้นทางการเรียน DevOps Bootcamp และความก้าวหน้าของคุณจะซิงค์ข้ามเว็บและแอป CoddyKit คอร์ส DevOps Bootcamp มีบทเรียนทั้งหมด 4 บทเรียน

สิทธิ์ของไฟล์คืออะไร

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

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

อ่าน เขียน เรียกใช้ (rwx)

สิทธิ์พื้นฐานมี 3 ประเภท:

  • อ่าน (r): อนุญาตให้ดูเนื้อหาของไฟล์หรือแสดงรายการภายในไดเรกทอรี
  • เขียน (w): อนุญาตให้แก้ไขหรือลบไฟล์ หรือสร้างและลบไฟล์ภายในไดเรกทอรี
  • เรียกใช้ (x): อนุญาตให้เรียกใช้ไฟล์ (หากเป็นสคริปต์หรือโปรแกรม) หรือเข้าไปในไดเรกทอรี

ผู้ใช้ กลุ่ม ผู้ใช้อื่น (ugo)

สิทธิ์เหล่านี้ใช้กับผู้ใช้ 3 ประเภท:

  • ผู้ใช้ (u): เจ้าของไฟล์หรือไดเรกทอรี
  • กลุ่ม (g): ผู้ใช้ที่อยู่ในกลุ่มหลักของไฟล์
  • ผู้ใช้อื่น (o): ผู้ใช้คนอื่นทั้งหมดในระบบ
  • บางครั้งคุณจะเห็น 'a' ซึ่งหมายถึง 'ทั้งหมด' (ผู้ใช้ กลุ่ม และผู้ใช้อื่น)

ดูสิทธิ์ด้วย ls -l

คุณสามารถดูสิทธิ์ของไฟล์ได้โดยใช้คำสั่ง ls -l มาดูส่วนต่าง ๆ ของผลลัพธ์กัน:

-rwxr-xr-- 1 user group 1024 Jan 1 10:00 myfile.txt

  • อักขระตัวแรก (-) ระบุประเภทไฟล์ (- สำหรับไฟล์ทั่วไป และ d สำหรับไดเรกทอรี)
  • อักขระ 9 ตัวถัดไป (rwxr-xr--) แสดงสิทธิ์
ls -l important_doc.txt

ถอดรหัสชุดอักขระสิทธิ์

อักขระสิทธิ์ทั้ง 9 ตัวแบ่งเป็น 3 ชุด ชุดละ 3 ตัว:

  • ชุดที่ 1 (rwx): สิทธิ์สำหรับผู้ใช้ (เจ้าของ)
  • ชุดที่ 2 (r-x): สิทธิ์สำหรับกลุ่ม
  • ชุดที่ 3 (r--): สิทธิ์สำหรับผู้ใช้อื่น

ยัติภังค์ (-) หมายความว่าไม่ได้มอบสิทธิ์นั้นให้กับประเภทดังกล่าว

เปลี่ยนสิทธิ์ด้วย chmod

คำสั่ง chmod (change mode) ใช้สำหรับเปลี่ยนสิทธิ์ของไฟล์และไดเรกทอรี โดยมีวิธีใช้หลัก 2 แบบ:

  1. โหมดสัญลักษณ์: ใช้ตัวอักษรและสัญลักษณ์ (เช่น u+x)
  2. โหมดฐานแปด (ตัวเลข): ใช้ตัวเลข (เช่น 755)

chmod: การใช้โหมดสัญลักษณ์

โหมดสัญลักษณ์เข้าใจได้ง่าย คุณระบุประเภท (u, g, o, a) การดำเนินการ (+ เพื่อเพิ่ม, - เพื่อลบ, = เพื่อตั้งค่าให้ตรงทั้งหมด) และสิทธิ์ (r, w, x)

  • chmod u+x myscript.sh: เพิ่มสิทธิ์เรียกใช้ให้เจ้าของ
  • chmod g-w myfile.txt: ลบสิทธิ์เขียนออกจากกลุ่ม
  • chmod o=r-x mydir: ตั้งค่าให้ผู้ใช้อื่นอ่านได้อย่างเดียว โดยลบสิทธิ์เขียนออก
echo '#!/bin/bash\necho Hello' > script.sh
chmod u+x script.sh
ls -l script.sh

chmod: อธิบายโหมดฐานแปด

โหมดฐานแปดใช้ตัวเลขแทนสิทธิ์ โดยสิทธิ์แต่ละประเภทมีค่าดังนี้:

  • อ่าน (r): 4
  • เขียน (w): 2
  • เรียกใช้ (x): 1

ให้นำค่าเหล่านี้มาบวกกันสำหรับแต่ละประเภท (ผู้ใช้ กลุ่ม ผู้ใช้อื่น) ตัวอย่างเช่น rwx คือ 4+2+1=7 และ r-x คือ 4+0+1=5

chmod: ตัวอย่างโหมดฐานแปด

คุณระบุตัวเลข 3 หลักให้กับ chmod โดยแทนสิทธิ์ของผู้ใช้ กลุ่ม และผู้ใช้อื่นตามลำดับ

  • chmod 755 mydir: ผู้ใช้ได้ rwx (7) กลุ่มได้ r-x (5) ผู้ใช้อื่นได้ r-x (5) มักใช้กับไดเรกทอรี
  • chmod 644 myfile.txt: ผู้ใช้ได้ rw- (6) กลุ่มได้ r-- (4) ผู้ใช้อื่นได้ r-- (4) มักใช้กับไฟล์
touch report.txt
chmod 644 report.txt
ls -l report.txt

เปลี่ยนเจ้าของด้วย chown

คำสั่ง chown (change owner) ใช้เปลี่ยนผู้ใช้เจ้าของไฟล์หรือไดเรกทอรี โดยปกติคำสั่งนี้ต้องใช้สิทธิ์ผู้ดูแลระบบขั้นสูง (root)

chown newuser myfile.txt

คุณสามารถเปลี่ยนกลุ่มเจ้าของพร้อมกันได้ด้วย:

chown newuser:newgroup myfile.txt

touch testfile.txt
# sudo chown newuser testfile.txt
ls -l testfile.txt

ท้าทายเรื่องสิทธิ์

คุณมีไฟล์ชื่อ private_note.txt และต้องการตั้งสิทธิ์ดังนี้:

  • เจ้าของสามารถอ่านและเขียนได้
  • กลุ่มอ่านได้อย่างเดียว
  • ผู้ใช้อื่นไม่มีสิทธิ์ใด ๆ

คำสั่งใดต่อไปนี้จะทำตามที่ต้องการได้

สรุปและขั้นตอนถัดไป

ทำได้ดีมาก! คุณเข้าใจพื้นฐานสำคัญเกี่ยวกับสิทธิ์ของไฟล์ใน Linux แล้ว:

  • เข้าใจสิทธิ์อ่าน เขียน และเรียกใช้
  • เรียนรู้ประเภทผู้ใช้ กลุ่ม และผู้ใช้อื่น
  • ใช้ ls -l เพื่อดูสิทธิ์
  • ใช้ chmod ทั้งโหมดสัญลักษณ์และโหมดฐานแปดเพื่อเปลี่ยนสิทธิ์
  • เรียนรู้การใช้ chown เพื่อเปลี่ยนเจ้าของไฟล์

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

คำถามที่พบบ่อย

บทเรียน “ทำความเข้าใจสิทธิ์ไฟล์ (chmod, chown)” ฟรีหรือไม่

ใช่ — ข้อความเต็มของ “ทำความเข้าใจสิทธิ์ไฟล์ (chmod, chown)” ฟรีให้อ่านที่นี่บนเว็บ เพื่อปฏิบัติแบบโต้ตอบ (ตัวแก้ไขโค้ดในตัวและติวเตอร์ AI ตลอด 24/7) และปลดล็อคส่วนที่เหลือของคอร์ส DevOps Bootcamp ให้อัปเกรดเป็น CoddyKit PRO คอร์ส DevOps Bootcamp มีบทเรียนทั้งหมด 4 บทเรียน

คุณจะเรียนรู้อะไรในบทเรียน “ทำความเข้าใจสิทธิ์ไฟล์ (chmod, chown)”

เรียนรู้เกี่ยวกับสิทธิ์ไฟล์ของ Linux วิธีที่สิทธิ์เหล่านี้ปกป้องข้อมูล และวิธีเปลี่ยนสิทธิ์โดยใช้ 'chmod' และ 'chown' คุณปฏิบัติ DevOps Bootcamp ด้วยโค้ดที่ใช้งานได้จริงที่คุณเรียกใช้โดยตรงในเบราว์เซอร์ และติวเตอร์ AI ตลอด 24/7 ตอบคำถามของคุณขณะที่คุณไปผ่านบทเรียน

คุณต้องมีประสบการณ์ก่อนที่จะเริ่มเรียน DevOps Bootcamp หรือไม่

ไม่จำเป็นต้องมีประสบการณ์มาก่อน DevOps Bootcamp บน CoddyKit ออกแบบมาสำหรับผู้เริ่มต้นไปจนถึงผู้เรียนขั้นสูง คุณสามารถเริ่มต้นที่นี่หรือเริ่มจากตัวแรกและเรียนด้วยความเร็วของคุณเอง นี่คือบทเรียนที่ 2 จากทั้งหมด 4 บทเรียน

บทเรียน “ทำความเข้าใจสิทธิ์ไฟล์ (chmod, chown)” ใช้เวลานานแค่ไหน

บทเรียน CoddyKit ส่วนใหญ่ใช้เวลาประมาณ 5–10 นาที แต่ละบทเรียนจึงสั้นและเป็นแบบโต้ตอบ คุณสามารถก้าวหน้าอย่างต่อเนื่องและกลับมาเรียนต่อจากตรงที่เพิ่งหยุดบนเว็บและแอปได้เลย

ฉันเขียนและรันโค้ดในบทเรียน DevOps Bootcamp นี้ได้ไหม

ได้ บทเรียน DevOps Bootcamp ทุกบทมีตัวแก้ไขโค้ดในตัว คุณจึงเขียนและรันโค้ดจริงได้เลยในเบราว์เซอร์ และได้รับข้อเสนอแนะจาก AI ในทันที — ไม่ต้องติดตั้งในเครื่องของคุณ

บทเรียนทั้งหมดในหลักสูตรนี้

  1. การดูเนื้อหาไฟล์ (cat, less, head, tail)
  2. ทำความเข้าใจสิทธิ์ไฟล์ (chmod, chown)
  3. การค้นหาไฟล์ (find, grep)
  4. การสร้างลิงก์: ลิงก์ฮาร์ดและลิงก์สัญลักษณ์
← กลับไปที่ DevOps Bootcamp