導航:首頁 > 文件類型 > linux搜日誌文件

linux搜日誌文件

發布時間:2024-08-02 22:20:18

1. linux系統日誌怎麼查看

1. 前言

在Linux日常管理中,我們肯定有查看某些服務的日誌需求,或者是系統本身的日誌。本文主要介紹如何查看Linux的系統日誌,包括文件的路徑、工具的使用等等。會看Linux日誌是非常重要的,不僅在日常操作中可以迅速排錯,也可以快速的定位。

2. 如何查看Linux日誌

Linux日誌文件的路徑一般位於,/var/log/,比如ngix的日誌路徑為/var/log/nginx/,如果要查看某服務的日誌,還可以使用systemctl status xxx,比如查看ssh服務的壯態,systemctl status sshd

查看Linux某服務的日誌

Liunx的配置文件在/etc/rsyslog.d里,可以看到如下信息

在linux系統當中,有三個主要的日誌子系統:

1、連接時間日誌:由多個程序執行,把記錄寫入到/var/log/wtmp和/var/run/utmp,

login等程序會更新wtmp和utmp文件,使系統管理員能夠跟蹤誰在何時登錄到系統。

2、進程統計:由系統內核執行,當一個進程終止時,為每個進程往進程統計文件中寫一個記錄。進程統計的目的是為系統中的基本服務提供命令使用統計

3、錯誤日誌:由rsyslogd守護程序執行,各種系統守護進程、用戶程序和內核通過rsyslogd守護程序向文件/var/log/messages報告值得注意的時間。另外有許多linux程序創建日誌,像HTTP和FTP這樣提供的伺服器也保持詳細的日誌。

4、其他日誌……

查看Linux日誌默認路徑

可以看到在/var/log目錄下存在很多的日誌文件,接下來就對裡面的一些常用日誌文件進行分析

主要日誌文件介紹:

內核及公共消息日誌:/var/log/messages

計劃任務日誌:/var/log/cron

系統引導日誌:/var/log/dmesg

郵件系統日誌:/var/log/maillog

用戶登錄日誌:/var/log/lastlog

/var/log/boot.log(記錄系統在引導過程中發生的時間)

/var/log/secure (用戶驗證相關的安全性事件)

/var/log/wtmp(當前登錄用戶詳細信息)

/var/log/btmp(記錄失敗的的記錄)

/var/run/utmp(用戶登錄、注銷及系統開、關等事件)

日誌文件詳細介紹:

/var/log/secure

Linux系統安全日誌,記錄用戶和工作組的情況、用戶登陸認證情況

例子:我創建了一個zcwyou的用戶,然後改變了該用戶的密碼,於是該信息就被記錄到該日誌下

Linux系統安全日誌默認路徑

該日誌就詳細的記錄了我操作的過程。

內核及公共信息日誌,是許多進程日誌文件的匯總,從該文件中可以看出系統任何變化

查看Linux內核及公共信息日誌

系統引導日誌

該日誌使用dmesg命令快速查看最後一次系統引導的引導日誌

查看Linux系統系統引導日誌

最近的用戶登錄事件,一般記錄最後一次的登錄事件

該日誌不能用諸如cat、tail等查看,因為該日誌裡面是二進制文件,可以用lastlog命令查看,它根據UID排序顯示登錄名、埠號(tty)和上次登錄時間。如果一個用戶從未登錄過,lastlog顯示 Never logged。

該日誌文件永久記錄每個用戶登錄、注銷及系統的啟動、停機的事件。該日誌為二進制文件,不能用諸如tail/cat/等命令,使用last命令查看。

記錄郵件的收發

此文件是記錄錯誤登錄的日誌,可以記錄有人使用暴力破解ssh服務的日誌。該文件用lastb打開

該日誌記錄當前用戶登錄的情況,不會永久保存記錄。可以用who/w命令來查看

3. 常用的日誌分析工具與使用方法

3.1 統計一個文本中包含字元個數

3.2 查看當天訪問排行前10的url

3.3 查看apache的進程數

3.4 訪問量前10的IP

cut部分表示取第1列即IP列,取第4列則為URL的訪問量

3.5 查看最耗時的頁面

按第2列響應時間逆序排序

3.6 使用grep查找文件中指定字元出現的次數

-o 指示grep顯示所有匹配的地方,並且每一個匹配單獨一行輸出。這樣只要統計輸出的行數就可以知道這個字元出現的次數了。

4. 總結

查看Linux日誌需求了解和熟悉使用一些常用的工具方能提升我們的查找和定位效率。比如使用 Grep 搜索,使用Tail命令,使用Cut,使用AWK 和 Grok 解析日誌和使用 Rsyslog 和 AWK 過濾等等,只要能掌握這些工具。我們才能高效地處理和定位故障點。

https://www.linuxrumen.com/rmxx/647.html

2. Linux鏃ュ織鏌ヨ㈠懡浠linux鏃ュ織鏌ヨ

linux鎬庝箞鏌ョ湅log鏃ュ織錛

