如何查看Linux中的用户名和其他信息

这篇文章主要介绍了如何查看Linux中的用户名和其他信息,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

1) 使用 id 命令

id 代表身份identity。它输出真实有效的用户和组 ID。也可以输出指定用户或当前用户的用户和组信息。

# id daygeekuid=1000(daygeek) gid=1000(daygeek) groups=1000(daygeek),4(adm),24(cdrom),27(sudo),30(dip),46(plugdev),118(lpadmin),128(sambashare)

下面是上述输出的详细信息:

  • uid (1000/daygeek): 它显示用户 ID 和用户名

  • gid (1000/daygeek): 它显示用户的组 ID 和名称

  • groups: 它显示用户的附加组 ID 和名称 

2) 使用 getent 命令

getent 命令显示 Name Service Switch 库支持的数据库中的条目,这些库在 /etc/nsswitch.conf 中配置。

getent 命令会显示类似于 /etc/passwd 文件的用户详情,它将每个用户的详细信息放在一行,包含 7 个字段。

# getent passwdroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologinuucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologingames:x:12:100:games:/usr/games:/sbin/nologingopher:x:13:30:gopher:/var/gopher:/sbin/nologinmagesh:x:502:503:2g Admin - Magesh M:/home/magesh:/bin/bashthanu:x:503:504:2g Editor - Thanisha M:/home/thanu:/bin/bashsudha:x:504:505:2g Editor - Sudha M:/home/sudha:/bin/bash

下面是关于 7 个字段的详细信息:

magesh:x:502:503:2g Admin - Magesh M:/home/magesh:/bin/bash
  • Username (magesh): 已创建的用户名。字符长度应该在 1 到 32 之间。

  • Password (x): 它表明加密密码存储在 /etc/shadow 文件中。

  • User ID (UID-502): 它表示用户 ID(UID),每个用户应包含***的 UID。UID (0-Zero) 保留给 root,UID(1-99)是为系统用户保留的,UID(100-999)是为系统账户/组保留的。

  • Group ID (GID-503): 它表示组 ID(GID),每个组应该包含***的 GID,它存储在 /etc/group 文件中。

  • User ID Info (2g Admin - Magesh M): 它表示命令字段。这个字段可用于描述用户信息。

  • Home Directory (/home/magesh): 它表示用户家目录。

  • shell (/bin/bash): 它表示用户的 bash shell。

如果你只想在 getent 命令的输出中显示用户名,使用以下命令格式:

# getent passwd | cut -d: -f1rootbindaemonadmlpsyncshutdownhaltmailuucpoperatorgamesgophermageshthanusudha

只显示用户的家目录,使用以下命令格式:

# getent passwd | grep '/home' | cut -d: -f1centosprakashmageshthanusudha

3) 使用 /etc/passwd 文件

/etc/passwd 是一个文本文件,它包含每个用户登录 Linux 系统所必需的的信息。它维护用户的有用信息,如用户名,密码,用户 ID,组 ID,用户 ID 信息,家目录和 shell。/etc/passwd 文件将每个用户详细信息放在一行中,包含 7 个字段,如下所示:

# cat /etc/passwdroot:x:0:0:root:/root:/bin/bashbin:x:1:1:bin:/bin:/sbin/nologindaemon:x:2:2:daemon:/sbin:/sbin/nologinadm:x:3:4:adm:/var/adm:/sbin/nologinlp:x:4:7:lp:/var/spool/lpd:/sbin/nologinsync:x:5:0:sync:/sbin:/bin/syncshutdown:x:6:0:shutdown:/sbin:/sbin/shutdownhalt:x:7:0:halt:/sbin:/sbin/haltmail:x:8:12:mail:/var/spool/mail:/sbin/nologinuucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologinoperator:x:11:0:operator:/root:/sbin/nologingames:x:12:100:games:/usr/games:/sbin/nologingopher:x:13:30:gopher:/var/gopher:/sbin/nologinmagesh:x:502:503:2g Admin - Magesh M:/home/magesh:/bin/bashthanu:x:503:504:2g Editor - Thanisha M:/home/thanu:/bin/bashsudha:x:504:505:2g Editor - Sudha M:/home/sudha:/bin/bash

以下是 7 个字段的详细信息。

magesh:x:502:503:2g Admin - Magesh M:/home/magesh:/bin/bash

字段信息同上。

如果你只想显示 /etc/passwd 文件中的用户名,使用以下格式:

# cut -d: -f1 /etc/passwdrootbindaemonadmlpsyncshutdownhaltmailuucpoperatorgamesgophermageshthanusudha

只显示用户的家目录,使用以下格式:

# cat /etc/passwd | grep '/home' | cut -d: -f1centosprakashmageshthanusudha

4) 使用 finger 命令

finger 命令显示有关系统用户的信息。它显示用户的真实姓名,终端名称和写入状态(如果没有写入权限,那么最为终端名称后面的 *),空闲时间和登录时间。

# finger mageshLogin: magesh Name: 2g Admin - Magesh MDirectory: /home/magesh Shell: /bin/bashLast login Tue Jul 17 22:46 (EDT) on pts/2 from 103.5.134.167No mail.No Plan.

以下是上述输出的详细信息:

  • Login: 用户名

  • Name: 附加/有关用户的其它信息

  • Directory: 用户家目录的信息

  • Shell: 用户的 shell 信息

  • LAST-LOGIN: 上次登录日期和其它信息 

5) 使用 lslogins 命令

它显示系统已知用户的信息。默认情况下,它将列出系统中所有用户的信息。

lslogins 使用程序的灵感来自于 logins 实用程序,该实用程序最初出现在 FreeBSD 4.10 中。

# lslogins -uUID USER PWD-LOCK PWD-DENY LAST-LOGIN GECOS 0 root 0 0 00:17:28 root500 centos 0 1 Cloud User501 prakash 0 0 Apr12/04:08 2018/04/12502 magesh 0 0 Jul17/22:46 2g Admin - Magesh M503 thanu 0 0 Jul18/00:40 2g Editor - Thanisha M504 sudha 0 0 Jul18/01:18 2g Editor - Sudha M

以下是上述输出的详细信息:

  • UID: 用户 id

  • USER: 用户名

  • PWD-LOCK: 密码已设置,但是已锁定

  • PWD-DENY: 登录密码是否禁用

  • LAST-LOGIN: 上次登录日期

  • GECOS: 有关用户的其它信息 

6) 使用 compgen 命令

compgen 是 bash 内置命令,它将显示所有可用的命令,别名和函数。(LCTT 译注:它的 -u 参数可以列出系统中用户。)

# compgen -urootbindaemonadmlpsyncshutdownhaltmailuucpoperatorgamesgophermageshthanusudha

感谢你能够认真阅读完这篇文章,希望小编分享的“如何查看Linux中的用户名和其他信息”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注行业资讯频道,更多相关知识等着你来学习!