查看系統用戶登陸信息的命令(7個)
1.whoami:顯示當前有效的用戶名稱,相當於執行id -un命令
命 令:id
功能說明:查看顯示目前登陸賬戶的uid和gid及所屬分組及用戶名
語 法:id [-gGnru][–help][–version][用戶名稱]
補充說明:id會顯示用戶以及所屬羣組的實際與有效ID。若兩個ID相同,則僅顯示實際ID。若僅指定用戶名稱,則顯示目前用戶的ID。
這個命令在溢出時經常用到,查看是不是溢出root成功,執行一下id命令,顯示uid=0,則成功了。
參 數:
-g或–group 顯示用戶所屬羣組的ID。
-G或–groups 顯示用戶所屬附加羣組的ID。
-n或–name 顯示用戶,所屬羣組或附加羣組的名稱。
-r或–real 顯示實際ID。
-u或–user 顯示用戶ID。
-help 顯示幫助。
-version 顯示版本信息
執行結果:
[root]#id
uid=0(root) gid=0(root) groups=0(root),1(bin),2(daemon),3(sys),4(adm),6(disk),10(wheel)
[root]#su linuxso
[]$id
uid=505(linuxso) gid=505(linuxso) groups=504(test),505(linuxso)
[root]-> whoami
root
[root]-> id root
uid=0(root) gid=0(root) groups=0(root)
2.who:顯示目前登錄系統的用戶信息
who命令是顯示目前登錄系統的用戶信息。執行who命令可得知目前有那些用戶登入系統,單獨執行who命令會列出登入帳號,使用的終端機,登入時間以及從何處登入或正在使用哪個X顯示器。
語法
who(選項)(參數)
選項
-H或–heading:顯示各欄位的標題信息列;
-i或-u或–idle:顯示閒置時間,若該用戶在前一分鐘之內有進行任何動作,將標示成"."號,如果該用戶已超過24小時沒有任何動作,則標示出"old"字符串;
-m:此參數的效果和指定"am i"字符串相同;
-q或–count:只顯示登入系統的帳號名稱和總人數;
-s:此參數將忽略不予處理,僅負責解決who指令其他版本的兼容性問題;
-w或-T或–mesg或–message或–writable:顯示用戶的信息狀態欄;
–help:在線幫助;
–version:顯示版本信息。
參數
文件:指定查詢文件。
實例
[root@localhost ~]# who
root pts/0 2013-08-19 15:04 (192.168.0.134)
root pts/1 2013-12-20 10:37 (180.111.155.40)
[root@localhost ~]# who -q
root root
users=2
[root@localhost ~]# who -H
NAME LINE time COMMENT
root pts/0 2013-08-19 15:04 (192.168.0.134)
root pts/1 2013-12-20 10:37 (180.111.155.40)
[root@localhost ~]# who -w
root + pts/0 2013-08-19 15:04 (192.168.0.134)
root + pts/1 2013-12-20 10:37 (180.111.155.40)
3.w:顯示已經登陸系統的用戶列表,並顯示用戶正在執行的指令
w命令用於顯示已經登陸系統的用戶列表,並顯示用戶正在執行的指令。執行這個命令可得知目前登入系統的用戶有那些人,以及他們正在執行的程序。單獨執行w命令會顯示所有的用戶,您也可指定用戶名稱,僅顯示某位用戶的相關信息。
語法格式:w [參數]
常用參數:
-h/–no-header 不打印頭信息
-u/–no-current 當顯示當前進程和cpu時間時忽略用戶名
-s/–short 使用短輸出格式
-f/–from 顯示用戶從哪登錄
-o/–old-style 老式輸出
-i/–ip-addr 顯示IP地址而不是主機名(如果可能)
–help 顯示此幫助並退出
-V/–version 顯示版本信息
參考實例
顯示目前登入系統的用戶信息:
[root@linuxcool ~]# w
不打印頭信息:
[root@linuxcool ~]# w -h
顯示用戶從哪登錄:
[root@linuxcool ~]# w -f
使用短輸出格式:
[root@linuxcool ~]# w -s
4.last:顯示登入系統的用戶
作爲Linux運維我們常常需要查看最近登錄到系統的用戶,此時我們可以使用last命令來查看。last命令用於顯示用戶最近登錄信息。單獨執行last命令,它會讀取/var/log/wtmp的文件,並把該給文件的內容記錄的登入系統的用戶名單全部顯示出來。
語法
last(選項)(參數)
選項
-a:把從何處登入系統的主機名稱或ip地址,顯示在最後一行;
-d:將IP地址轉換成主機名稱;
-f <記錄文件>:指定記錄文件。
-n <顯示列數>或-<顯示列數>:設置列出名單的顯示列數;
-R:不顯示登入系統的主機名稱或IP地址;
-x:顯示系統關機,重新開機,以及執行等級的改變等信息。
當我們直接執行last時,默認會取出在過去所有的登錄信息,如需要取出最後指定的幾條比如5條我們可以執行 last -5 命令即可;
命令輸出:
第一列 : 用戶名
第二列:登錄終端
第三列:登錄IP
第四列:登錄時間
第五列:退出時間(在線時間)
[root@xxoo ~]# last -5
root pts/2 192.168.199.226 Wed Oct 10 16:08 still logged in
root pts/1 192.168.199.226 Wed Oct 10 16:07 still logged in
root pts/0 192.168.199.226 Wed Oct 10 16:07 still logged in
root tty1 Wed Oct 10 16:06 still logged in
reboot system boot 3.10.0-862.11.6. Wed Oct 10 16:06 - 16:35 (00:29)
5.lastlog:顯示系統中所有用戶最近一次登錄信息
lastlog命令用於顯示系統中所有用戶最近一次登錄信息。
lastlog文件在每次有用戶登錄時被查詢。可以使用lastlog命令檢查某特定用戶上次登錄的時間,並格式化輸出上次登錄日誌/var/log/lastlog的內容。它根據UID排序顯示登錄名、端口號(tty)和上次登錄時間。如果一個用戶從未登錄過,lastlog顯示Never logged。注意需要以root身份運行該命令。
語法
lastlog(選項)
選項
-b<天數>:顯示指定天數前的登錄信息;
-h:顯示召集令的幫助信息;
-t<天數>:顯示指定天數以來的登錄信息;
-u<用戶名>:顯示指定用戶的最近登錄信息。
6.users:顯示當前登錄系統的所有用戶的用戶列表
users命令用於顯示當前登錄系統的所有用戶的用戶列表。每個顯示的用戶名對應一個登錄會話。如果一個用戶有不止一個登錄會話,那他的用戶名將顯示相同的次數。
語法
users(選項)
選項
–help:顯示命令的幫助信息;
–version:顯示命令的版本信息。
實例
[root@localhost ~]# users
root root
7.finger:查找並顯示用戶信息
finger
finger命令用於查找並顯示用戶信息。包括本地與遠端主機的用戶皆可,帳號名稱沒有大小寫的差別。單獨執行finger指令,它會顯示本地主機現在所有的用戶的登陸信息,包括帳號名稱,真實姓名,登入終端機,閒置時間,登入時間以及地址和電話。
語法
finger(選項)(參數)
選項
-l:列出該用戶的帳號名稱,真實姓名,用戶專屬目錄,登入所用的Shell,登入時間,轉信地址,電子郵件狀態,還有計劃文件和方案文件內容;
-m:排除查找用戶的真實姓名;
-s:列出該用戶的帳號名稱,真實姓名,登入終端機,閒置時間,登入時間以及地址和電話;
-p:列出該用戶的帳號名稱,真實姓名,用戶專屬目錄,登入所用的Shell,登入時間,轉信地址,電子郵件狀態,但不顯示該用戶的計劃文件和方案文件內容。
實例
列出當前登錄用戶的相關信息
finger -l //顯示用戶信息
Login: root Name: root
Directory: /root Shell: /bin/bash
On since Fri Apr 9 20:17 (CST) on :0 (messages off)
On since Fri Apr 9 20:17 (CST) on pts/1 32 days 22 hours idle
On since Fri Apr 9 20:17 (CST) on pts/3 4 hours 5 minutes idle
(messages off)
On since Wed May 12 18:08 (CST) on pts/4 from 192.168.1.10
On since Wed May 12 18:35 (CST) on pts/5 from 192.168.1.10
7 minutes 54 seconds idle
On since Wed May 12 14:37 (CST) on pts/2 from 192.168.1.10
3 hours 14 minutes idle
On since Wed May 12 14:53 (CST) on pts/7 34 minutes 25 seconds idle
(messages off)
On since Wed May 12 16:53 (CST) on pts/8 from 192.168.1.10
30 minutes 18 seconds idle
Mail last read Mon Mar 31 04:02 2008 (CST)
No Plan.
顯示指定用戶信息
finger -m abc
顯示遠程用戶信息
finger -m [email protected]
查詢本機管理員的資料:
finger root
其結果如下:
Login: root Name: root
Directory: /root Shell: /bin/bash
Never logged in.
No mail.
No Plan.