cPanel
Disk Quota คือขีดจำกัดพื้นที่เก็บข้อมูลที่ Hosting Provider กำหนดให้แต่ละ Account เมื่อ Disk Quota เต็ม เว็บไซต์จะไม่สามารถบันทึกไฟล์ใหม่ได้ ระบบ Email จะหยุดรับส่ง และ WordPress อาจแสดง Error ทันที สำหรับผู้ใช้ Shared Hosting ในไทย ปัญหา Disk เต็มพบได้บ่อยมาก โดยเฉพาะเว็บที่มีรูปภาพจำนวนมาก หรือรับ Email ปริมาณสูง
บทความนี้จะแนะนำวิธีตรวจสอบการใช้งาน Disk Quota ผ่าน cPanel ตั้งแต่ต้นจนจบ ทั้งการดูภาพรวม วิเคราะห์โฟลเดอร์ที่กินพื้นที่ ไปจนถึงการตัดสินใจว่าควร Upgrade Plan หรือยังจัดการเองได้
ดู Disk Usage ปัจจุบันใน cPanel
ทันทีที่ Login เข้า cPanel คุณจะเห็น Summary ของ Disk Usage ที่มุมขวาหน้า Dashboard หรือในส่วน "Statistics" แสดงเป็น Progress Bar สีเขียว/เหลือง/แดง ขึ้นอยู่กับเปอร์เซ็นต์ที่ใช้ไป ตัวเลขนี้คือภาพรวมของพื้นที่ทั้งหมดที่ Account ใช้งานอยู่ รวมทั้งไฟล์เว็บ อีเมล ฐานข้อมูล และ Backup
วิธีดู Disk Usage แบบละเอียดใน cPanel มีขั้นตอนดังนี้:
- Login เข้า cPanel ที่ yourdomain.com/cpanel หรือ yourdomain.com:2083
- มองหาส่วน "Files" แล้วคลิก Disk Usage
- หน้าจะแสดงกราฟ Bar แนวนอน แสดงขนาดของแต่ละโฟลเดอร์
- ดูที่คอลัมน์ขวาจะเห็นขนาดเป็น MB หรือ GB
- เรียงลำดับโดยคลิก "Size" เพื่อหาโฟลเดอร์ที่ใหญ่ที่สุด
นอกจาก Disk Space แล้ว ยังมีค่าสำคัญอีกตัวที่ต้องดูคือ Inode ซึ่งคือจำนวนไฟล์และโฟลเดอร์รวมกัน Hosting บางแพ็คเกจกำหนด Inode สูงสุดไว้ที่ 100,000-250,000 ถ้า Inode เต็มก่อน Disk Space เต็ม ก็จะสร้างไฟล์ใหม่ไม่ได้เช่นกัน ซึ่งผู้ใช้ WordPress หลายคนพบปัญหานี้โดยไม่รู้ตัว
| ตัวชี้วัด | ความหมาย | ผลกระทบเมื่อเต็ม |
|---|---|---|
| Disk Quota | พื้นที่เก็บข้อมูล (GB/MB) | ไม่สามารถ Upload หรือบันทึกไฟล์ใหม่ได้ |
| Inode | จำนวนไฟล์ทั้งหมด | สร้างไฟล์ใหม่ไม่ได้แม้ Disk ยังว่าง |
| Mailbox Quota | พื้นที่กล่องอีเมลแต่ละบัญชี | ไม่รับอีเมลใหม่ ผู้ส่งได้รับ Bounce |
| Database Size | ขนาด MySQL Database | ไม่สามารถเพิ่มข้อมูลในฐานข้อมูลได้ |
ใช้ Disk Usage Viewer วิเคราะห์โฟลเดอร์
cPanel มีเครื่องมือชื่อ Disk Usage ที่ให้คุณดูรายละเอียดการใช้พื้นที่แยกตามโฟลเดอร์ได้อย่างชัดเจน เครื่องมือนี้จะแสดง Bar Chart แนวนอน เรียงจากโฟลเดอร์ที่ใหญ่ที่สุดลงมา ช่วยให้หาต้นเหตุของ Disk เต็มได้ง่ายขึ้นมาก
โฟลเดอร์ที่มักกินพื้นที่มากที่สุดในบัญชี Hosting ทั่วไปได้แก่:
- public_html/wp-content/uploads/ — รูปภาพและไฟล์ที่ Upload ผ่าน WordPress
- mail/ — กล่องจดหมายอีเมลของทุก Account
- public_html/wp-content/cache/ — ไฟล์ Cache ของ Plugin ต่างๆ
- backups/ หรือ backup/ — ไฟล์สำรองที่สร้างโดย cPanel หรือ Plugin
- logs/ — Log ไฟล์จาก Apache/PHP ที่สะสมนานๆ
- tmp/ — ไฟล์ชั่วคราวที่บางครั้งไม่ถูกลบออกเอง
วิธีใช้ Disk Usage Viewer เพื่อ Drill Down ลงไปในโฟลเดอร์ ให้คลิกชื่อโฟลเดอร์ในตาราง ระบบจะแสดงเนื้อหาภายในแบบ Recursive ทำให้หาไฟล์ขนาดใหญ่ที่ซ่อนอยู่ลึกๆ ได้ง่ายขึ้น สำหรับโฟลเดอร์ logs/ หากพบว่าขนาดใหญ่ผิดปกติ (เกิน 500MB) ให้ติดต่อ Hosting Support เพื่อขอ Rotate Log หรือขอให้ลบ Log เก่า
ลบ Email ขนาดใหญ่ใน cPanel Webmail
Email เป็นหนึ่งในสาเหตุหลักที่ทำให้ Disk Quota เต็ม โดยเฉพาะอีเมลที่มีไฟล์แนบขนาดใหญ่ เช่น PDF รายงาน รูปภาพ หรือไฟล์ ZIP ที่ถูกส่งมาหลายสิบหรือหลายร้อยฉบับ สะสมไปเรื่อยๆ โดยไม่มีการลบออก กินพื้นที่ Hosting ได้อย่างรวดเร็ว
วิธีลบ Email ขนาดใหญ่ผ่าน cPanel Webmail (Roundcube):
- Login เข้า cPanel แล้วคลิก Email Accounts
- คลิก Check Email หรือเข้า Webmail ที่ yourdomain.com/webmail
- ใน Roundcube ให้คลิก "Email" ที่ Column Header เพื่อ Sort ตามขนาด
- เลือกอีเมลที่มีขนาดใหญ่ที่สุด แล้วกด Delete
- สำคัญ: ต้องเข้าโฟลเดอร์ Trash แล้วกด Empty Trash ด้วย
- ตรวจ Spam/Junk ด้วย อีเมล Spam ที่สะสมนานก็กินพื้นที่เช่นกัน
นอกจากนี้ คุณสามารถตั้งค่า Mailbox Quota ให้แต่ละ Email Account ใน cPanel ได้ด้วย เพื่อป้องกันไม่ให้บัญชีใดบัญชีหนึ่งกินพื้นที่มากเกินไป โดยไปที่ Email Accounts แล้วคลิก Edit ที่บัญชีที่ต้องการ จะมีช่อง "Quota" ให้กำหนดขนาดสูงสุดเป็น MB
ลบ Backup เก่าออกจาก Disk
Backup ไฟล์คือตัวการใหญ่ที่กินพื้นที่ Hosting โดยที่เจ้าของเว็บไม่รู้ตัว เพราะ cPanel จะสร้าง Backup อัตโนมัติตามที่ Hosting Provider ตั้งค่าไว้ บวกกับ Backup Plugin ของ WordPress เช่น UpdraftPlus หรือ BackWPup ที่ตั้งค่าเก็บ Backup ไว้ใน Hosting เอง ทำให้พื้นที่หมดไปโดยไม่จำเป็น
วิธีหาและลบ Backup เก่าผ่าน cPanel File Manager:
- เข้า cPanel แล้วคลิก File Manager
- ตรวจโฟลเดอร์ต่อไปนี้: backups/, backup/, public_html/wp-content/backups/
- ดูไฟล์นามสกุล .tar.gz, .zip, .sql.gz ที่มีวันที่เก่าในชื่อไฟล์
- เลือกไฟล์ที่เก่าเกิน 30 วัน แล้วกด Delete (เลือก Skip Trash เพื่อลบทันที)
- สำหรับ Backup Plugin ใน WordPress ให้แก้การตั้งค่าให้เก็บ Backup สูงสุด 2-3 ชุด
คำแนะนำที่ดีที่สุดคือ ตั้งค่า WordPress Backup Plugin ให้ส่ง Backup ไปเก็บที่ Google Drive, Dropbox, หรือ Amazon S3 แทนการเก็บไว้บน Hosting โดยตรง วิธีนี้ทำให้ Backup ปลอดภัยกว่า (ถ้า Server ล่ม ข้อมูลยังอยู่) และไม่กิน Disk Quota อีกด้วย
- UpdraftPlus: ตั้งใน Settings > UpdraftPlus Backups > Remote Storage
- BackWPup: Settings > Jobs > To: เลือก Dropbox/Google Drive
- Duplicator: เลือก Storage > Add New > Cloud Storage
จัดการ WordPress Media Library ที่โตเกิน
WordPress Media Library คือโฟลเดอร์ public_html/wp-content/uploads/ ที่เก็บรูปภาพและไฟล์ทุกอย่างที่ Upload ผ่าน WordPress ปัญหาคือทุกครั้งที่ Upload รูป WordPress จะสร้างรูปหลายขนาดโดยอัตโนมัติ (Thumbnail, Medium, Large, Full) ทำให้จำนวนไฟล์จริงในระบบมากกว่าจำนวนรูปที่คุณเห็นใน Media Library 4-6 เท่า
วิธีตรวจสอบและจัดการ Media Library ที่โตเกิน:
- ตรวจสอบด้วย Disk Usage Viewer: ดูขนาดโฟลเดอร์ uploads/ แยกตามปี/เดือน
- ลบรูปที่ไม่ได้ใช้งาน: ใช้ Plugin "Media Cleaner" หรือ "WP-Sweep" ตรวจหา Orphaned Media
- Optimize รูปที่มีอยู่: Plugin "Smush" หรือ "ShortPixel" บีบอัดรูปเก่าโดยไม่เสียคุณภาพ
- เปลี่ยน Format เป็น WebP: รูป WebP เล็กกว่า JPEG/PNG ได้ถึง 30-50%
- กำหนดขนาด Upload สูงสุด: ไปที่ Settings > Media กำหนดขนาดสูงสุดที่สมเหตุสมผล
สำหรับเว็บที่มีรูปมากกว่า 500-1,000 รูป แนะนำให้พิจารณาใช้ CDN (Content Delivery Network) เช่น Cloudflare Images หรือ BunnyCDN เพื่อย้ายการเก็บรูปออกจาก Hosting ไปไว้บน CDN Server แทน ทำให้ Disk Quota บน Hosting ลดลงอย่างมีนัยสำคัญ และเว็บโหลดเร็วขึ้นด้วย เพราะรูปถูก Serve จาก Server ที่ใกล้ผู้ใช้ที่สุด
Plugin ที่ช่วย Offload Media ไปยัง CDN/Cloud Storage ที่ใช้ได้ดีบน WordPress ได้แก่:
- WP Offload Media — ย้ายไฟล์ไป Amazon S3, Google Cloud, DigitalOcean Spaces
- Cloudflare Stream — สำหรับไฟล์วิดีโอโดยเฉพาะ
- BunnyCDN Storage — ราคาถูก ใช้งานง่าย เหมาะสำหรับเว็บไทย
เมื่อไหร่ควร Upgrade Hosting Plan
การจัดการ Disk Quota เป็นเรื่องที่ทำได้เองในระยะสั้น แต่ถ้าเว็บโตขึ้นเรื่อยๆ สักวันก็จะถึงจุดที่การลบไฟล์ไม่เพียงพออีกต่อไป คำถามสำคัญคือ เมื่อไหร่ถึงจะถึงเวลา Upgrade Hosting Plan?
สัญญาณที่บอกว่าควรพิจารณา Upgrade Plan:
- Disk ใช้งานเกิน 80% เป็นประจำแม้จะล้างไฟล์แล้ว
- ต้องลบ Backup เก่าบ่อยกว่าทุก 2 สัปดาห์
- มีการ Upload สินค้าหรือรูปภาพใหม่เพิ่มขึ้นทุกเดือน
- มี Email Account หลายบัญชีที่รับอีเมลปริมาณสูงทุกวัน
- ต้องการเก็บ Backup ไว้ใน Hosting นานกว่า 30 วัน
- มีแผนเพิ่ม Subdomain หรือเว็บใหม่ในอนาคต
ก่อนตัดสินใจ Upgrade ให้ดูที่ตัวเลข Disk ใช้งานปัจจุบัน บวกกับ Growth Rate ต่อเดือน หากใช้ 10GB จาก 20GB และเพิ่มขึ้น 500MB ต่อเดือน ก็หมายความว่าอีก 20 เดือนก็จะเต็มแล้ว การ Upgrade ล่วงหน้า 6 เดือนก่อนที่ Disk จะเต็มจะช่วยให้มีเวลาวางแผนและไม่กระทบเว็บที่ให้บริการอยู่
| ระดับการใช้งาน | ขนาด Disk ที่แนะนำ | Plan ที่เหมาะสม |
|---|---|---|
| เว็บ Blog เล็กๆ, ไม่มีรูปมาก | 5-10 GB | Shared Hosting พื้นฐาน |
| เว็บ SME, มีรูปสินค้า, อีเมล 5-10 บัญชี | 20-50 GB | Shared Hosting Standard |
| ร้านค้าออนไลน์, รูปมาก, ทีมงาน | 50-100 GB | Business Hosting หรือ Cloud |
| Multi-site, ทราฟฟิกสูง, Backup หลายชุด | 100 GB+ | VPS หรือ Dedicated Server |
ตรวจสอบว่า ตรวจสอบ Disk Usage หลังจัดการ
หลังจากลบไฟล์และทำความสะอาด Disk แล้ว ควรตรวจสอบอีกครั้งเพื่อยืนยันว่าพื้นที่ลดลงจริง คุณสามารถใช้ cPanel Terminal (ถ้า Hosting เปิดให้ใช้) หรือตรวจสอบผ่านหน้า Disk Usage Viewer ใน cPanel
ตัวอย่าง Command ที่มีประโยชน์ใน cPanel Terminal หรือ SSH:
# ดูขนาด Disk ที่ใช้งานทั้งหมดใน Home Directory
du -sh ~/
# ดูขนาดของแต่ละโฟลเดอร์ในระดับแรก เรียงจากใหญ่ไปเล็ก
du -sh ~/* | sort -rh | head -20
# ดูขนาดโฟลเดอร์ uploads ของ WordPress แยกตามปี
du -sh ~/public_html/wp-content/uploads/*/
# นับจำนวน Inode ที่ใช้ไป (ทั้ง Home Directory)
find ~/ -maxdepth 5 | wc -l
# หาไฟล์ขนาดใหญ่กว่า 50MB ใน Home Directory
find ~/ -type f -size +50M -exec ls -lh {} \; 2>/dev/null | sort -k5 -rh | head -10
สำหรับการตรวจสอบ Inode Usage ใน cPanel ให้ไปที่ Disk Usage แล้วดูคอลัมน์ "Inodes" ซึ่งจะแสดงจำนวนไฟล์ที่ใช้ไปเทียบกับ Quota ที่กำหนด ถ้า Inode ใกล้เต็ม แม้ Disk Space จะยังว่าง ก็จะสร้างไฟล์ใหม่ไม่ได้ ซึ่งมักเกิดจากการมีไฟล์ขนาดเล็กจำนวนมาก เช่น Cache ไฟล์ของ Plugin หรือ Session ไฟล์เก่า
แก้ปัญหาที่พบบ่อย
Disk เต็ม แต่ Disk Viewer แสดงว่ายังมีพื้นที่ว่าง — Inode เต็ม ไม่ใช่ Disk
ปัญหานี้พบบ่อยมากในเว็บ WordPress ที่ใช้ Plugin Cache หรือ Plugin ที่สร้างไฟล์ขนาดเล็กจำนวนมาก เช่น WooCommerce Log Files, WordPress Session Files, หรือ Plugin ที่ Generate ไฟล์ CSS/JS แยกต่างหากทุกครั้งที่มีการเปลี่ยนแปลง วิธีแก้คือลบ Cache ทั้งหมดผ่าน Plugin Cache Manager หรือลบไฟล์ในโฟลเดอร์ wp-content/cache/ และ /tmp/ ผ่าน File Manager ใน cPanel
ลบไฟล์แล้วแต่ Disk ไม่ลด — File อยู่ใน Trash/Email ยังไม่ได้ Purge
เมื่อลบไฟล์ผ่าน cPanel File Manager โดยไม่ได้เลือก "Skip Trash" ไฟล์จะถูกย้ายไปที่โฟลเดอร์ .trash ใน Home Directory แทนที่จะลบทันที เช่นเดียวกันกับการลบอีเมลใน Webmail ที่จะย้ายไปที่ Trash ก่อน วิธีแก้คือเข้า File Manager แล้วลบโฟลเดอร์ .trash และเข้า Webmail แล้ว Empty Trash/Spam ทั้งหมด จากนั้นรอ 5-10 นาทีแล้ว Refresh cPanel
Email ใหม่ไม่รับได้ — Mailbox Quota เต็ม ต้องลบอีเมลเก่าใน Webmail
Mailbox Quota แต่ละบัญชีอีเมลถูกกำหนดแยกจาก Disk Quota รวม เมื่อ Mailbox Quota เต็ม บัญชีอีเมลนั้นจะไม่รับอีเมลใหม่ และผู้ส่งจะได้รับ Bounce Message กลับไป วิธีแก้ในระยะสั้นคือ Login เข้า Webmail ลบอีเมลเก่าและ Empty Trash และวิธีแก้ระยะยาวคือเพิ่ม Mailbox Quota ใน cPanel > Email Accounts > Edit หรือตั้ง Auto-Forward อีเมลไปยัง Gmail/Outlook แล้วลบออกจาก Server
cPanel แสดง 100% แต่เว็บยังทำงานได้ — Grace Period ก่อน Suspend
Hosting Provider ส่วนใหญ่มี Grace Period หรือ Buffer เล็กๆ ก่อนที่จะ Suspend Account ทันทีที่ Disk เต็ม 100% ทำให้เว็บยังทำงานได้ชั่วคราว แต่อาจไม่สามารถสร้างหรือแก้ไขไฟล์ได้แล้ว ควรรีบดำเนินการลบไฟล์ที่ไม่จำเป็นหรือ Upgrade Plan ทันที เพราะ Grace Period มักสั้นมาก และเมื่อ Hosting Suspend Account เว็บจะไม่ทำงานจนกว่าจะแก้ปัญหา
คำถามที่พบบ่อย
Disk Quota คือขีดจำกัดพื้นที่เก็บข้อมูลวัดเป็น GB หรือ MB ส่วน Inode คือจำนวนไฟล์และโฟลเดอร์รวมกันที่อนุญาตให้มีได้ใน Account สองอย่างนี้เป็นอิสระจากกัน เว็บของคุณอาจมี Disk Space เหลือพอสมควร แต่ถ้า Inode เต็มก่อน ก็จะสร้างไฟล์ใหม่ไม่ได้เลย ในทางปฏิบัติ Inode มักเป็นปัญหาก่อน Disk สำหรับ WordPress Site ที่ใช้ Plugin Cache หรือ Plugin ที่สร้างไฟล์เล็กๆ จำนวนมาก ทั้งสองตัวสำคัญเท่ากัน ต้องดูแลทั้งคู่
อีเมลธรรมดาไม่มีไฟล์แนบกินพื้นที่น้อยมาก ประมาณ 20-50 KB ต่อฉบับ แต่อีเมลที่มีไฟล์แนบ PDF รายงาน 5-10 MB ต่อฉบับ รับวันละ 20 ฉบับ = 200 MB ต่อวัน หรือ 6 GB ต่อเดือน ซึ่งมากกว่าเว็บ Blog เล็กๆ ทั้งเว็บ หลายธุรกิจพบว่าโฟลเดอร์ mail/ ใหญ่กว่าโฟลเดอร์ public_html/ หลายเท่า แนะนำให้ใช้ Gmail Workspace หรือ Microsoft 365 สำหรับ Business Email แทนที่จะใช้ Email ที่มากับ Hosting เพื่อแยก Storage ออกจากกัน
เมื่อ Disk Quota เต็ม 100% ผลที่เกิดขึ้นทันทีคือไม่สามารถบันทึกไฟล์ใหม่ได้ WordPress จะแสดง Error เมื่อพยายาม Upload รูปหรือบันทึกบทความ ระบบอีเมลจะไม่รับอีเมลใหม่ และ Database อาจไม่สามารถเพิ่มข้อมูลได้ เว็บอาจยังแสดงผลได้ชั่วคราวเพราะ HTML/CSS/JS ยังอ่านได้ แต่ไม่สามารถ Write ได้ Hosting บางรายจะ Suspend Account หลังจาก Disk เต็มนาน 24-48 ชั่วโมง ดังนั้นควรรีบแก้ไขทันทีเมื่อเห็นว่า Disk ใช้เกิน 90%