Logrotate là gì? Hướng dẫn cấu hình chi tiết Logrotate

  • Tuesday 03/06/2025

Logrotate là gì? Cách cài đặt và cấu hình chi tiết Logrotate

Logrotate là gì? Một công cụ mạnh mẽ trên hệ điều hành Linux, giúp tự động quản lý và tối ưu hóa các tệp nhật ký (log files). Nếu không được luân phiên, nén và dọn dẹp định kỳ, các tệp nhật ký có thể phát triển không kiểm soát, chiếm nhiều dung lượng đĩa và ảnh hưởng đến hiệu suất hệ thống.

Logrotate là một tiện ích dòng lệnh (command-line utility) được thiết kế để quản lý các file log trong hệ thống Linux và Unix. Công cụ này cho phép bạn tự động hóa quá trình xoay vòng (rotate), nén (compress), xóa (remove), và gửi email các file log theo một lịch trình và quy tắc được định nghĩa trước.

Nói một cách đơn giản, Logrotate giúp bạn:

  • Ngăn chặn việc file log chiếm quá nhiều dung lượng ổ cứng.
  • Dễ dàng quản lý và theo dõi các phiên bản log cũ.
  • Tăng cường bảo mật bằng cách giới hạn thời gian lưu trữ log.

Logrotate là gì

🛠️ Cách cài đặt Logrotate trên Linux

Logrotate thường được cài đặt sẵn trên nhiều bản phân phối Linux. Tuy nhiên, nếu chưa có, bạn có thể cài đặt bằng các lệnh sau:

  • Ubuntu/Debian:

sudo apt-get update
sudo apt-get install logrotate
  • CentOS/RedHat:

sudo yum update
sudo yum install logrotate

Sau khi cài đặt, bạn có thể kiểm tra phiên bản Logrotate bằng lệnh:

logrotate --version
Logrotate là gì

⚙️ Cấu hình Logrotate

1. Tệp cấu hình chính

Tệp cấu hình chính của Logrotate nằm tại:

/etc/logrotate.conf

Tại đây, bạn có thể thiết lập các tùy chọn mặc định cho toàn bộ hệ thống. Ngoài ra, các tệp cấu hình riêng cho từng dịch vụ thường được đặt trong thư mục:

/etc/logrotate.d/

2. Các tùy chọn cấu hình phổ biến

  • daily/weekly/monthly/yearly: Xác định tần suất xoay vòng log.

  • rotate [số_lượng]: Số lượng tệp log cũ được giữ lại.

  • size [kích_thước]: Xoay vòng khi tệp log đạt đến kích thước chỉ định (ví dụ: 100M).

  • compress: Nén tệp log sau khi xoay vòng.

  • delaycompress: Trì hoãn nén tệp log cho đến lần xoay vòng tiếp theo.

  • notifempty: Không xoay vòng nếu tệp log trống.

  • missingok: Bỏ qua lỗi nếu tệp log không tồn tại.

  • create [quyền] [chủ_sở_hữu] [nhóm]: Tạo tệp log mới với quyền và chủ sở hữu chỉ định.

  • postrotate/endscript: Thực thi lệnh sau khi xoay vòng.

3. Ví dụ cấu hình

/var/log/nginx/*.log {
daily
rotate 7
size 100M
compress
delaycompress
notifempty
missingok
create 0640 www-data adm
postrotate
systemctl reload nginx
endscript
}

Cấu hình trên sẽ xoay vòng các tệp log của Nginx hàng ngày, giữ lại 7 bản sao, nén sau khi xoay vòng, và tải lại dịch vụ Nginx sau mỗi lần xoay vòng.


🔍 Kiểm tra và chạy Logrotate

  • Kiểm tra cấu hình:

logrotate -d /etc/logrotate.conf
  • Thực hiện xoay vòng thủ công:

logrotate -f /etc/logrotate.conf
  • Xem chi tiết quá trình xoay vòng:

logrotate -v /etc/logrotate.conf

📌 Kết luận

Logrotate là một công cụ thiết yếu giúp quản trị viên hệ thống duy trì hiệu suất và ổn định cho máy chủ bằng cách tự động quản lý các tệp log. Việc cấu hình đúng và hiệu quả Logrotate sẽ giúp hệ thống của bạn tránh được các vấn đề liên quan đến dung lượng đĩa và đảm bảo các tệp log luôn được tổ chức gọn gàng.

Bạn có thể tham khảo thêm 1 số bài viết liên quan VPS/server tại đây

======================================================

P.A Việt Nam cung cấp đa dạng các cấu hình Máy Chủ Ảo và Máy Chủ Riêng
Cloud Server
Cloud Server Pro
Máy Chủ Riêng

Tham khảo các ưu đãi: https://www.pavietnam.vn/vn/tin-khuyen-mai/

Rate this post