1.linux如何查看用戶所有的歷史操作記錄
成都創新互聯主要從事網站制作、成都做網站、網頁設計、企業做網站、公司建網站等業務。立足成都服務宣恩,10多年網站建設經驗,價格優惠、服務專業,歡迎來電咨詢建站服務:028-86922220
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 w命令用于顯示目前登入系統的用戶信息。
執行這項指令可得知目前登入系統的用戶有哪些人,以及他們正在執行的程序。
單獨執行 w 指令會顯示所有的用戶,您也可指定用戶名稱,僅顯示某位用戶的相關信息。
uptime 命令告訴你系統啟動up了(運行了)多長時間。《linux 就該這么學》這是語法:
uptime [options]
這個工具的 man 頁是這么說的:
uptime會在一行中顯示下列信息:當前時間、系統運行了多久時間、當前登錄的用戶有多少,以及前 1、5 和 15 分鐘系統的平均負載。
chmod 修改文件或目錄的訪問權限。
o表示other 其他組
w表示寫,+表示增加權限。
整個命令的意思是給其他組的成員增加寫權限
一、查看Linux系統的歷史記錄指令
1、 使用w命令查看登錄用戶正在使用的進程信息
w命令用于顯示已經登錄系統的用戶的名稱,以及他們正在做的事。該命令所使用的信息來源于/var/run/utmp文件。w命令輸出的信息包括:
? 用戶名稱
? 用戶的機器名稱或tty號
? 遠程主機地址
? 用戶登錄系統的時間
? 空閑時間(作用不大)
? 附加到tty(終端)的進程所用的時間(JCPU時間)
? 當前進程所用時間(PCPU時間)
? 用戶當前正在使用的命令
Exampl:
?
此外,可以使用who am i查看使用該命令的用戶及進程,使用who查看所有登錄用戶進程信息,這些查看命令大同小異;
2、使用pkill強制退出登錄的用戶
使用pkill可以結束當前登錄用戶的進程,從而強制退出用戶登錄,具體使用可以結合w命令;
首先:使用w查看當前登錄的用戶,注意TTY所示登錄進程終端號
其次:使用pkill –9 -t pts/1 結束pts/1進程所對應用戶登錄(可根據FROM的IP地址或主機號來判斷)
3、使用history指令查看歷史用戶操作指令
使用完W指令查看用戶的操作進程后,使用history指令可以看到以往的用戶操作指令。
History使用參數
[neusoftadmin@server]# history [n] **:數字,要列出最近的 n 筆命令列表
[neusoftadmin@server]# history [-c] **:將目前的shell中的所有 history 內容全部消除
[neusoftadmin@server]# history [-raw] histfiles
-a :將目前新增的history 指令新增入 histfiles 中,若沒有加 histfiles ,
則預設寫入 ~/.bash_history
-r :將 histfiles 的內容讀到目前這個 shell 的 history 記憶中
-w :將目前的 history 記憶內容寫入 histfiles。
?
備注:
Linux系統當你在shell(控制臺)中輸入并執行命令時,shell會自動把你的命令記錄到歷史列表中,一般保存在用戶目錄下的.bash_history文件中。默認保存1000條,你也可以更改這個值。
如果你鍵入 history, history會向你顯示你所使用的前1000個歷史命令,并且給它們編了號,你會看到一個用數字編號的列表快速從屏幕上卷過。你可能不需要查看1000個命令中的所有項目, 當然你也可以加入數字來列出最近的 n 筆命令列表。
linux中history命令不僅僅讓我們可以查詢歷史命令而已. 我們還可以利用相關的功能來幫我們執行命令。
二、查看所有登錄用戶的操作歷史的代碼
通過在/etc/profile里面加入以下代碼就可以實現:
**#this script records log of user,and records IP address .**
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/Iprecords ]
then
mkdir /tmp/Iprecords
chmod 777 /tmp/Iprecords
fi
if [ ! -d /tmp/Iprecords/${LOGNAME} ]
then
mkdir /tmp/Iprecords/${LOGNAME}
chmod 300 /tmp/Iprecords/${LOGNAME}
fi
export HISTSIZE=4096
DT=`date "+%Y-%m-%d_%H:%M:%S"`
export HISTFILE="/tmp/Iprecords/${LOGNAME}/${USER_IP} Iprecords.$DT"
chmod 600 /tmp/Iprecords/${LOGNAME}/*Iprecords* 2/dev/null
[neusoftadmin@server]# source /etc/profile ********執行腳本
重啟之后,上面腳本在系統的/tmp新建個Iprecords目錄,記錄所有登陸過系統的用戶和IP地址(文件名),每當用戶登錄/退出會創建相應的文件,該文件保存這段用戶登錄時期內操作歷史,可以用這個方法來監測系統的安全性。
網站欄目:linux中w命令的用法 linux w命令
當前網址:http://vcdvsql.cn/article6/doieoig.html
成都網站建設公司_創新互聯,為您提供建站公司、手機網站建設、全網營銷推廣、自適應網站、電子商務、微信公眾號
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