Tôi đã theo liên kết này để thay đổi cấu hình xoay vòng log cho RHEL 6
Sau khi tôi thực hiện thay đổi tệp cấu hình, tôi nên làm gì để điều này có hiệu lực?
Tôi đã theo liên kết này để thay đổi cấu hình xoay vòng log cho RHEL 6
Sau khi tôi thực hiện thay đổi tệp cấu hình, tôi nên làm gì để điều này có hiệu lực?
Câu trả lời:
logrotate
sử dụng crontab
để làm việc. Đó là công việc được lên lịch, không phải là daemon, vì vậy không cần tải lại cấu hình của nó.
Khi crontab
thực thi logrotate
, nó sẽ tự động sử dụng tệp cấu hình mới của bạn.
Nếu bạn cần kiểm tra cấu hình của mình, bạn cũng có thể tự thực hiện logrotate
bằng lệnh:
logrotate /etc/logrotate.d/your-logrotate-config
Hoặc như đã đề cập trong các nhận xét, xác định tham khảo câu trả lời của slm để có lời giải thích chính xác về cron.d Dailylogrotate
dòng trong đầu ra của lệnh crontab -l
và thực thi dòng lệnh
crontab -l
và thực hiện nó.
logrotate
có một -d
tùy chọn để thử nghiệm (hoặc "gỡ lỗi"), tôi khuyên bạn nên chạy nó ít nhất một lần với điều đó.
Hầu hết các logrotate
thiết lập tôi đã thấy trên các bản phát hành khác nhau đều hết /etc/cron.daily
. Có một kịch bản shell có tên thích hợp logrotate
.
$ ls -l /etc/cron.daily/logrotate
-rwxr-xr-x 1 root root 180 May 18 2011 /etc/cron.daily/logrotate
Nếu bạn muốn làm cho nó chạy thủ công, chỉ cần chạy tập lệnh dưới dạng root:
$ sudo /etc/cron.daily/logrotate
Nếu bạn xem một tập lệnh thường có ở đó, nó sẽ cho bạn thấy cách bạn cũng có thể chạy logrotate
thủ công, chỉ bằng cách chạy logrotate
+ đường dẫn đến tệp cấu hình của nó.
#!/bin/sh
/usr/sbin/logrotate /etc/logrotate.conf
EXITVALUE=$?
if [ $EXITVALUE != 0 ]; then
/usr/bin/logger -t logrotate "ALERT exited abnormally with [$EXITVALUE]"
fi
exit 0
Nó sẽ được tự động thông qua cron. Bạn có thể buộc nó kiểm tra những thay đổi của bạn.
Đối với logrotate toàn cầu:
sudo logrotate -v -f /etc/logrotate.conf
Đối với một tập tin conf duy nhất:
sudo logrotate -v -f /etc/logrotate.d/someapp.conf
-f
đối với lực xoay, cũng có -d
để gỡ lỗi, cũng là Dry run, nó sẽ in mọi thứ nó sẽ làm nhưng không thực sự làm điều đó.
logrotate
được lên lịch để chạy một lần một ngày.