logrotate 程式是乙個日誌檔案管理工具。用來把舊的日誌檔案刪除,並建立新的日誌檔案,我們把它叫做「轉儲」。我們可以根據日誌檔案的大小,也可以根據其天數來轉儲,這個過程一般通過 cron 程式來執行。
logrotate 程式還可以用於壓縮日誌檔案,以及傳送日誌到指定的e-mail 。
logrotate是基於cron來執行的,其指令碼是「/etc/cron.daily/logrotate」
實際執行時,logrotate會呼叫配置檔案「/etc/logrotate.conf」
這裡的設定可以理解為logrotate的預設值,當然了,可以我們在「/etc/logrotate.d」目錄裡放置自己的配置檔案,用來覆蓋logrotate的預設值。
logrotate 是安裝系統時就可以裝上去的,很多的大流量**都是使用這個來進行log的切換。
不用 kill nginx pid, 不用restart nginx,只要重新載入一下就可以了。
nginx日誌分割:
在/etc/logrotate.d/目錄下生成nginx檔案
/mnt/nginx/logs/*.log
如果你等不及cron,可以通過如下命令來手動執行:
shell> logrotate -f /etc/logrotate.d/nginx
當然,正式執行前最好通過debug選項來驗證一下,這對除錯也很重要,驗證的過程不會真的轉存:
shell> logrotate -d -f /etc/logrotate.d/nginx
logrotate的備份策略(以兩個備份來說明,即rotate 2,檔案error.log):原始檔案error.log,經過一次轉儲,會生成error.log.1;第二次轉儲,生成error.log.2;第三次轉儲,error.log.n命名為error.log.n+1,同時生成新的error.log.1,刪除error.log.n+1檔案。
日誌切割的執行時間是由cron程配置決定的,可檢視/etc/crontab檔案(cron時間戳格式:分時日月周)
postrotate
[ -f /var/run/nginx.pid ] && kill -usr1 `cat /var/run/nginx.pid`
`cp -f /var/log/nginx/*.* /var/log/nginx/backup`
//自定義指令碼,將舊日誌copy到backup資料夾(backup要存在)
cat /var/lib/logrotate.status
linux日誌分割處理工具logrotate
logrotate 程式是乙個日誌檔案管理工具。用來把舊的日誌檔案刪除,並建立新的日誌檔案,我們把它叫做 轉儲 我們可以根據日誌檔案的大小,也可以根據其天數來轉儲,這個過程一般通過 cron 程式來執行。logrotate 程式還可以用於壓縮日誌檔案,以及傳送日誌到指定的e mail logrota...
linux的檔案處理工具
檔案檢視命令 cat,nl,tac,rev cat 命令 選項 e 顯示行結束符 n 對顯示出的每一行進行編號 a 顯示所有控制符 b 非空行編號 s 壓縮連續的空行成一行 more 分頁檢視檔案 d 顯示翻頁及退出提示 less 一頁一頁地檢視檔案或stdin輸出 檢視時有用的命令包括 文字 搜尋...
日誌分割工具logrotate
eoflogrotate d etc logrotate.d mymon 測試 logrotate vf etc logrotate.d mymon 強制執行簡單說明引數daily 每日執行,weekly,yearly rotate 5 儲存幾份 missingok 忽略logrotate執行時的錯...