PlusMagi's Blog By Pitt Phunsanit Linux,macOS,Operating Systems,Shell Script,system,technology,Windows คำสั่งตรวจสอบ Disk Space เชิงลึก: วิธีใช้ df -h และ du -sh บน Linux/macOS vs Get-Volume บน Windows

คำสั่งตรวจสอบ Disk Space เชิงลึก: วิธีใช้ df -h และ du -sh บน Linux/macOS vs Get-Volume บน Windows

ในโลกของการดูแลระบบไอทีและ DevOps ทรัพยากรที่สำคัญที่สุดอย่างหนึ่งคือพื้นที่จัดเก็บข้อมูล การปล่อยให้ดิสก์เต็มโดยไม่รู้ตัวไม่ใช่แค่ปัญหาเล็กน้อย แต่เป็นสาเหตุหลักของ Downtime, Build Failure, และประสิทธิภาพการทำงานของแอปพลิเคชันที่ลดลง การเข้าใจว่าคำสั่งใดใช้ตรวจสอบอะไรจึงเป็นทักษะพื้นฐานที่ขาดไม่ได้สำหรับวิศวกรทุกคน


เจาะลึกรายละเอียดและประเด็นสำคัญ

หัวใจของการตรวจสอบพื้นที่ดิสก์คือการแยกแยะระหว่าง “ระบบไฟล์” (Filesystem) และ “ขนาดของข้อมูลที่ถูกใช้จริง” (Actual Data Usage) คำสั่ง df (Disk Free) จะรายงานสถานะของระบบไฟล์ทั้งหมดว่าเหลือพื้นที่เท่าไหร่ ส่วนคำสั่ง du (Disk Usage) จะเจาะลึกเพื่อบอกว่าโฟลเดอร์หรือไฟล์ที่เราสนใจนั้นกินพื้นที่ไปมากน้อยแค่ไหน การเข้าใจความแตกต่างนี้ช่วยให้เราสามารถระบุได้ว่าปัญหาเกิดจากขีดจำกัดของระบบ หรือเกิดจากการสะสมข้อมูลในไดเรกทอรีใดไดเรกทอรีหนึ่ง

เมื่อพิจารณาถึงความแตกต่างระหว่างแพลตฟอร์ม เราจะพบว่าแต่ละ OS มีเครื่องมือเฉพาะตัวที่เหมาะสม เช่น บน Linux/macOS การใช้ df -h และ du -sh เป็นมาตรฐาน ในขณะที่ผู้ใช้งาน Windows ที่ทำงานในสภาพแวดล้อม PowerShell จะต้องใช้คำสั่ง Get-Volume เพื่อให้ได้ข้อมูลเชิงลึกของ Volume ต่างๆ ซึ่งการเลือกใช้เครื่องมือที่ถูกต้องตาม OS จึงเป็นสิ่งสำคัญอย่างยิ่งในการแก้ไขปัญหาได้อย่างตรงจุด

# Linux/macOS (ตรวจสอบระบบไฟล์)
df -h

# Linux/macOS (ตรวจสอบขนาดโฟลเดอร์ย่อยอย่างละเอียด)
du -sh /path/to/directory

# Windows PowerShell (ตรวจสอบ Volume ทั้งหมด)
Get-Volume | Select DriveLetter, FileSystemLabel, SizeRemaining, Size

การนำไปประยุกต์ใช้ในชีวิตและการทำงานยุคใหม่

  • การตรวจสอบ Build Agents ใน CI/CD: เมื่อระบบอัตโนมัติล้มเหลวเนื่องจากพื้นที่ดิสก์เต็ม การใช้คำสั่งเหล่านี้ช่วยให้เราสามารถเข้าถึงเซิร์ฟเวอร์ Build Agent เพื่อระบุได้ทันทีว่าปัญหาเกิดจากการสะสมของ Log Files หรือ Artifacts เก่าๆ ที่ไม่ได้ถูกทำความสะอาด
  • การแก้ไขปัญหา Performance Bottleneck: หากแอปพลิเคชันทำงานช้าลงอย่างผิดปกติ การตรวจสอบด้วยคำสั่งเหล่านี้จะช่วยให้เราทราบว่าพื้นที่ดิสก์ใกล้เต็มหรือไม่ ซึ่งอาจส่งผลกระทบต่อประสิทธิภาพของ I/O Operation และทำให้ระบบเกิดคอขวดได้

การเป็น System Administrator หรือ DevOps Engineer ที่เก่งกาจไม่ได้หมายถึงแค่การติดตั้งซอฟต์แวร์ใหม่เท่านั้น แต่ยังรวมถึงความสามารถในการวินิจฉัยปัญหาที่เกิดขึ้นอย่างรวดเร็วและแม่นยำ การเชี่ยวชาญคำสั่งพื้นฐานเหล่านี้จึงเปรียบเสมือนชุดเครื่องมือสำคัญที่ช่วยให้เรามั่นใจได้ว่าโครงสร้างพื้นฐานด้านไอทีจะทำงานได้อย่างมีเสถียรภาพตลอดเวลา


อ่านเพิ่มเติม