Khi hệ thống Linux chạy lâu ngày, thư mục /var/log sẽ phình rất nhanh nếu không có cơ chế xoay vòng log. Hậu quả thường gặp là đầy disk, dịch vụ lỗi ghi log và đôi khi kéo theo downtime ngoài ý muốn. Với production, keyword “cấu hình logrotate Linux” là một nhu cầu rất thực tế.
Logrotate là gì và vì sao quan trọng?
Logrotate là công cụ chuẩn trên Linux để rotate, nén, giữ lịch sử và xóa log cũ theo chính sách. Thay vì để log tăng vô hạn, anh có thể giới hạn theo ngày hoặc dung lượng, giúp hệ thống ổn định và dễ audit hơn.
Cài đặt và kiểm tra nhanh
sudo apt update
sudo apt install -y logrotate
logrotate --version
File cấu hình cần biết
/etc/logrotate.conf: cấu hình global/etc/logrotate.d/: cấu hình riêng từng service- cron/systemd timer: lịch chạy rotate tự động
Ví dụ cấu hình cho Nginx
/var/log/nginx/*.log {
daily
rotate 14
missingok
notifempty
compress
delaycompress
create 0640 www-data adm
sharedscripts
postrotate
[ -s /run/nginx.pid ] && kill -USR1 `cat /run/nginx.pid`
endscript
}
Cấu hình trên giữ 14 bản ghi theo ngày, nén log cũ và gửi tín hiệu reload file handle để Nginx ghi vào file mới sau khi rotate.
Các tham số hay dùng trong production
daily/weekly/monthly: tần suất rotaterotate N: số bản backup giữ lạisize 100M: rotate theo ngưỡng dung lượngcompress+delaycompress: nén log tối ưucopytruncate: dùng cho app không hỗ trợ reopen log
Test cấu hình trước khi áp dụng
sudo logrotate -d /etc/logrotate.conf
sudo logrotate -f /etc/logrotate.conf
Luôn chạy -d để debug trước. Chỉ force rotate khi cần kiểm thử nhanh để tránh xoay log sai chính sách.
Troubleshooting lỗi thường gặp
- Permission denied: kiểm tra owner/group và quyền create
- Rotate xong app không ghi log mới: thiếu postrotate signal
- Log không rotate theo size: thiếu đơn vị (k/M/G) hoặc xung đột policy global
Checklist triển khai an toàn
- Định nghĩa retention theo mức quan trọng của service
- Đảm bảo còn đủ dung lượng cho giai đoạn transition
- Giám sát dung lượng
/var/logbằng alert - Review policy mỗi 1-2 tháng
Kết luận
Logrotate là phần nhỏ nhưng ảnh hưởng trực tiếp tới độ ổn định hệ thống Linux. Chỉ cần cấu hình đúng và kiểm thử kỹ, anh sẽ giảm rõ rệt nguy cơ đầy disk và lỗi vận hành do log không kiểm soát.
