成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

在Linux系統中手動滾動日志

系統 Linux
日志滾動在 Linux 系統上是再常見不過的一個功能了,它為系統監控和故障排查保留必要的日志內容,同時又防止過多的日志造成單個日志文件太大。

 [[319996]]

日志滾動log rotation在 Linux系統上是再常見不過的一個功能了,它為系統監控和故障排查保留必要的日志內容,同時又防止過多的日志造成單個日志文件太大。

日志滾動的過程是這樣的:在一組日志文件之中,編號最大的(最舊的)一個日志文件會被刪除,其余的日志文件編號則依次增大并取代較舊的日志文件,而較新的文件則取代它作為當前的日志文件。這一個過程很容易就可以實現自動化,在細節上還能按需作出微調。

使用 logrotate 命令可以手動執行日志滾動的操作。本文將要介紹的就是手動進行日志滾動的方法,以及預期產生的結果。

文中出現的示例適用于 Ubuntu 等 Linux 系統,對于其它類型的系統,日志文件和配置文件可能會有所不同,但日志滾動的過程是大同小異的。

為什么需要滾動日志

一般情況下,無需手動旋轉日志文件。Linux 系統會每隔一天(或間隔更長的時間)或根據日志文件的大小自動進行一次日志滾動。如果你需要滾動日志以釋放存儲空間,又或者將某一部分日志從當前的活動中分割出來,這很容易做到,具體要取決于文件滾動規則。

一點背景介紹

在 Linux 系統安裝完成后就已經有很多日志文件被納入到日志滾動的范圍內了。另外,一些應用程序在安裝時也會為自己產生的日志文件設置滾動規則。一般來說,日志滾動的配置文件會放置在 /etc/logrotate.d。如果你想了解日志滾動的詳細實現,可以參考這篇以前的文章

在日志滾動的過程中,活動日志會以一個新名稱命名,例如 log.1,之前被命名為 log.1 的文件則會被重命名為 log.2,依此類推。在這一組文件中,最舊的日志文件(假如名為 log.7)會從系統中刪除。日志滾動時文件的命名方式、保留日志文件的數量等參數是由 /etc/logrotate.d 目錄中的配置文件決定的,因此你可能會看到有些日志文件只保留少數幾次滾動,而有些日志文件的滾動次數會到 7 次或更多。

例如 syslog 在經過日志滾動之后可能會如下所示(注意,行尾的注釋部分只是說明滾動過程是如何對文件名產生影響的):

  1. $ ls -l /var/log/syslog*
  2. -rw-r----- 1 syslog adm 128674 Mar 10 08:00 /var/log/syslog <== 新文件
  3. -rw-r----- 1 syslog adm 2405968 Mar 9 16:09 /var/log/syslog.1 <== 之前的 syslog
  4. -rw-r----- 1 syslog adm 206451 Mar 9 00:00 /var/log/syslog.2.gz <== 之前的 syslog.1
  5. -rw-r----- 1 syslog adm 216852 Mar 8 00:00 /var/log/syslog.3.gz <== 之前的 syslog.2.gz
  6. -rw-r----- 1 syslog adm 212889 Mar 7 00:00 /var/log/syslog.4.gz <== 之前的 syslog.3.gz
  7. -rw-r----- 1 syslog adm 219106 Mar 6 00:00 /var/log/syslog.5.gz <== 之前的 syslog.4.gz
  8. -rw-r----- 1 syslog adm 218596 Mar 5 00:00 /var/log/syslog.6.gz <== 之前的 syslog.5.gz
  9. -rw-r----- 1 syslog adm 211074 Mar 4 00:00 /var/log/syslog.7.gz <== 之前的 syslog.6.gz

你可能會發現,除了當前活動的日志和最新一次滾動的日志文件之外,其余的文件都已經被壓縮以節省存儲空間。這樣設計的原因是大部分系統管理員都只需要查閱最新的日志文件,其余的日志文件壓縮起來,需要的時候可以解壓查閱,這是一個很好的折中方案。

手動日志滾動

你可以這樣執行 logrotate 命令進行手動日志滾動:

  1. $ sudo logrotate -f /etc/logrotate.d/rsyslog

值得一提的是,logrotate 命令使用 /etc/logrotate.d/rsyslog 這個配置文件,并通過了 -f 參數實行“強制滾動”。因此,整個過程將會是:

  • 刪除 syslog.7.gz
  • 將原來的 syslog.6.gz 命名為 syslog.7.gz
  • 將原來的 syslog.5.gz 命名為 syslog.6.gz
  • 將原來的 syslog.4.gz 命名為 syslog.5.gz
  • 將原來的 syslog.3.gz 命名為 syslog.4.gz
  • 將原來的 syslog.2.gz 命名為 syslog.3.gz
  • 將原來的 syslog.1.gz 命名為 syslog.2.gz
  • 但新的 syslog 文件不一定必須創建。

