對于RPM包封裝的Linux發行版本,系統日志多數存放在/var/log目錄下,對于了解此目錄的文檔作用就十分重要,下面列出了常用的日志文檔,包括樓主提到的文件作用:
順平網站制作公司哪家好,找創新互聯建站!從網頁設計、網站建設、微信開發、APP開發、響應式網站開發等網站項目制作,到程序開發,運營維護。創新互聯建站從2013年創立到現在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創新互聯建站。
/var/log:常用目錄,專門用來存放所有日志文件的目錄,里面存放很多系統、軟件、用戶等相關的日志信息;里面有一些文件是比較常用的;
lastlog:記錄用戶最后一次登錄的信息,使用lastlog命令讀取;
message:記錄系統的幾乎所有信息,主要包括啟動信息,syslogd服務記錄的信息等;
wtmp:記錄所有用戶登陸及注銷的信息,使用last命令讀取;
secure:記錄登錄系統訪問數據的文件,如ssh pop3 telnet ftp等都會記錄在此文件中
/var/log/httpd/access_log:httpd訪問日志
/var/log/httpd/error_log:httpd錯誤日志
btmp:記錄失敗的用戶登錄
utmp: 紀錄當前登錄的每個用戶
xferlog:ftp會話日志
boot.log:記錄開機或一些服務啟動時所顯示的啟動和關閉信息
/var/log/maillog或/var/log/mail/*:記錄郵件訪問或往來的用戶信息
cron: 記錄crontab例行性服務的內容
dmesg:開機引導日志信息
sudolog:紀錄使用sudo發出的命令
sulog: 紀錄使用su命令的使用
Linux系統日志文件存放在/var/log下
/var/log/cron 記錄了系統定時任務相關的日志;
/var/log/cups 記錄打印信息的日志;
/var/log/dmesg 記錄了系統在開機時內核自檢的信息,也可以使用dmesg命令直接查看內核自檢信息。
/var/log/btmp 記錄錯誤登錄的日志,這個文件是二進制文件,不能直接vi查看,而要使用lastb命令查看;
/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等命令;
1、使用w命令查看登錄用戶正在使用的進程信息
Linux w命令用于顯示目前登入系統的用戶信息。
執行這項指令可得知目前登入系統的用戶有哪些人,以及他們正在執行的程序。
單獨執行w指令會顯示所有的用戶,您也可指定用戶名稱,僅顯示某位用戶的相關信息。
語法:
w [-fhlsuV][用戶名稱]
參數:
-f 開啟或關閉顯示用戶從何處登入系統。
-h 不顯示各欄位的標題信息列。
-l 使用詳細格式列表,此為預設值。
-s 使用簡潔格式列表,不顯示用戶登入時間等。
-u 忽略執行程序的名稱,以及該程序耗費CPU時間的信息。
-V 顯示版本信息。
w命令用于顯示已經登錄系統的用戶的名稱,以及他們正在做的事。該命令所使用的信息來源于/var/run/utmp文件。
w命令輸出的信息包括:用戶名稱、用戶的機器名稱或tty號、遠程主機地址、用戶登錄系統的時間、空閑時間、當前進程所用時間、用戶當前正在使用的命令。
2、使用who命令查看用戶名稱及所啟動的進程
who命令用于列舉出當前已登錄系統的用戶名稱。其輸出為:用戶名、tty號、時間日期、主機地址。
Linux中who命令用于顯示系統中有哪些使用者正在上面,顯示的資料包含了使用者ID、使用的終端機、從哪邊連上來的、上線時間、呆滯時間、CPU使用量、動作等等。
語法:
who[參數]
可得知目前有那些用戶登入系統,單獨執行who指令會列出登入帳號,使用的終端機,登入時間以及從何處登入或正在使用哪個X顯示器。
參數:
-H或--heading 顯示各欄位的標題信息列。
-i或-u或-idle
顯示閑置時間,若該用戶在前一分鐘之內有進行任何動作,將標示成.號,如果該用戶已超過24小時沒有任何動作,則標示出old字符串。
-m 此參數的效果和指定am i字符串相同。
-q或--count 只顯示登入系統的帳號名稱和總人數。
-w或-T或--mesg或--message或--writable 顯示用戶的信息狀態欄。
-l 列出任何登錄進程。
-T或-w 顯示用戶的信息狀態欄。
1.linux如何查看用戶所有的歷史操作記錄
1、使用w命令查看登錄用戶正在使用的進程信息,w命令用于顯示已經登錄系統的用戶的名稱,以及他們正在做的事。該命令所使用的信息來源于/var/run/utmp文件。w命令輸出的信息包括:用戶名稱
用戶的機器名稱或tty號
遠程主機地址
用戶登錄系統的時間
空閑時間(作用不大)
附加到tty(終端)的進程所用的時間(JCPU時間)
當前進程所用時間(PCPU時間)
用戶當前正在使用的命令
$ w
23:04:27 up 29 days, 7:51, 3 users, load average: 0.04, 0.06, 0.02
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
ramesh pts/0 10.1.80.56 22:57 8.00s 0.05s 0.01s sshd: ramesh [priv]
jason pts/1 10.20.48 23:01 2:53 0.01s 0.01s -bash
john pts/2 10.1.80.7 23:04 0.00s 0.00s 0.00s w
此外,可以使用who am i查看使用該命令的用戶及進程,使用who查看所有登錄用戶進程信息,這些查看命令大同小異;
2. 在linux系統的環境下,不管是root用戶還是其它的用戶只有登陸系統后用進入操作我們都可以通過命令history來查看歷史記錄, 可是假如一臺服務器多人登陸,一天因為某人誤操作了刪除了重要的數據。這時候通過查看歷史記錄(命令:history)是沒有什么意義了(因為history只針對登錄用戶下執行有效,即使root用戶也無法得到其它用戶histotry歷史)。那有沒有什么辦法實現通過記錄登陸后的IP地址和某用戶名所操作的歷史記錄呢?答案:有的。
通過在/etc/profile里面加入以下代碼就可以實現:
2.liunx 怎么查看用戶登錄 的歷史記錄
查看某用戶 cat /home/username/.bash_history 的操作歷史
使用root登陸使用last -x可查看用戶登陸歷史。
last 命令:
功能說明:列出目前與過去登入系統的用戶相關信息。
語 法:last [-adRx][-f ][-n ][帳號名稱…][終端機編號…]
補充說明:單獨執行last指令,它會讀取位于/var/log目錄下,
名稱為wtmp的文件,并把該給文件的內容記錄的登入系統的用戶名單全部顯示出來。
參 數:
-a 把從何處登入系統的主機名稱或IP地址,顯示在最后一行。
-d 將IP地址轉換成主機名稱。
-f 指定記錄文件。
-n 或- 設置列出名單的顯示列數。
-R 不顯示登入系統的主機名稱或IP地址。
-x 顯示系統關機,重新開機,以及執行等級的改變等信息
3.linux查看歷史操作記錄
這個是某位高人寫的。希望對你有幫助。那有沒有什么辦法實現通過記錄登陸后的IP地址和某用戶名所操作的歷史記錄呢?答案:有的。
通過在/etc/profile里面加入以下代碼就可以實現: #PS1=”`whoami`@`hostname`:”'[$PWD]'
#history
USER_IP=`who -u am i 2/dev/null| awk '{print $NF}'|sed -e 's/[]//g'`
if [ "$USER_IP" = "" ]
then
USER_IP=`hostname`
fi
if [ ! -d /tmp/dbasky ]
then
mkdir /tmp/dbasky
chmod 777 /tmp/dbasky
fi
if [ ! -d /tmp/dbasky/${LOGNAME} ]
then
mkdir /tmp/dbasky/${LOGNAME}
chmod 300 /tmp/dbasky/${LOGNAME}
fi
export HISTSIZE=4096
DT=`date +” %Y%m%d_%H%M%S”`
export HISTFILE=”/tmp/dbasky/${LOGNAME}/${USER_IP}.dbasky.$DT”
chmod 600 /tmp/dbasky/${LOGNAME}/*dbasky* 2/dev/null可以看到在使用history命令的時候是沒時間顯示,不知道這個命令是什么時候所執行,這個時候可以編輯/etc/bashrc文件,加入如下三行:HISTFILESIZE=2000
HISTSIZE=2000
HISTTIMEFORMAT=”%Y%m%d-%H%M%S: ”
export HISTTIMEFORMAT保存后退出,關閉當前shell,并重新登錄
這個時候,在~/.bash_History文件中,就有記錄命令執行的時間了
用cat命令顯示這個文件,但是卻會看到這個時間不是年月日顯示的
網站標題:關于linux命令utmp的信息
網頁鏈接:http://vcdvsql.cn/article34/dosdipe.html
成都網站建設公司_創新互聯,為您提供微信公眾號、微信小程序、虛擬主機、手機網站建設、網站改版、軟件開發
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