คำสั่ง df (Disk Free) เป็นหนึ่งในคำสั่งพื้นฐานที่ขาดไม่ได้เลยสำหรับคนทำระบบ Linux/Unix ครับ หน้าที่ของมันตรงตัวมากคือ “ใช้เช็คพื้นที่ว่างของฮาร์ดดิสก์” ในระบบ
แต่บ่อยครั้งเวลาพิมพ์ df ลงไปดื้อ ๆ ค่าที่ได้กลับอ่านยากชวนปวดหัว เพราะมันแสดงผลเป็นหน่วยบล็อก (Blocks) วันนี้เราจะมาดูสรุปวิธีใช้งานแบบเข้าใจง่าย เอาไปใช้หน้างานได้ทันทีครับ
💡 คำสั่งที่ใช้บ่อยที่สุด (และควรรู้)
หากต้องการเช็คพื้นที่ดิสก์ทั่วไป ให้จำคำสั่งนี้ขึ้นใจเลยครับdf -h
-hย่อมาจาก Human-readable มันจะเปลี่ยนตัวเลขยาว ๆ ให้กลายเป็นหน่วยที่เราคุ้นเคย เช่น G (Gigabytes), M (Megabytes) ทำให้มองแวบเดียวก็รู้เรื่อง
🔍 วิธีอ่านผลลัพธ์ของ df -h
เมื่อรันคำสั่งแล้ว คุณจะเห็นตารางหน้าตาประมาณนี้
Filesystem Size Used Avail Use% Mounted on
/dev/sda1 40G 32G 6.4G 84% /
tmpfs 1.9G 0 1.9G 0% /dev/shm
/dev/sdb1 100G 20G 75G 22% /data
แต่ละคอลัมน์บอกอะไรเราบ้าง?
- Filesystem: ชื่อของพาร์ทิชันหรืออุปกรณ์เก็บข้อมูล (เช่น ฮาร์ดดิสก์, SSD)
- Size: ขนาดพื้นที่ทั้งหมดของพาร์ทิชันนั้น
- Used: พื้นที่ที่ถูกใช้งานไปแล้ว
- Avail: พื้นที่คงเหลือที่ยังใช้งานได้
- Use%: เปอร์เซ็นต์การใช้งาน (ถ้าทะลุ 90% เมื่อไหร่ ควรเริ่มเคลียร์ดิสก์ได้แล้วครับ)
- Mounted on: จุดเชื่อมต่อในระบบ (Directory ที่พาร์ทิชันนั้นไปฝังตัวอยู่ เช่น
/คือไดรฟ์หลัก,/dataคือไดรฟ์เก็บข้อมูลแยก)
🛠️ เทคนิคเสริมสำหรับการใช้งานจริง
เช็คเฉพาะโฟลเดอร์หรือไดรฟ์ที่สนใจ
ถ้าไม่อยากให้มันแสดงผลยาวเหยียดทุกพาร์ทิชัน สามารถระบุเส้นทาง (Path) ต่อท้ายได้เลย เช่นdf -h /data
เช็คสรุปพื้นที่ทั้งหมด (Total)
ถ้าอยากรู้ว่าดิสก์ทุกก้อนรวมกันแล้วเหลือเท่าไหร่ ให้เติมตัวเลือก -t (แต่พิมพ์เป็น --total) เพิ่มเข้าไปdf -h --total
(มันจะเพิ่มแถว total ไว้ล่างสุด สรุปตัวเลขรวมให้เสร็จสรรพ)
ระวังเรื่อง “Inodes” เต็ม (พื้นที่เหลือ แต่เขียนไฟล์ไม่ได้)
บางครั้งเราสั่ง df -h แล้วเห็นว่าพื้นที่ยังเหลือเพียบ แต่ระบบกลับฟ้องว่า “No space left on device” ปัญหามักเกิดจาก Inodes เต็ม (เกิดจากการมีไฟล์ขนาดเล็ก ๆ จำนวนมากเกินไปจนหมดโควตาจำนวนไฟล์) ให้เช็คด้วยคำสั่งนี้df -i
ถ้าคอลัมน์ IUse% เต็ม 100% แสดงว่าเป็นเพราะจำนวนไฟล์เกินโควตา ไม่ใช่เพราะขนาดไฟล์เต็มครับ
⚠️ ข้อควรระวัง
คำสั่ง df จะบอกภาพรวมของทั้งพาร์ทิชัน แต่ถ้าคุณอยากรู้เจาะลึกว่า “โฟลเดอร์ไหนหรือไฟล์ไหนแอบกินพื้นที่เยอะที่สุด” ต้องใช้คำสั่ง du (Disk Usage) ควบคู่ไปด้วยนะครับ เช่น du -sh *
อ่านเพิ่มเติม