因為我是做運維工作的,主要負責Linux系統(tǒng)交付這塊的工作,所以經(jīng)常需要查看系統(tǒng)的安裝完成時間,來分析工作中的一些問題。查看的方法就是執(zhí)行l(wèi)ast命令,根據(jù)系統(tǒng)最近一次的啟動時間和次數(shù)來判斷是什么時候重裝完成的。在這里簡單的寫寫last命令的用法,命令其實很簡單,只不過經(jīng)常用,應該多了解一點
創(chuàng)新互聯(lián)成立與2013年,是專業(yè)互聯(lián)網(wǎng)技術(shù)服務(wù)公司,擁有項目網(wǎng)站建設(shè)、做網(wǎng)站網(wǎng)站策劃,項目實施與項目整合能力。我們以讓每一個夢想脫穎而出為使命,1280元漠河做網(wǎng)站,已為上家服務(wù),為漠河各地企業(yè)和個人服務(wù),聯(lián)系電話:18982081108
這個不多解釋了
這里需要啟動psacct 服務(wù)器,才能有顯示
1.linux如何查看用戶所有的歷史操作記錄
1、使用w命令查看登錄用戶正在使用的進程信息,w命令用于顯示已經(jīng)登錄系統(tǒng)的用戶的名稱,以及他們正在做的事。該命令所使用的信息來源于/var/run/utmp文件。w命令輸出的信息包括:用戶名稱
用戶的機器名稱或tty號
遠程主機地址
用戶登錄系統(tǒng)的時間
空閑時間(作用不大)
附加到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系統(tǒng)的環(huán)境下,不管是root用戶還是其它的用戶只有登陸系統(tǒng)后用進入操作我們都可以通過命令history來查看歷史記錄, 可是假如一臺服務(wù)器多人登陸,一天因為某人誤操作了刪除了重要的數(shù)據(jù)。這時候通過查看歷史記錄(命令:history)是沒有什么意義了(因為history只針對登錄用戶下執(zhí)行有效,即使root用戶也無法得到其它用戶histotry歷史)。那有沒有什么辦法實現(xiàn)通過記錄登陸后的IP地址和某用戶名所操作的歷史記錄呢?答案:有的。
通過在/etc/profile里面加入以下代碼就可以實現(xiàn):
2.liunx 怎么查看用戶登錄 的歷史記錄
查看某用戶 cat /home/username/.bash_history 的操作歷史
使用root登陸使用last -x可查看用戶登陸歷史。
last 命令:
功能說明:列出目前與過去登入系統(tǒng)的用戶相關(guān)信息。
語 法:last [-adRx][-f ][-n ][帳號名稱…][終端機編號…]
補充說明:單獨執(zhí)行l(wèi)ast指令,它會讀取位于/var/log目錄下,
名稱為wtmp的文件,并把該給文件的內(nèi)容記錄的登入系統(tǒng)的用戶名單全部顯示出來。
參 數(shù):
-a 把從何處登入系統(tǒng)的主機名稱或IP地址,顯示在最后一行。
-d 將IP地址轉(zhuǎn)換成主機名稱。
-f 指定記錄文件。
-n 或- 設(shè)置列出名單的顯示列數(shù)。
-R 不顯示登入系統(tǒng)的主機名稱或IP地址。
-x 顯示系統(tǒng)關(guān)機,重新開機,以及執(zhí)行等級的改變等信息
3.linux查看歷史操作記錄
這個是某位高人寫的。希望對你有幫助。那有沒有什么辦法實現(xiàn)通過記錄登陸后的IP地址和某用戶名所操作的歷史記錄呢?答案:有的。
通過在/etc/profile里面加入以下代碼就可以實現(xiàn): #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命令的時候是沒時間顯示,不知道這個命令是什么時候所執(zhí)行,這個時候可以編輯/etc/bashrc文件,加入如下三行:HISTFILESIZE=2000
HISTSIZE=2000
HISTTIMEFORMAT=”%Y%m%d-%H%M%S: ”
export HISTTIMEFORMAT保存后退出,關(guān)閉當前shell,并重新登錄
這個時候,在~/.bash_History文件中,就有記錄命令執(zhí)行的時間了
用cat命令顯示這個文件,但是卻會看到這個時間不是年月日顯示的
對于RPM包封裝的Linux發(fā)行版本,系統(tǒng)日志多數(shù)存放在/var/log目錄下,對于了解此目錄的文檔作用就十分重要,下面列出了常用的日志文檔,包括樓主提到的文件作用:
/var/log:常用目錄,專門用來存放所有日志文件的目錄,里面存放很多系統(tǒng)、軟件、用戶等相關(guān)的日志信息;里面有一些文件是比較常用的;
lastlog:記錄用戶最后一次登錄的信息,使用lastlog命令讀?。?/p>
message:記錄系統(tǒng)的幾乎所有信息,主要包括啟動信息,syslogd服務(wù)記錄的信息等;
wtmp:記錄所有用戶登陸及注銷的信息,使用last命令讀??;
secure:記錄登錄系統(tǒng)訪問數(shù)據(jù)的文件,如ssh pop3 telnet ftp等都會記錄在此文件中
/var/log/httpd/access_log:httpd訪問日志
/var/log/httpd/error_log:httpd錯誤日志
btmp:記錄失敗的用戶登錄
utmp: 紀錄當前登錄的每個用戶
xferlog:ftp會話日志
boot.log:記錄開機或一些服務(wù)啟動時所顯示的啟動和關(guān)閉信息
/var/log/maillog或/var/log/mail/*:記錄郵件訪問或往來的用戶信息
cron: 記錄crontab例行性服務(wù)的內(nèi)容
dmesg:開機引導日志信息
sudolog:紀錄使用sudo發(fā)出的命令
sulog: 紀錄使用su命令的使用