日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 运维知识 > linux >内容正文

linux

Linux 日志管理

發布時間:2024/1/1 linux 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Linux 日志管理 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

目錄

1 日志管理簡介

1.1 日志服務

1.2 確定服務啟動

1.3 查看服務是否自啟動

1.4 常見日志的作用

2 rsyslogd日志服務

2.1 日志文件格式

2.2 /etc/rsyslog.conf配置文件

2.2.1 服務名稱

2.2.2 連接符號

2.2.3 日志等級

2.2.4 日志記錄位置

3 日志輪替

3.1 日志文件的命名規則

3.2 logrotate配置文件

3.3 logrotate命令


1 日志管理簡介

1.1 日志服務

在CentOS 6.x中日志服務已經由rsyslogd取代了原先的syslogd服務。rsyslogd日志服務更加先進,功能更多。但是不論該服務的使用,還是日志文件的格式其實都是和syslogd服務相兼容的,所以學習起來基本和syslogd服務一致。

rsyslogd的新特點:

  • 基于TCP網絡協議傳輸日志信息;

  • 更安全的網絡傳輸方式;

  • 有日志消息的及時分析框架;

  • 后臺數據庫;

  • 配置文件中可以寫簡單的邏輯判斷;

  • 與syslog配置文件相兼容

1.2 確定服務啟動

查看服務是否啟動

ps aux | grep rsyslogd

1.3 查看服務是否自啟動

chkconfig --list | grep rsyslog

小貼士:

Centos7使用以下命令

systemctl list-unit-files | grep rsyslog

1.4 常見日志的作用

日志文件

說明

/var/log/cron

記錄了系統定時任務相關的日志。

/var/log/cups/

記錄打印信息的日志

/var/log/dmesg

記錄了系統在開機時內核自檢的信息。也可以使用dmesg命令直接查看內核自檢信息。

/var/log/btmp

記錄錯誤登錄的日志。這個文件是二進制文件,不能直接vi查看,而要使用lastb命令查看,命令如下:lastb

root tty1 Tue Jun 4 22:38 - 22:38 (00:00)

有人在6月4日22:38使用root用戶,在本地終端1登錄錯誤

/var/log/lastlog

記錄系統中所有用戶最后一次的登錄時間的日志。這個文件也是二進制文件,不能直接vi,而要使用lastlog命令查看。

/var/log/mailog

記錄郵件信息。

/var/log/message

記錄系統重要信息的日志。這個日志文件中會記錄Linux系統的絕大

/var/log/secure

記錄驗證和授權方面的信息,只要涉及賬戶和密碼的程序都會記錄。比如說系統的登錄,ssh的登錄,su切換用戶,sudo授權,甚至添加用戶和修改用戶密碼都會記錄在這個日志文件中。

/var/log/wtmp

永久記錄所有用戶的登錄、注銷信息,同時記錄系統的啟動、重啟、關機事件。同樣這個文件也是一個二進制文件,不能直接vi,而需要使用last命令來查看。

/var/run/utmp

記錄當前已經登錄的用戶的信息。這個文件會隨著用戶的登錄和注銷而不斷變化,只記錄當前登錄用戶的信息。同樣這個文件不能直接vi,而要使用w,who,users等命令來查詢。

除了系統默認的日志之外,采用RPM方式安裝的系統服務也會默認把日志記錄在/var/log/目錄中(源碼包安裝的服務日志是在源碼包指定目錄中)。不過這些日志不是由rsyslogd服務來記錄和管理的,而是各個服務使用自己的日志管理文檔來記錄自身日志。

日志文件

說明

/var/log/httpd/

RPM包安裝的apache服務的默認日志目錄

/var/log/mail/

RPM包安裝的郵件服務的額外日志目錄

/var/log/samba/

RPM包安裝的samba服務的日志目錄

/var/log/sssd/

守護進程安全服務目錄

2 rsyslogd日志服務

2.1 日志文件格式

基本日志格式包含以下四列:

  • 事件產生的時間;

  • 發生事件的服務器的主機名;

  • 產生事件的服務名或程序名;

  • 事件的具體信息。

2.2 /etc/rsyslog.conf配置文件

authpriv.* /var/log/secure

字段說明:

服務名稱[連接符號]日志等級 日志記錄位置

認證相關服務.所有日志等級 記錄在/var/log/secure日志中

2.2.1 服務名稱

服務名稱

說明

auth

安全和認證相關消息(不推薦使用authpriv替代)

authpriv

安全和認證相關消息(私有的)