你可以按照下面的幾條命令執行操作,以確保文件的屬主和權限正確:

  1. $ sudo touch /var/log/syslog
  2. $ sudo chown syslog:adm /var/log/syslog
  3. $ sudo chmod 640 /var/log/syslog

你也可以把以下這一行內容添加到 /etc/logrotate.d/rsyslog 當中,由 logrotate 來幫你完成上面三條命令的操作:

  1. create 0640 syslog adm

整個配置文件的內容是這樣的:

  1. /var/log/syslog
  2. {
  3. rotate 7
  4. daily
  5. missingok
  6. notifempty
  7. create 0640 syslog adm <==
  8. delaycompress
  9. compress
  10. postrotate
  11. /usr/lib/rsyslog/rsyslog-rotate
  12. endscript
  13. }

下面是手動滾動記錄用戶登錄信息的 wtmp 日志的示例。由于 /etc/logrotate.d/wtmp 中有 rotate 2 的配置,因此系統中只保留了兩份 wtmp 日志文件。

滾動前:

  1. $ ls -l wtmp*
  2. -rw-r----- 1 root utmp 1152 Mar 12 11:49 wtmp
  3. -rw-r----- 1 root utmp 768 Mar 11 17:04 wtmp.1

執行滾動命令:

  1. $ sudo logrotate -f /etc/logrotate.d/wtmp

滾動后:

  1. $ ls -l /var/log/wtmp*
  2. -rw-r----- 1 root utmp 0 Mar 12 11:52 /var/log/wtmp
  3. -rw-r----- 1 root utmp 1152 Mar 12 11:49 /var/log/wtmp.1
  4. -rw-r----- 1 root adm 99726 Feb 21 07:46 /var/log/wtmp.report

需要知道的是,無論發生的日志滾動是自動滾動還是手動滾動,最近一次的滾動時間都會記錄在 logrorate 的狀態文件中。

  1. $ grep wtmp /var/lib/logrotate/status
  2. "/var/log/wtmp" 2020-3-12-11:52:57

 

責任編輯:龐桂玉 來源: Linux中國
相關推薦

2010-11-09 13:53:33

2020-02-11 12:54:34

Linux日志文件消息

2011-09-09 18:16:18

WindowsLinux

2020-03-24 08:00:00

Linux日志文件

2021-07-19 09:37:59

Windows 操作系統Linux

2010-09-07 11:23:46

手動安裝DB2

2021-07-06 07:46:16

KubernetesRook存儲

2010-01-13 14:18:36

CentOS Open

2009-02-20 19:56:26

WindowsLinux雙系統

2019-06-19 13:50:21

NeofetchLinux

2009-06-16 09:37:20

Linux

2009-06-17 12:55:47

Linux

2017-06-13 08:33:10

程序日志代碼

2014-08-13 09:29:15

linux

2022-02-08 15:15:26

OpenHarmonlinux鴻蒙

2012-07-05 09:52:06

EFS文件加密

2015-09-01 10:32:11

2015-09-01 14:29:33

2017-03-15 18:00:49

2014-04-25 10:14:39

點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 自拍视频一区二区三区 | 国产视频不卡一区 | 天天看天天爽 | 日韩av最新网址 | 亚洲成人综合社区 | 久久久久久99 | 日韩中文字幕在线观看 | 国产精品污www一区二区三区 | 欧美1—12sexvideos | 91精品一区二区三区久久久久 | 日本亚洲精品成人欧美一区 | 亚洲成人av | 99国产精品久久久久久久 | 精品久久久久久国产 | 久热伊人| 中文字幕一区二区三区四区五区 | 亚洲男女视频在线观看 | 中文在线播放 | 亚洲成人国产 | www亚洲精品 | 黄色成人在线观看 | 久久久久久国产精品免费免费狐狸 | av在线免费观看网址 | 中文日韩字幕 | 黄色片大全在线观看 | 国产精品欧美一区喷水 | 久草资源 | 中文字幕二区 | 日韩字幕 | 精品国产乱码久久久久久图片 | 美人の美乳で授乳プレイ | 久久久www成人免费无遮挡大片 | 成人激情视频免费在线观看 | 久久99精品久久久久久青青日本 | 久久久久久国产精品 | 久久日韩精品一区二区三区 | 在线免费观看黄色 | 久久99深爱久久99精品 | 国产精品久久国产精品 | 欧美精品久久久久 | 福利久久|