linux瀹炴椂鏌ョ湅log鏃ュ織鍛戒護鐨勬柟娉曪細鏌ョ湅涓涓鏂囦歡鎴栬呬竴涓鏃ュ織鏂囦歡錛岄氬父鐢ㄣ恗orexx.log銆戞垨鑰卌at鏌ョ湅錛岄渶瑕佸疄鏃剁殑鏌ョ湅榪愯屾棩蹇楋紝浣跨敤tail鍛戒護鏉ユ煡鐪嬶紝浠g爜涓恆恡ail-fxx.log銆戙

linux涓嬫煡鎵炬棩蹇楃殑鎶宸э紵

鍏堝繀欏諱簡瑙d袱涓鏈鍩烘湰鐨勫懡浠:

tail-n10test.log鏌ヨ㈡棩蹇楀熬閮ㄦ渶鍚10琛岀殑鏃ュ織;

tail-n+10test.log鏌ヨ10琛屼箣鍚庣殑鎵鏈夋棩蹇;

head-n10test.log鏌ヨ㈡棩蹇楁枃浠朵腑鐨勫ご10琛屾棩蹇;

head-n-10test.log鏌ヨ㈡棩蹇楁枃浠墮櫎浜嗘渶鍚10琛岀殑鍏朵粬鎵鏈夋棩蹇;

鍦烘櫙1:鎸夎屽彿鏌ョ湅---榪囨護鍑哄叧閿瀛楅檮榪戠殑鏃ュ織

鍥犱負閫氬父鏃跺欐垜浠鐢╣rep鎷垮埌鐨勬棩蹇楀緢灝,鎴戜滑闇瑕佹煡鐪嬮檮榪戠殑鏃ュ織.鎴戞槸榪欐牱鍋氱殑,棣栧厛:cat-ntest.log|grep"鍦板艦"寰楀埌鍏抽敭鏃ュ織鐨勮屽彿銆

3>寰楀埌"鍦板艦"鍏抽敭瀛楁墍鍦ㄧ殑琛屽彿鏄102琛.姝ゆ椂濡傛灉鎴戞兂鏌ョ湅榪欎釜鍏抽敭瀛楀墠10琛屽拰鍚10琛岀殑鏃ュ織:

cat-ntest.log|tail-n+92|head-n20

tail-n+92琛ㄧず鏌ヨ92琛屼箣鍚庣殑鏃ュ織

head-n20鍒欒〃紺哄湪鍓嶉潰鐨勬煡璇㈢粨鏋滈噷鍐嶆煡鍓20鏉¤板綍

鍦烘櫙2:閭d箞鎸夋棩鏈熸庝箞鏌ュ憿?閫氬父鎴戜滑闈炲父闇瑕佹煡鎵炬寚瀹氭椂闂寸鐨勬棩蹇

sed-n'/2014-12-1716:17:20/,/2014-12-1716:17:36/p'test.log鐗瑰埆璇存槑:涓婇潰鐨勪袱涓鏃ユ湡蹇呴』鏄鏃ュ織涓鎵撳嵃鍑烘潵鐨勬棩蹇,鍚﹀垯鏃犳晥.銆傚叧浜庢棩鏈熸墦鍗,鍙浠ュ厛grep񟭎-12-1716:17:20'test.log鏉ョ『瀹氭棩蹇椾腑鏄鍚︽湁璇ユ椂闂寸偣,浠ョ『淇濈4姝ュ彲浠ユ嬁鍒版棩蹇

榪欎釜鏍規嵁鏃墮棿孌墊煡璇㈡棩蹇楁槸闈炲父鏈夌敤鐨勫懡浠.

濡傛灉鎴戜滑鏌ユ壘鐨勬棩蹇楀緢澶,鎵撳嵃鍦ㄥ睆騫曚笂涓嶆柟渚挎煡鐪,鏈変袱涓鏂規硶:

(1)浣跨敤more鍜宭ess鍛戒護,濡:cat-ntest.log|grep"鍦板艦"|more榪欐牱灝卞垎欏墊墦鍗頒簡,閫氳繃鐐瑰嚮絀烘牸閿緲婚〉

(2)浣跨敤>xxx.txt灝嗗叾淇濆瓨鍒版枃浠朵腑,鍒版椂鍙浠ユ媺涓嬭繖涓鏂囦歡鍒嗘瀽.濡:

cat-ntest.log|grep"鍦板艦">xxx.txt

linux鎬庢牱瀹炴椂鏌ョ湅鏃ュ織鏂囦歡錛

瑕佺湅浣犳兂鏌ヤ粈涔堟牱鐨勬棩蹇椾簡錛宭inux涓嬮潰鏃ュ織鏈夊緢澶氾紝鏈夌郴緇熺殑錛屾湁搴旂敤鐨勩傚傛灉鏄緋葷粺涓嬮潰鐨勬棩蹇楋紝涓鑸閮藉湪/var/log涓嬮潰銆

