在Linux中查找用戶帳戶信息和登錄詳細(xì)信息的11種方法
在Linux系統(tǒng)中,用戶帳戶和登錄詳細(xì)信息對于系統(tǒng)管理和安全非常重要。本文將介紹 11 種在 Linux 系統(tǒng)查找用戶相關(guān)信息的有用方法。這里,我們會講解在系統(tǒng)中獲取一個用戶賬戶詳細(xì)信息、展示登錄詳細(xì)信息以及用戶行為數(shù)據(jù)的命令。
首先,我們會來看看如何使用命令查找一個用戶的賬戶信息,然后再來跟大家講解查看登錄詳細(xì)信息的那些命令。
01 id命令
id 是用來展示一個實(shí)時活動用戶以及組 ID 的命令行工具,如下所示:
$ id tecmint uid=1000(tecmint) gid=1000(tecmint) groups=1000(tecmint),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),113(lpadmin),130(sambashare)
02 groups 命令
groups 命令可以被用來展示一個用戶所歸屬的所有組的信息,像下面這樣:
$ groups tecminttecmint : tecmint adm cdrom sudo dip plugdev lpadmin sambashare
03 finger命令
finger 命令可以被用來查找 Linux 上的一個用戶的信息。在許多 Linux 系統(tǒng)上,它并沒被預(yù)裝。
想要在你的系統(tǒng)上安裝它,可以在終端里運(yùn)行這個命令:
- $ sudo apt install finger#Debian/Ubuntu
- $ sudo yum install finger#RHEL/CentOS
- $ sudo dnf install finger#Fedora 22+
它會顯示出一個用戶的真實(shí)名稱、主目錄、shell,登錄的名稱以及時間,還有如下所示的許多信息:
- $ finger tecmintLogin: tecmint Name: TecMint
- Directory: /home/tecmint Shell: /bin/bash
- On since Fri Sep 22 10:39 (IST) on tty8 from :0
- 2 hours 1 minute idle
- No mail.
- No Plan.
04 getent命令
getent 是一個可以從特定系統(tǒng)數(shù)據(jù)庫的 Name Service Switch (NSS 名字服務(wù)交換器) 庫獲取到信息的命令行工具。
要獲取一個用戶賬戶的詳細(xì)信息,可以像下面這樣使用 passwd 數(shù)據(jù)庫和 username 來做到。
$ getent passwd tecminttecmint:x:1000:1000:TecMint,,,:/home/tecmint:/bin/bash
05 grep命令
grep 命令是一個強(qiáng)大的模式搜索工具,可以在絕大多數(shù) Linux 系統(tǒng)上使用。你可以用它來從系統(tǒng)賬戶文件 /etc/passwd 中查找出關(guān)于一個特定用戶的信息,如下所示:
$ grep -i tecmint /etc/passwdtecmint:x:1000:1000:TecMint,,,:/home/tecmint:/bin/bash
06 lslogins命令
lslogins 命令會展示出系統(tǒng)中現(xiàn)有用戶的相關(guān)信息, -u 標(biāo)記可用來標(biāo)識只展示用戶的賬戶。
- $ lslogins -uUID USER PROC PWD-LOCK PWD-DENY LAST-LOGIN GECOS
- 0 root 144 root
- 1000 tecmint 70 10:39:07 TecMint,,,
- 1001 aaronkilik 0
- 1002 john 0 John Doo
07 users命令
users 命令會展示當(dāng)前已經(jīng)登錄系統(tǒng)的所有用戶的用戶名,像這樣:
- $ userstecmint
- aaron
08 who命令
who 命令可以用來展示那些登錄了系統(tǒng)的用戶,包括了它們是從哪里連接到系統(tǒng)上來的終端信息。
$ who -utecmint tty8 2023年07月05日 10:39 02:09 2067 (:0)
09 w command
w 命令會展示出所有登錄了系統(tǒng)的用戶,還有它們都做了些什么事情。
- $ w12:46:54 up 2:10, 1 user, load average: 0.34, 0.44, 0.57
- USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
- tecmint tty8 :0 10:39 2:10m 4:43 0.46s cinnamon-sessio
10 last或者lastb命令
last/lastb 命令會展示一個最近登錄系統(tǒng)的用戶列表。
$ last OR$ last -a #show hostname on the last column
最近登錄系統(tǒng)的用戶列表
- tecmint tty8 Fri Sep 22 10:39 gone - no logout :0
- reboot system boot Fri Sep 22 10:36 still running 4.4.2023年07月05日-generic
- tecmint tty8 Thu Sep 21 10:44 - down (06:56) :0
- reboot system boot Thu Sep 21 10:42 - 17:40 (06:58) 4.4.2023年07月05日-generic
- tecmint tty8 Wed Sep 20 10:19 - down (06:50) :0
- reboot system boot Wed Sep 20 10:17 - 17:10 (06:52) 4.4.2023年07月05日-generic
- tecmint pts/14 Tue Sep 19 15:15 - 15:16 (00:00) tmux(14160).%146
- tecmint pts/13 Tue Sep 19 15:15 - 15:16 (00:00) tmux(14160).%145
- ...
要是想顯示那些在特定時間訪問過系統(tǒng)的用戶,可以像下面這樣使用 -p 選項(xiàng):
- $ last -ap nowtecmint tty8 Fri Sep 22 10:39 gone - no logout :0
- reboot system boot Fri Sep 22 10:36 still running 4.4.2023年07月05日-generic
- wtmp begins Fri Sep 1 16:23:02 2017
11 lastlog命令
lastlog 命令可以用來查找最近登錄那些或者某個特定用戶的詳細(xì)信息,如下所示:
$ lastlog OR$ lastlog -u tecmint #show lastlog records for specific user tecmint
最近登錄用戶的記錄:
- Username Port From Latest
- root **Never logged in**
- kernoops **Never logged in**
- pulse **Never logged in**
- rtkit **Never logged in**
- saned **Never logged in**
- usbmux **Never logged in**
- mdm **Never logged in**
- tecmint pts/1 127.0.0.1 Fri Jan 6 16:50:22 +0530 2017
- ..
如果你還知道其它的什么命令行技巧或者是某個查看用戶詳情的命令,可以跟我們共享一下哦。
點(diǎn)分享
點(diǎn)收藏
點(diǎn)點(diǎn)贊
點(diǎn)在看