cron

系統定時任務cront和at產生的日志

daemon

和各個守護進程相關的日志

ftp

ftp守護進程產生的日志

kern

內核產生的日志(不是用戶進程產生的)

local0-local7

為本地使用預留的服務

lpr

打印產生的日志

mail

郵件收發信息

news

與新聞服務器相關的日志

syslog

有syslogd服務產生的日志信息(雖然服務名 稱已經改為rsyslogd,但是很多配置都還是沿 用了syslogd的,這里并沒有修改服務名)。

user

用戶等級類別的日志信息

uucp

uucp子系統的日志信息,uucp是早期linux系統進行數據傳遞的協議,后來也常用在新聞 組服務中。

2.2.2 連接符號

連接符號可以識別為:

  • “*”代表所有日志等級,比如:“authpriv.*”代表authpriv認證信息服務產生的日志,所有的日志等級都記錄

  • “.”代表只要比后面的等級高的(包含該等級)日志都記錄下來。比如:“cron.info”代表cron服務產生的日志,只要日志等級大于等于info級別,就記錄

  • “.=”代表只記錄所需等級的日志,其他等級的都不記錄。比如:“*.=emerg”代表人和日志服務產生的日志,只要等級是emerg等級就記錄。這種用法及少見,了解就好

  • “.!”代表不等于,也就是除了該等級的日志外,其他等級的日志都記錄。

2.2.3 日志等級

等級名稱

說明

debug

一般的調試信息說明

info

基本的通知信息

notice

普通信息,但是有一定的重要性

warning

警告信息,但是還不回影響到服務或系統的運行

err

錯誤信息,一般達到err等級的信息以及可以影響到服務或系統的運行了。

crit

臨界狀況信息,比err等級還要嚴重

alert

警告狀態信息,比crit還要嚴重。必須立即采取行動

emerg

疼痛等級信息,系統已經無法使用了

2.2.4 日志記錄位置

  • 日志文件的絕對路徑,如“/var/log/secure”

  • 系統設備文件,如“/dev/lp0”

  • 轉發給遠程主機,如“@192.168.0.210:514”

  • 用戶名,如“root”

  • 忽略或丟棄日志,如“~”

3 日志輪替

3.1 日志文件的命名規則

  • 如果配置文件中擁有“dateext”參數,那么日志會用日期來作為日志文件的后綴,例如“secure-20130605”。這樣的話日志文件名不會重疊,所以也就不需要日志文件的改名,只需要保存指定的日志個數,刪除多余的日志文件即可。

  • 如果配置文件中沒有“dateext”參數,那么日志文件就需要進行改名了。當第一次進行日志輪替時,當前的“secure”日志會自動改名為“secure.1”,然后新建“secure”日志,用來保存新的日志。當第二次進行日志輪替時,“secure.1”會自動改名為“secure.2”,當前的“secure”日志會自動改名為“secure.1”,然后也會新建“secure”日志,用來保存新的日志,以此類推。

3.2 logrotate配置文件

參數

參數說明

daily

日志的輪替周期是每天

weekly

日志的輪替周期是每周

monthly

日志的輪替周期是每月

rotate 數字

保留的日志文件的個數。0指沒有備份

compress

日志輪替時,舊的日志進行壓縮

create mode owner group

建立新日志,同時指定新日志的權限與所有者和所屬組。如create 0600 root utmp

mail address

當日志輪替時,輸出內容通過郵件發送到指定的郵件地址。如mail XXXX@qq.com

missingok

如果日志不存在,則忽略該日志的警告信息

notifempty

如果日志為空文件,則不進行日志輪替

minsize 大小

日志輪替的最小值。也就是日志一定要達到這個最小值才會輪替,否則就算時間達到也不輪替

size 大小

日志只有大于指定大小才進行日志輪替,而不是按照時間輪替。如size 100k

dateext

使用日期作為日志輪替文件的后綴。如secure-20130605

案例:把apache日志加入輪替

  • vi /etc/logrotate.conf
/usr/local/apache2/logs/access_log {dailycreaterotate 30 }

3.3 logrotate命令

命令格式:logrotate [選項] 配置文件名

選項:

  • -v:顯示日志輪替過程。加了-v選項,會顯示日志的輪替的過程
  • -f:強制進行日志輪替。不管日志輪替的條件是否已經符合,強制配置文件中所有的日志進行輪替

注:如果此命令沒有選項,則會按照配置文件中的條件進行日志輪替

總結

以上是生活随笔為你收集整理的Linux 日志管理的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。