Thứ năm, 18/04/2013 | 00:00 GMT+7

Cách quản lý tệp log với Logrotate trên Ubuntu 12.10


Về Logrotate

Logrotate là một tiện ích / công cụ quản lý các hoạt động như tự động xoay, xóa và nén các file log trong hệ thống. Đây là một công cụ tuyệt vời để quản lý log của bạn nhằm duy trì không gian đĩa quý giá. Bằng cách có một file cấu hình đơn giản nhưng mạnh mẽ, có thể kiểm soát các thông số khác nhau của logrotation. Điều này cho phép kiểm soát hoàn toàn cách các bản ghi có thể được quản lý tự động và không cần can thiệp thủ công.

Yêu cầu

Như một yêu cầu , ta giả định bạn đã xem qua bài viết về cách cài đặt server hoặc VPS của bạn . Nếu không, bạn có thể tìm thấy bài viết tại đây . Hướng dẫn này yêu cầu bạn phải cài đặt và chạy một VPS và bạn phải đăng nhập vào nó.

Cài đặt Logrotate

Bước 1 — Cập nhật Hệ thống và Gói hệ thống

Chạy lệnh sau để cập nhật danh sách gói từ apt-get và nhận thông tin về version mới nhất của gói và các phụ thuộc của chúng.

sudo apt-get update

Bước 2 — Cài đặt Logrotate

Nếu logrotate chưa có trên VPS của bạn, hãy cài đặt nó ngay bây giờ thông qua apt-get.

sudo apt-get install logrotate

Bước 3 - Xác nhận

Để xác minh logrotate đã được cài đặt thành công, hãy chạy nó trong dấu nhắc lệnh.

logrotate

Vì tiện ích logrotate dựa trên các file cấu hình, lệnh trên sẽ không xoay các file nào và sẽ hiển thị cho bạn tổng quan ngắn gọn về cách sử dụng và các tùy chọn chuyển đổi có sẵn.

Bước 4 — Cấu hình Logrotate

Các cấu hình và tùy chọn mặc định cho tiện ích logrotate có trong:

/etc/logrotate.conf

Một số cài đặt cấu hình quan trọng là: khoảng thời gian quay, kích thước file log , số vòng quay và nén.

Thông tin file log dành riêng cho ứng dụng (để overrides các giá trị mặc định) được lưu giữ tại:

/etc/logrotate.d/

Ta sẽ xem xét một vài ví dụ để hiểu rõ hơn về khái niệm này.

Bước 5 — Ví dụ

Một cài đặt cấu hình ứng dụng ví dụ sẽ là dpkg (hệ thống quản lý gói Debian), được lưu trữ trong /etc/logrotate.d/dpkg. Một trong những mục nhập trong file này sẽ là:

/var/log/dpkg.log {
	monthly
	rotate 12
	compress
	delaycompress
	missingok
	notifempty
	create 644 root root
}

Điều này nghĩa là :

  • logrotation cho dpkg giám sát file /var/log/dpkg.log và thực hiện việc này hàng tháng - đây là khoảng thời gian xoay vòng.
  • 'xoay 12' biểu thị rằng các bản ghi có giá trị 12 ngày sẽ được lưu giữ.
  • logfiles có thể được nén bằng cách sử dụng định dạng gzip bằng cách chỉ định 'nén' và 'nén trễ' làm chậm quá trình nén cho đến lần quay log tiếp theo. 'delaycompress' sẽ chỉ hoạt động nếu tùy chọn 'nén' được chỉ định.
  • 'missok' tránh bị dừng do bất kỳ lỗi nào và tiếp tục với file log tiếp theo.
  • 'notifempty' tránh xoay vòng log nếu file log trống.
  • 'create <mode> <owner> <group>' tạo một file trống mới với các thuộc tính được chỉ định sau khi xoay vòng log .

Mặc dù bị thiếu trong ví dụ trên, 'kích thước' cũng là một cài đặt quan trọng nếu bạn muốn kiểm soát kích thước của các bản ghi đang phát triển trong hệ thống.

Cài đặt cấu hình khoảng 100MB trông giống như sau:

size 100M

Lưu ý Nếu cả kích thước và khoảng thời gian xoay đều được đặt, thì kích thước sẽ được ưu tiên cao hơn. Nghĩa là, nếu file cấu hình có các cài đặt sau:

monthly
size 100M

sau đó các bản ghi sẽ được xoay khi kích thước file đạt tới 100M và điều này không cần đợi chu kỳ hàng tháng.

Bước 6 — Công việc Cron

Bạn cũng có thể đặt logrotation dưới dạng cron để có thể tránh được quá trình thủ công và việc này được thực hiện tự động. Bằng cách chỉ định một mục nhập trong /etc/cron.daily/logrotate, vòng quay được kích hoạt hàng ngày.

Bước 7 — Kiểm tra và xác minh trạng thái

Để xác minh xem một log cụ thể có thực sự đang xoay hay không và để kiểm tra ngày và giờ cuối cùng của nó, hãy kiểm tra file / var / lib / logrotate / status. Đây là một file được định dạng gọn gàng có chứa tên file log và ngày nó được xoay lần cuối.

cat /var/lib/logrotate/status 

Một số mục nhập từ file này, ví dụ:

"/var/log/lpr.log" 2013-4-11
"/var/log/dpkg.log" 2013-4-11
"/var/log/pm-suspend.log" 2013-4-11
"/var/log/syslog" 2013-4-11
"/var/log/mail.info" 2013-4-11
"/var/log/daemon.log" 2013-4-11
"/var/log/apport.log" 2013-4-11

Xin chúc mừng! Bạn đã cài đặt logrotate trong hệ thống của bạn . Bây giờ, hãy thay đổi cài đặt cấu hình theo yêu cầu của bạn.

Hãy thử 'man logrotate' hoặc 'logrotate -?' để biết thêm chi tiết.


Tags:

Các tin trước

Cách cài đặt và sử dụng tmux trên Ubuntu 12.10 2013-04-18
Cách thiết lập ownCloud 5 trên Ubuntu 12.10 2013-04-18
Cách thiết lập RStudio trên server cloud Ubuntu 2013-04-16
Cách cài đặt JBoss trên Ubuntu 12.10 64Bit 2013-04-16
Cách thiết lập Cherokee trên Ubuntu 12.10 / Debian 2013-04-12
Cách cài đặt Squid Proxy trên Ubuntu 12.10 x64 2013-04-04
Cách cài đặt OpenX trên Ubuntu 12.10 2013-03-29
Cách cài đặt Nagios trên Ubuntu 12.10 2013-03-29
Cách cài đặt và sử dụng phpPgAdmin trên Ubuntu 12.04 2012-10-25
Cách cài đặt MongoDB trên Ubuntu 12.04 2012-06-05