วันศุกร์ที่ 20 สิงหาคม พ.ศ. 2553

ประสบการณ์ /var เต็ม

ตอนนี้พอไปตรวจสอบเครื่อง เซิฟเวอร์พบว่า /var มันจะเต็ม อืม...ตอนแรกๆก็นึกว่า เราแบ่ง partition น้อยไปหรือเปล่า เออ เราก็ไม่น่าจะพลาดขนาดนั้นนะ.... พออ่านตัวเลขขนาด partition ดีๆอีกที เฮ้ย! /var อย่างเดียวมันตั้ง 20 กว่า กิ๊ก เป็นเรื่องหล่ะ

อะไรที่มันใช้เนื้อที่ใน /var มากขนาดนั้น

/var/db/mysql <- ผู้ต้องสงสัยแรก
/var/log/apache-log หรือ /var/log/nginx/access-log , error.log <- ผู้ต้องสงสัยรายที่ 2

ก็ลองเลย ย้าย 2 ผู้ต้องสงสัยไปไว้ที่ /usr/home/ เราแทน เฮ้ย ทำไมพื้นที่มันยังไม่ลดลงอย่างที่คาดการณ์

ก็ลองหาดู folder ไหนที่มันกินเนื้อที่เยอะๆ บ้าง

/var/spool/clientmqueue <- ต้นเหตุ

กรณีจะไปโทษว่าเป็นผู้ร้ายก็ไม่ได้นะครับ เพราะ สาเหตุที่แท้จริงแล้วคือ อีเมล์ที่เกิดจากการ ทำงาน cron job และ perodic daemon ของ freebsd ที่จะส่งอีเมล์ออกมาเมื่อทำงานเสร็จแล้ว (ทั้งนี้ก็เราดันไปปิด sendmail ใช่ไหมล่ะ)

พอเราปิด sendmail มันก็ส่งเมล์ไม่ได้ มันก็พยายามส่งอยู่นั่นเหละ ถึงได้ กินพื้นที่ไปเรื่อยๆ


แก้โดย /etc/periodic.conf
daily_output="/var/log/daily.log"
weekly_output="/var/log/weekly.log"
monthly_output="/var/log/monthly.log"

และ ใส่ MAILTO="" เหนือ crontab ของทุกคนที่เรียกใช้งาน cron


ก็เป็นอันว่า รอดตัวไปสำหรับคราวนี้

ปล. การลบ /var/spool/clientmqueue ยากกว่าที่คิดนะจ้ะ ถ้าไม่คิดอะไรมากก็ทยอยลบไปเรื่อยๆนั่นเหละ เดี๋ยวก็หมดเอง

ไม่มีความคิดเห็น:

แสดงความคิดเห็น