Linux查看日志的命令有很多,比如tail、cat、tac、head、echo等,今天給大家介紹幾種常用的方法:
創(chuàng)新互聯(lián)服務(wù)項目包括惠民網(wǎng)站建設(shè)、惠民網(wǎng)站制作、惠民網(wǎng)頁制作以及惠民網(wǎng)絡(luò)營銷策劃等。多年來,我們專注于互聯(lián)網(wǎng)行業(yè),利用自身積累的技術(shù)優(yōu)勢、行業(yè)經(jīng)驗、深度合作伙伴關(guān)系等,向廣大中小型企業(yè)、政府機構(gòu)等提供互聯(lián)網(wǎng)行業(yè)的解決方案,惠民網(wǎng)站推廣取得了明顯的社會效益與經(jīng)濟效益。目前,我們服務(wù)的客戶以成都為中心已經(jīng)輻射到惠民省份的部分城市,未來相信會繼續(xù)擴大服務(wù)區(qū)域并繼續(xù)獲得客戶的支持與信任!
1、tail-實時查看變化的日志
命令格式:tail [必要參數(shù)][選擇參數(shù)][文件]
-f:循環(huán)讀取
-q:不顯示處理信息
-v:顯示詳細的處理信息
-c數(shù)目:顯示的字節(jié)數(shù)
-n行數(shù):顯示行數(shù)
-q, --quiet, --silent:從不輸出給出文件名的首部
-s, --sleep-interval=S:與-f合用,表示在每次反復的間隔休眠S秒
2、head
跟tail相反,head是看日志的前多少行
head -n 10 test.log:查詢?nèi)罩疚募械那?0行日志;
head -n -10 test.log:查詢?nèi)罩疚募俗詈?0行的其他所有日志;
3、cat-搜索關(guān)鍵字附近的日志
cat是由第一行到最后一行連續(xù)顯示在屏幕上
最常用的命令:cat -n filename | grep "關(guān)鍵字"
cat app.log | grep -C 5 '關(guān)鍵字':顯示日志里匹配字串那行以及前后5行;
cat app.log | grep -B 5 '關(guān)鍵字':顯示匹配字串及前5行;
cat app.log | grep -A 5 '關(guān)鍵字':顯示匹配字串及后5行;
4、more
more命令是一個基于vi編輯器文本過濾器,它以全屏幕的方式按頁顯示文本文件的內(nèi)容,支持vi中的關(guān)鍵字定位操作。
more的語法:more 文件名
1. 前言
在Linux日常管理中,我們肯定有查看某些服務(wù)的日志需求,或者是系統(tǒng)本身的日志。本文主要介紹如何查看Linux的系統(tǒng)日志,包括文件的路徑、工具的使用等等。會看Linux日志是非常重要的,不僅在日常操作中可以迅速排錯,也可以快速的定位。
2. 如何查看Linux日志
Linux日志文件的路徑一般位于,/var/log/,比如ngix的日志路徑為/var/log/nginx/,如果要查看某服務(wù)的日志,還可以使用systemctl status xxx,比如查看ssh服務(wù)的壯態(tài),systemctl status sshd
查看Linux某服務(wù)的日志
Liunx的配置文件在/etc/rsyslog.d里,可以看到如下信息
在linux系統(tǒng)當中,有三個主要的日志子系統(tǒng):
1、連接時間日志:由多個程序執(zhí)行,把記錄寫入到/var/log/wtmp和/var/run/utmp,
login等程序會更新wtmp和utmp文件,使系統(tǒng)管理員能夠跟蹤誰在何時登錄到系統(tǒng)。
2、進程統(tǒng)計:由系統(tǒng)內(nèi)核執(zhí)行,當一個進程終止時,為每個進程往進程統(tǒng)計文件中寫一個記錄。進程統(tǒng)計的目的是為系統(tǒng)中的基本服務(wù)提供命令使用統(tǒng)計
3、錯誤日志:由rsyslogd守護程序執(zhí)行,各種系統(tǒng)守護進程、用戶程序和內(nèi)核通過rsyslogd守護程序向文件/var/log/messages報告值得注意的時間。另外有許多l(xiāng)inux程序創(chuàng)建日志,像HTTP和FTP這樣提供的服務(wù)器也保持詳細的日志。
4、其他日志……
查看Linux日志默認路徑
可以看到在/var/log目錄下存在很多的日志文件,接下來就對里面的一些常用日志文件進行分析
主要日志文件介紹:
內(nèi)核及公共消息日志:/var/log/messages
計劃任務(wù)日志:/var/log/cron
系統(tǒng)引導日志:/var/log/dmesg
郵件系統(tǒng)日志:/var/log/maillog
用戶登錄日志:/var/log/lastlog
/var/log/boot.log(記錄系統(tǒng)在引導過程中發(fā)生的時間)
/var/log/secure (用戶驗證相關(guān)的安全性事件)
/var/log/wtmp(當前登錄用戶詳細信息)
/var/log/btmp(記錄失敗的的記錄)
/var/run/utmp(用戶登錄、注銷及系統(tǒng)開、關(guān)等事件)
日志文件詳細介紹:
/var/log/secure
Linux系統(tǒng)安全日志,記錄用戶和工作組的情況、用戶登陸認證情況
例子:我創(chuàng)建了一個zcwyou的用戶,然后改變了該用戶的密碼,于是該信息就被記錄到該日志下
Linux系統(tǒng)安全日志默認路徑
該日志就詳細的記錄了我操作的過程。
內(nèi)核及公共信息日志,是許多進程日志文件的匯總,從該文件中可以看出系統(tǒng)任何變化
查看Linux內(nèi)核及公共信息日志
系統(tǒng)引導日志
該日志使用dmesg命令快速查看最后一次系統(tǒng)引導的引導日志
查看Linux系統(tǒng)系統(tǒng)引導日志
最近的用戶登錄事件,一般記錄最后一次的登錄事件
該日志不能用諸如cat、tail等查看,因為該日志里面是二進制文件,可以用lastlog命令查看,它根據(jù)UID排序顯示登錄名、端口號(tty)和上次登錄時間。如果一個用戶從未登錄過,lastlog顯示 Never logged。
該日志文件永久記錄每個用戶登錄、注銷及系統(tǒng)的啟動、停機的事件。該日志為二進制文件,不能用諸如tail/cat/等命令,使用last命令查看。
記錄郵件的收發(fā)
此文件是記錄錯誤登錄的日志,可以記錄有人使用暴力破解ssh服務(wù)的日志。該文件用lastb打開
該日志記錄當前用戶登錄的情況,不會永久保存記錄??梢杂脀ho/w命令來查看
3. 常用的日志分析工具與使用方法
3.1 統(tǒng)計一個文本中包含字符個數(shù)
3.2 查看當天訪問排行前10的url
3.3 查看apache的進程數(shù)
3.4 訪問量前10的IP
cut部分表示取第1列即IP列,取第4列則為URL的訪問量
3.5 查看最耗時的頁面
按第2列響應時間逆序排序
3.6 使用grep查找文件中指定字符出現(xiàn)的次數(shù)
-o 指示grep顯示所有匹配的地方,并且每一個匹配單獨一行輸出。這樣只要統(tǒng)計輸出的行數(shù)就可以知道這個字符出現(xiàn)的次數(shù)了。
4. 總結(jié)
查看Linux日志需求了解和熟悉使用一些常用的工具方能提升我們的查找和定位效率。比如使用 Grep 搜索,使用Tail命令,使用Cut,使用AWK 和 Grok 解析日志和使用 Rsyslog 和 AWK 過濾等等,只要能掌握這些工具。我們才能高效地處理和定位故障點。
linux中跟蹤日志打印方法如下
1、按住win+R組合鍵,輸入cmd,然后回車。
2、登陸到遠程linux,回車,然后輸入密碼。
3、輸入 cd+日志目錄名命令,回車即可進入到日志目錄。
4、輸入tail -f xxx.log命令。
5、命令行中只要有請求就會打印出來日志。
linux查看日志命令:
tail:
-n是顯示行號;相當于nl命令;例子如下:
tail -100f test.log實時監(jiān)控100行日志。
tail -n 10 test.log查詢?nèi)罩疚膊孔詈?0行的日志。
tail -n +10 test.log查詢10行之后的所有日志。
head:
跟tail是相反的,tail是看后多少行日志;例子如下:
head -n 10 test.log查詢?nèi)罩疚募械念^10行日志。
head -n -10 test.log查詢?nèi)罩疚募俗詈?0行的其他所有日志。
cat:
tac是倒序查看,是cat單詞反寫;例子如下:
cat -n test.log |grep "debug"查詢關(guān)鍵字的日志。
命令功能:
tail用于顯示指定文件末尾內(nèi)容,不指定文件時,作為輸入信息進行處理。常用于查看日志文件后多少行日志信息。
使用tail -f可以查看動態(tài)日志文件,tail -f filename可以把filename里最尾部的內(nèi)容顯示在屏幕上,并且不斷刷新,使你看到最新的文件內(nèi)容。
tail -n行數(shù)可以顯示指定行數(shù)信息。