濡傛灉鏄鐪嬪簲鐢ㄦ棩蹇楋紝閭e氨鍒板簲鐢ㄦ棩蹇楁墍鍦ㄧ洰褰曞幓鐪嬶紝榪欎釜瑕佺湅鍏蜂綋搴旂敤錛屾瘡涓鐨勮礬寰勯兘涓嶄竴鏍楓

涓鑸鏌ョ湅鏃ュ織錛屽彲浠ョ湅闈欐佹棩蹇楋紝涔熷氨鏄鐢'vi鏃ュ織鏂囦歡鍚'錛屾垨鑰呯敤more涔嬬被鐨勫伐鍏鋒煡鐪嬨

榪樺彲浠ョ湅鍔ㄦ佹棩蹇楋紝鐢'tail-f鏃ュ織鏂囦歡鍚'錛屽彲浠ュ疄鏃舵煡鐪嬫墦鍛戒護涔嬪悗浜х敓鐨勬墍鏈夋柊鏃ュ織銆

linux搴旂敤涓繪満濡備綍鏌ョ湅閿欒鏃ュ織錛

浠ヤ笅鏄濡備綍鏌ョ湅閿欒鏃ュ織鏂規硶錛屼粎渚涘弬鑰冦

1銆佽繛鎺ヤ笂鐩稿簲鐨刲inux涓繪満錛岃繘鍏ュ埌絳夊緟杈撳叆shell鎸囦護鐨刲inux鍛戒護琛岀姸鎬佷笅銆

2銆佸叾嬈★紝鍦╨inux鍛戒護琛屼腑杈撳叆錛歵ail/var/log/messages銆

3銆佹渶鍚庯紝鎸変笅鍥炶濺閿鎵ц宻hell鎸囦護錛屾ゆ椂浼氱湅鍒發inux鐨勯敊璇鏃ュ織琚鎵撳嵃鍑恆

3. linux中怎樣查看日誌

方法/步驟

  • 先必須了解兩個最基本的命令:

    tail -n 10 test.log 查詢日誌尾部最後10行的日誌;

    tail -n +10 test.log 查詢10行之後的所有日誌;

    head -n 10 test.log 查詢日誌文件中的頭10行日誌;

    head -n -10 test.log 查詢日誌文件除了最後10行的其他所有日誌;

  • 場景1: 按行號查看---過濾出關鍵字附近的日誌

    因為通常時候我們用grep拿到的日誌很少,我們需要查看附近的日誌.

    我是這樣做的,首先: cat -n test.log |grep "地形" 得到關鍵日誌的行號

  • <3>得到"地形"關鍵字所在的行號是102行. 此時如果我想查看這個關鍵字前10行和後10行的日誌:

    cat -n test.log |tail -n +92|head -n 20

    tail -n +92表示查詢92行之後的日誌

    head -n 20 則表示在前面的查詢結果里再查前20條記錄

  • 場景2:那麼按日期怎麼查呢? 通常我們非常需要查找指定時間端的日誌

    sed -n '/2014-12-17 16:17:20/,/2014-12-17 16:17:36/p' test.log

    特別說明:上面的兩個日期必須是日誌中列印出來的日誌,否則無效.

  • 關於日期列印,可以先 grep '2014-12-17 16:17:20' test.log 來確定日誌中是否有該時間點,以確保第4步可以拿到日誌

    這個根據時間段查詢日誌是非常有用的命令.

  • 如果我們查找的日誌很多,列印在屏幕上不方便查看, 有兩個方法:

    (1)使用more和less命令, 如: cat -n test.log |grep "地形" |more 這樣就分頁列印了,通過點擊空格鍵翻頁

    (2)使用 >xxx.txt 將其保存到文件中,到時可以拉下這個文件分析.如:

    cat -n test.log |grep "地形" >xxx.txt

  • 這幾個日誌查看方法應該可以滿足日常需求了.

閱讀全文

與linux搜日誌文件相關的資料

熱點內容
傑德原車導航升級 瀏覽:240
編程dest是什麼意思 瀏覽:935
linux埠鏡像 瀏覽:820
iphone5屏幕清塵 瀏覽:157
機頂盒密碼怎麼改 瀏覽:672
w7系統下載32位教程 瀏覽:618
pcb文件包括哪些內容 瀏覽:598
g00文件 瀏覽:607
用bat程序刪除程序 瀏覽:516
dnf鬼泣90版本打安圖恩 瀏覽:668
245倒角編程怎麼計算 瀏覽:599
可以買生活用品的app有哪些 瀏覽:175
cad在c盤產生的文件夾 瀏覽:541
聯想手機解鎖工具 瀏覽:696
瑞銀3887win10 瀏覽:833
學網路編程哪個好 瀏覽:805
手機vmos導入的文件在哪裡 瀏覽:115
蘋果手機可以把文件傳到華為嗎 瀏覽:63
海川化工下載的文件默認到哪裡 瀏覽:343
學唱粵語歌app 瀏覽:975

友情鏈接