5年碼農白乾了!原來Linux是這樣工作的?看完明白差距不止一點點

語言: CN / TW / HK

今日分享開始啦,請大家多多指教~

今天給大家分享的是Linux系統中的日誌管理。

實驗環境

  • westosa:172.25.254.118
  • westosb:172.25.254.218

在兩個主機裡執行

systemctl stop firewalld

關閉防火牆

一、journald

服務名稱:systemd-journald.service journalctl

預設日誌存放路徑:/run/log

實驗一:journalctl命令的用法

實驗二:用journald服務永久存放日誌

系統預設日誌在:/run/log/journal中
預設方式在系統重啟後會被清理要永久儲存日誌請完成以下操作:

當系統重啟日誌存放路徑會被指定到:/var/log/journal

測試:

1)在操作以上步驟之前檢視日誌

2)重啟系統

3)再次檢視日誌

4)可以看到日誌是不會被儲存下來的只能看到中期之後的日誌

5)完成以上操作之後再次重啟系統可以看到日誌是被儲存下來的

二、rsyslog

服務名稱:rsyslog.service

日誌存放:

/var/log/messages #系統服務日誌,常規資訊,服務報錯

/var/log/secure #系統認證資訊日誌

/var/log/maillog #系統郵件日誌資訊

/var/log/cron #系統定時任務資訊

/var/log/boot.log #系統啟動日誌資訊

配置檔案:/rtc/rsyslog.conf

1、實驗一:自定義日誌採集路徑

vim /etc/rsyslog.conf

  • 日誌型別

auth #使用者認證

authpriv #服務認證

cron #時間任務

kern #核心型別

mail #郵件

news #系統更新資訊

user #使用者

  • 日誌級別

debug #程式排錯資訊

info #程式常規執行資訊

notice #重要資訊的普通日誌

warning #程式警告

err #程式報錯

crit #嚴重級別會導致系統不能正常工作

alert #系統中立即要更改的資訊

emerg #系統中的嚴重問題日誌

none #不採集

2、實驗二:如何更改日誌採集格式

1、定義日誌採集格式

2、設定日誌採集格式應用

(1.在配置檔案中編寫一個名為WESTOS的模板,採集格式為“日誌來源主機IP,生成時間,服務,內容”

(2.對指定檔案用編寫的模板採集日誌,如:讓linux檔案以WESTOS格式採集日誌

(3. 重啟rsyslog服務,檢視linux日誌檔案,格式生效

(4.若是想要所有檔案都採用WESTOS格式,可將預設模板名改為WESTOS

3、實驗三:日誌的遠端同步

實驗目的:
主機A 192.168.1.19:傳送日誌到主機B
主機B 192.168.1.29: 日誌接收端
1.在主機A中修改配置檔案,設定傳送日誌到主機B,重啟服務

@:udp傳輸
@@:tcp傳輸

2.在主機B修改配置檔案,設定接收所有人的日誌

3.檢視到主機B的514埠已開啟,關閉火牆;此時,日誌同步設定已完成

4.為了觀察實驗效果,兩臺主機分別清空日誌檔案,在主機A上執行logger linux 測試命令,在主機B上可以檢視到同步的日誌

三、timedatectl

timedatectl命令用來管理系統的時間

timedatectl set-time +【具體的時間】 設定系統時間

timedatectl list-timezones 顯示所有時區

timedatectl set-timezone+【時區】 設定系統時區

timedatectl set-local-rtc 0/1 設定系統時間計算方式;0表示硬體採用utc計算時間方式,1表示讓硬體採用本地時間

四、 時間同步服務

服務名稱: chronyd.service
配置檔案: /etc/chrony.conf

在主機A中重啟chrony服務,關閉火牆

在主機B中修改配置檔案,同步主機A的時間,重啟chronyd服務

在主機B檢視時間,已變為主機A的時間

主機B使用chronyc sources -v 命令檢視同步效果

小結

在Linux系統核心和許多程式會產生各種錯誤資訊、警告資訊和其他的提示資訊,這些資訊對管理員瞭解系統的執行狀態是非常有用的,所以應該把它們寫到日誌檔案中去,為了方便查閱,可以把核心資訊與其他資訊分開,單獨儲存到一個獨立的日誌檔案中。

今日份分享已結束,請大家多多包涵和指點!

 

「其他文章」