ไฟล์ขยะกินพื้นที่เซิร์ฟเวอร์? วิธีจัดการบนทุก OS ให้เครื่องเร็วขึ้นทันที
ไฟล์ขยะหรือ Temporary Files เป็นสิ่งที่สะสมในเครื่องโดยที่เราไม่รู้ตัว ทั้ง Cache, Log เก่า, ไฟล์ชั่วคราวจากการติดตั้งซอฟต์แวร์ และไฟล์ที่ลบแล้วแต่ยังค้างอยู่ใน Recycle Bin พอสะสมมากเข้า Disk ก็เริ่มเต็ม เครื่องทำงานช้าลง และที่แย่ที่สุดคือบริการสำคัญอาจหยุดทำงานเพราะพื้นที่ไม่พอ
โดยเฉพาะบน VPS และ Dedicated Server ของ DriteStudio ที่ต้องทำงานตลอด 24 ชั่วโมง การลบไฟล์ขยะเป็นประจำเป็นเรื่องที่ขาดไม่ได้เลย
ลบไฟล์ขยะบน Linux Server
ล้างไฟล์ชั่วคราวใน /tmp
โฟลเดอร์ /tmp เป็นที่สะสมไฟล์ชั่วคราวจากแอปพลิเคชันต่าง ๆ ระบบ Linux จะล้างโฟลเดอร์นี้เมื่อรีบูต แต่สำหรับเซิร์ฟเวอร์ที่ทำงานต่อเนื่องเป็นเดือน ๆ ไฟล์เหล่านี้จะสะสมมากขึ้นเรื่อย ๆ ใช้คำสั่ง find ร่วมกับ -mtime เพื่อลบเฉพาะไฟล์ที่เก่าเกินกำหนด
จัดการ Log Files ด้วย logrotate
Log Files เป็นตัวกินพื้นที่ตัวฉกาจบนเซิร์ฟเวอร์ โดยเฉพาะ Log ของ Web Server และ Application ต่าง ๆ ใช้ logrotate ซึ่งมาพร้อมกับ Linux เพื่อหมุนเวียน บีบอัด และลบ Log เก่าโดยอัตโนมัติ ตั้งค่าที่เหมาะสมจะช่วยป้องกัน Log กินพื้นที่จนล้น ขณะเดียวกันก็เก็บไว้นานพอสำหรับตรวจสอบปัญหาย้อนหลัง
ล้าง Package Cache
เมื่อติดตั้งหรืออัปเดตซอฟต์แวร์ผ่าน Package Manager ไฟล์แพ็กเกจที่ดาวน์โหลดมาจะถูกเก็บไว้ใน Cache สำหรับ Debian/Ubuntu ใช้ apt clean เพื่อล้าง Cache ทั้งหมด หรือ apt autoclean เพื่อลบเฉพาะแพ็กเกจที่ล้าสมัย ส่วน CentOS/RHEL ใช้ yum clean all
ลบ Kernel เก่าและ Docker ที่ไม่ใช้
Kernel เวอร์ชันเก่าที่ไม่ใช้แล้วกินพื้นที่ไม่น้อย ลบได้แต่ควรเก็บ Kernel ก่อนหน้าไว้อย่างน้อย 1 เวอร์ชัน สำหรับเซิร์ฟเวอร์ที่ใช้ Docker ให้ใช้ docker system prune เพื่อล้าง Images, Container ที่หยุดทำงาน และ Volume ที่ไม่ใช้แล้วในครั้งเดียว
Total reclaimed space: 0B
ลบไฟล์ขยะบน Windows
Disk Cleanup
Windows มี Disk Cleanup ในตัว เปิดโดยพิมพ์ Disk Cleanup ในช่องค้นหา เลือกไดรฟ์ที่ต้องการ แล้วเลือกประเภทไฟล์ที่จะลบ ทั้ง Temporary Files, Recycle Bin, Windows Update Cleanup และ Delivery Optimization Files
Storage Sense
Windows 10 ขึ้นไปมี Storage Sense ที่ลบไฟล์ขยะให้อัตโนมัติตามกำหนดเวลา ตั้งค่าได้ให้ลบไฟล์ใน Recycle Bin ที่ค้างนาน ลบไฟล์ชั่วคราวที่ไม่ได้ใช้ และลบไฟล์ใน Downloads ที่เก่าเกินไป สะดวกมากสำหรับคนที่ไม่อยากจำต้องล้างเอง
ล้าง Windows Update Cache
ไฟล์อัปเดต Windows ที่ดาวน์โหลดมาจะเก็บไว้ในโฟลเดอร์ SoftwareDistribution หลังติดตั้งสำเร็จแล้วลบได้อย่างปลอดภัย แค่หยุด Windows Update Service ก่อน แล้วจึงลบเนื้อหาในโฟลเดอร์
ลบไฟล์ขยะบน macOS
Optimize Storage
macOS มี Optimize Storage ช่วยจัดการพื้นที่อัตโนมัติ เข้าถึงผ่าน System Settings เลือก General แล้วเลือก Storage ระบบจะแสดงคำแนะนำในการเพิ่มพื้นที่ว่าง
ล้าง Cache ผ่าน Terminal
สำหรับผู้ใช้ขั้นสูง ล้าง Cache ของผู้ใช้ได้ที่ ~/Library/Caches และ Cache ของระบบที่ /Library/Caches ใช้คำสั่ง rm -rf ร่วมกับชื่อโฟลเดอร์ Cache ที่ต้องการลบ แต่ระวังอย่าลบผิดโฟลเดอร์
ตั้งค่าลบไฟล์ขยะอัตโนมัติ
ใช้ Cron Job บน Linux
ตั้ง Cron Job ให้ลบไฟล์ขยะตามกำหนดเวลาโดยอัตโนมัติ เช่น ลบไฟล์ชั่วคราวที่เก่ากว่า 7 วัน หรือลบ Log เก่ากว่า 30 วัน วิธีนี้ช่วยไม่ต้องจำว่าต้องมาล้างเอง และป้องกัน Disk เต็มกะทันหัน
เครื่องมือ Third-Party
สำหรับ Linux มี BleachBit ที่เป็นโอเพนซอร์สใช้งานง่าย ส่วน Windows มี CCleaner ที่ได้รับความนิยม เครื่องมือเหล่านี้ช่วยค้นหาและลบไฟล์ขยะได้ครอบคลุมกว่าเครื่องมือในตัว
ข้อควรระวังก่อนลบไฟล์ขยะ
ก่อนลบอะไรก็ตาม สำรองข้อมูลสำคัญก่อนเสมอ ตรวจสอบว่าไม่ได้ลบไฟล์ที่ระบบยังต้องใช้ อย่าลบ Log ที่ยังไม่ได้ตรวจสอบ และอย่าแตะไฟล์ในโฟลเดอร์ระบบโดยไม่รู้ว่ามันคืออะไร การรักษาความปลอดภัยของระบบรวมถึงการระวังไม่ให้ลบไฟล์สำคัญโดยไม่ตั้งใจด้วย
คำถามที่พบบ่อย (FAQ)
ลบไฟล์ขยะบ่อยแค่ไหนถึงจะดี?
สำหรับเซิร์ฟเวอร์แนะนำให้ตั้ง Cron Job ลบอัตโนมัติทุกสัปดาห์ สำหรับคอมพิวเตอร์ส่วนตัวอย่างน้อยเดือนละครั้ง หรือเมื่อเห็นว่าพื้นที่ Disk เหลือน้อยกว่า 20%
ลบไฟล์ขยะแล้วเครื่องจะเร็วขึ้นจริงไหม?
ถ้า Disk เต็มจนเหลือพื้นที่น้อยมาก การลบไฟล์ขยะจะช่วยให้เครื่องเร็วขึ้นอย่างเห็นได้ชัด เพราะระบบต้องการพื้นที่ว่างสำหรับ Swap File, Temporary Files และ Cache ต่าง ๆ
ลบ Docker Images เก่าปลอดภัยไหม?
ปลอดภัย ถ้าลบเฉพาะ Images ที่ไม่ได้ใช้งานแล้ว คำสั่ง docker system prune จะลบเฉพาะ Resources ที่ไม่มี Container อ้างอิงอยู่ แต่ถ้าเพิ่ม flag -a จะลบ Images ที่ไม่มี Container ใช้งานทั้งหมด ควรระวังถ้ามี Images ที่ยังต้องการอยู่
สรุป
การลบไฟล์ขยะเป็นประจำเป็นส่วนสำคัญของการดูแลระบบ ช่วยเพิ่มพื้นที่ Disk และทำให้เซิร์ฟเวอร์ทำงานได้ดีขึ้น ตั้งค่าลบอัตโนมัติเพื่อลดภาระการดูแล สำหรับผู้ที่ใช้โฮสติ้งหรือ Colocation ของ DriteStudio ควรตรวจสอบพื้นที่ Disk อย่างสม่ำเสมอ ติดต่อทีมงาน DriteStudio เพื่อรับคำปรึกษาเรื่องการดูแลเซิร์ฟเวอร์ได้เลย