ในระบบปฏิบัติการ Linux Server โดยเฉพาะงานดูแลระบบองค์กร ไม่ว่าจะเป็น Rocky Linux, Ubuntu Server หรือ Debian ปัญหาที่พบประจำคือ
“เว็บเข้าไม่ได้”, “Permission denied”, “อัปโหลดไฟล์ไม่ได้”, “Service อ่านไฟล์ config ไม่ได้”
ต้นเหตุส่วนใหญ่มาจาก File Permission และ Ownership ที่กำหนดไม่ถูกต้อง
บทความนี้จะอธิบาย rwx, chmod, chown แบบเข้าใจง่าย เห็นภาพ และสามารถนำไปใช้งานจริงได้ทันที
1️⃣ โครงสร้าง Permission ใน Linux คืออะไร?
รูปแบบที่เห็นจากคำสั่ง ls -l
แยกความหมายออกเป็นส่วน ๆ
2️⃣ ความหมายของ rwx
| ตัวอักษร | ความหมาย | ใช้กับไฟล์ | ใช้กับโฟลเดอร์ |
|---|---|---|---|
| r | read | อ่านไฟล์ | ดูรายชื่อไฟล์ |
| w | write | แก้ไขไฟล์ | สร้าง/ลบไฟล์ |
| x | execute | รันไฟล์ | เข้าไปใน directory |
ตัวอย่างสถานการณ์จริง
-
ถ้าเว็บ Apache อ่านไฟล์ไม่ได้ → ไม่มี
r -
ถ้าอัปโหลดไฟล์ไม่ได้ → ไม่มี
w -
เข้าโฟลเดอร์ไม่ได้ → ไม่มี
x
3️⃣ เลข 755, 644 มาจากไหน?
Linux ใช้เลขฐาน 8 (Octal)
| ค่า | ความหมาย |
|---|---|
| r = 4 | |
| w = 2 | |
| x = 1 |
รวมกันเป็นตัวเลข
| Permission | คำนวณ | ค่า |
|---|---|---|
| rwx | 4+2+1 | 7 |
| rw- | 4+2 | 6 |
| r-x | 4+1 | 5 |
| r– | 4 | 4 |
ตัวอย่างยอดนิยม
| ค่า | ความหมาย |
|---|---|
| 755 | rwxr-xr-x |
| 644 | rw-r–r– |
| 700 | rwx—— |
| 777 | rwxrwxrwx (อันตราย!) |
4️⃣ chmod คืออะไร?
chmod = change mode (เปลี่ยน permission)
ใช้แบบตัวเลข
ใช้แบบตัวอักษร
| ตัวอักษร | ความหมาย |
|---|---|
| u | user |
| g | group |
| o | others |
| a | all |
ตัวอย่างใช้งานจริง (งานเว็บเซิร์ฟเวอร์)
-
โฟลเดอร์ = 755
-
ไฟล์ = 644
นี่คือ Best Practice สำหรับ Web Server
5️⃣ chown คืออะไร?
chown = change owner
เปลี่ยนเจ้าของไฟล์
ตัวอย่าง
เปลี่ยน owner และ group พร้อมกัน
ทำไม chown สำคัญ?
เช่น Apache/Nginx ทำงานในชื่อ user:
-
www-data (Ubuntu/Debian)
-
apache (Rocky Linux / CentOS)
ถ้าไฟล์เป็นของ root → เว็บจะเขียนไฟล์ไม่ได้
6️⃣ ตัวอย่างเคสที่เจอบ่อยในงานจริง
ปัญหา: WordPress อัปโหลดรูปไม่ได้
สาเหตุ:
-
owner ไม่ใช่ www-data
-
ไม่มี write permission
วิธีแก้:
ปัญหา: รัน script ไม่ได้
สาเหตุ:
-
ไม่มี execute permission
แก้ไข:
7️⃣ สรุปภาพรวม
| คำสั่ง | ใช้ทำอะไร |
|---|---|
| ls -l | ดู permission |
| chmod | เปลี่ยนสิทธิ์ |
| chown | เปลี่ยนเจ้าของ |
8️⃣ เทคนิคจำง่ายสำหรับ SysAdmin
-
ไฟล์ทั่วไป → 644
-
โฟลเดอร์ → 755
-
Script → 755
-
อย่าใช้ 777 ถ้าไม่จำเป็น
-
Web Server ต้องเป็น owner ที่ service ใช้งาน
สรุป
Permission ใน Linux ไม่ได้ซับซ้อน ถ้าเข้าใจหลัก 3 อย่างนี้
-
rwx คืออะไร
-
ตัวเลข 755 มาจากไหน
-
chmod เปลี่ยนสิทธิ์
-
chown เปลี่ยนเจ้าของ
เมื่อเข้าใจ 4 เรื่องนี้ คุณจะสามารถแก้ปัญหา “Permission denied” ได้เกือบทั้งหมดในงานดูแลเซิร์ฟเวอร์จริง
สำหรับผู้ดูแลระบบมืออาชีพ การจัดการ Permission อย่างถูกต้อง คือพื้นฐานของความปลอดภัยและเสถียรภาพของระบบ




