在Debian系統中,syslog的日志輪轉通常是通過rsyslog
服務來實現的。以下是配置和執行日志輪轉的步驟:
大多數Debian系統默認已經安裝了rsyslog
。如果沒有安裝,可以使用以下命令進行安裝:
sudo apt-get update
sudo apt-get install rsyslog
rsyslog
的配置文件通常位于/etc/rsyslog.conf
或/etc/rsyslog.d/
目錄下。你可以編輯這些文件來配置日志輪轉。
假設你想每天輪轉日志,并且保留7天的日志文件,可以在/etc/rsyslog.conf
或/etc/rsyslog.d/50-default.conf
中添加以下內容:
# 每天午夜輪轉日志
0 0 * * * /usr/sbin/rsyslogd -f /etc/rsyslog.conf
# 日志文件路徑
*.* /var/log/syslog
# 保留7天的日志
$SystemLogRateLimitInterval 0
$SystemLogRateLimitBurst 5000
$OmitLocalLogging on
$ActionQueueType LinkedList
$ActionQueueFileName srvsyslog
$ActionResumeRetryCount -1
$ActionQueueSaveOnShutdown on
$ActionQueueMaxDiskSpace 1g
$ActionQueueHighWaterMark 80%
$ActionQueueLowWaterMark 20%
$ActionQueueDiscardMark 90%
$ActionQueueTimeoutEnqueue 60
$PrivateNetworkInterface lo
$PrivateNetworkAddress 127.0.0.1
$PrivateNetworkMask 255.0.0.0
$PrivateNetworkGateway 127.0.0.1
$PrivateNetworkDNS 127.0.0.1
$PrivateNetworkDNS2 127.0.0.1
$PrivateNetworkDNS3 127.0.0.1
$PrivateNetworkDNS4 127.0.0.1
$PrivateNetworkDNS5 127.0.0.1
$PrivateNetworkDNS6 127.0.0.1
$PrivateNetworkDNS7 127.0.0.1
$PrivateNetworkDNS8 127.0.0.1
$PrivateNetworkDNS9 127.0.0.1
$PrivateNetworkDNS10 127.0.0.1
$PrivateNetworkDNS11 127.0.0.1
$PrivateNetworkDNS12 127.0.0.1
$PrivateNetworkDNS13 127.0.0.1
$PrivateNetworkDNS14 127.0.0.1
$PrivateNetworkDNS15 127.0.0.1
$PrivateNetworkDNS16 127.0.0.1
$PrivateNetworkDNS17 127.0.0.1
$PrivateNetworkDNS18 127.0.0.1
$PrivateNetworkDNS19 127.0.0.1
$PrivateNetworkDNS20 127.0.0.1
$PrivateNetworkDNS21 127.0.0.1
$PrivateNetworkDNS22 127.0.0.1
$PrivateNetworkDNS23 127.0.0.1
$PrivateNetworkDNS24 127.0.0.1
$PrivateNetworkDNS25 127.0.0.1
$PrivateNetworkDNS26 127.0.0.1
$PrivateNetworkDNS27 127.0.0.1
$PrivateNetworkDNS28 127.0.0.1
$PrivateNetworkDNS29 127.0.0.1
$PrivateNetworkDNS30 127.0.0.1
$PrivateNetworkDNS31 127.0.0.1
$PrivateNetworkDNS32 127.0.0.1
$PrivateNetworkDNS33 127.0.0.1
$PrivateNetworkDNS34 127.0.0.1
$PrivateNetworkDNS35 127.0.0.1
$PrivateNetworkDNS36 127.0.0.1
$PrivateNetworkDNS37 127.0.0.1
$PrivateNetworkDNS38 127.0.0.1
$PrivateNetworkDNS39 127.0.0.1
$PrivateNetworkDNS40 127.0.0.1
$PrivateNetworkDNS41 127.0.0.1
$PrivateNetworkDNS42 127.0.0.1
$PrivateNetworkDNS43 127.0.0.1
$PrivateNetworkDNS44 127.0.0.1
$PrivateNetworkDNS45 127.0.0.1
$PrivateNetworkDNS46 127.0.0.1
$PrivateNetworkDNS47 127.0.0.1
$PrivateNetworkDNS48 127.0.0.1
$PrivateNetworkDNS49 127.0.0.1
$PrivateNetworkDNS50 127.0.0.1
$PrivateNetworkDNS51 127.0.0.1
$PrivateNetworkDNS52 127.0.0.1
$PrivateNetworkDNS53 127.0.0.1
$PrivateNetworkDNS54 127.0.0.1
$PrivateNetworkDNS55 127.0.0.1
$PrivateNetworkDNS56 127.0.0.1
$PrivateNetworkDNS57 127.0.0.1
$PrivateNetworkDNS58 127.0.0.1
$PrivateNetworkDNS59 127.0.0.1
$PrivateNetworkDNS60 127.0.0.1
$PrivateNetworkDNS61 127.0.0.1
$PrivateNetworkDNS62 127.0.0.1
$PrivateNetworkDNS63 127.0.0.1
$PrivateNetworkDNS64 127.0.0.1
$PrivateNetworkDNS65 127.0.0.1
$PrivateNetworkDNS66 127.0.0.1
$PrivateNetworkDNS67 127.0.0.1
$PrivateNetworkDNS68 127.0.0.1
$PrivateNetworkDNS69 127.0.0.1
$PrivateNetworkDNS70 127.0.0.1
$PrivateNetworkDNS71 127.0.0.1
$PrivateNetworkDNS72 127.0.0.1
$PrivateNetworkDNS73 127.0.0.1
$PrivateNetworkDNS74 127.0.0.1
$PrivateNetworkDNS75 127.0.0.1
$PrivateNetworkDNS76 127.0.0.1
$PrivateNetworkDNS77 127.0.0.1
$PrivateNetworkDNS78 127.0.0.1
$PrivateNetworkDNS79 127.0.0.1
$PrivateNetworkDNS80 127.0.0.1
$PrivateNetworkDNS81 127.0.0.1
$PrivateNetworkDNS82 127.0.0.1
$PrivateNetworkDNS83 127.0.0.1
$PrivateNetworkDNS84 127.0.0.1
$PrivateNetworkDNS85 127.0.0.1
$PrivateNetworkDNS86 127.0.0.1
$PrivateNetworkDNS87 127.0.0.1
$PrivateNetworkDNS88 127.0.0.1
$PrivateNetworkDNS89 127.0.0.1
$PrivateNetworkDNS90 127.0.0.1
$PrivateNetworkDNS91 127.0.0.1
$PrivateNetworkDNS92 127.0.0.1
$PrivateNetworkDNS93 127.0.0.1
$PrivateNetworkDNS94 127.0.0.1
$PrivateNetworkDNS95 127.0.0.1
$PrivateNetworkDNS96 127.0.0.1
$PrivateNetworkDNS97 127.0.0.1
$PrivateNetworkDNS98 127.0.0.1
$PrivateNetworkDNS99 127.0.0.1
$PrivateNetworkDNS100 127.0.0.1
修改配置文件后,需要重啟rsyslog
服務以使更改生效:
sudo systemctl restart rsyslog
你可以通過查看日志文件的修改時間和大小來驗證日志是否按預期輪轉:
ls -l /var/log/syslog*
Debian系統還提供了logrotate
工具,可以更方便地管理日志文件的輪轉。你可以創建一個自定義的logrotate
配置文件來管理syslog
日志。
在/etc/logrotate.d/
目錄下創建一個新的配置文件,例如syslog
:
sudo nano /etc/logrotate.d/syslog
/var/log/syslog {
daily
missingok
rotate 7
compress
notifempty
create 0640 root adm
}
daily
: 每天輪轉日志。missingok
: 如果日志文件丟失,不會報錯。rotate 7
: 保留7天的日志文件。compress
: 壓縮舊日志文件。notifempty
: 如果日志文件為空,不進行輪轉。create 0640 root adm
: 創建新日志文件時設置權限和所有者。你可以手動測試logrotate
配置是否正確:
sudo logrotate -f /etc/logrotate.d/syslog
通過以上步驟,你應該能夠在Debian系統中成功配置和執行syslog日志輪轉。