设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 手机 数据 公司
当前位置: 首页 > 服务器 > 搭建环境 > Windows > 正文

6个简单的方式来查看Linux中的用户名和其他信息

发布时间:2018-08-28 18:24 所属栏目:117 来源:Prakash Subramanian
导读:这是一个非常基础的话题,在 Linux 中,每个人都知道如何使用 id 来查找用户信息。一些用户也从 /etc/passwd 文件中过滤用户信息。 我们还使用其它命令来获取用户信息。 你可能会问,为什么要讨论这个基础话题呢?即使我也这么认为,因为除了这两个之外没

 6个简单的方式来查看Linux中的用户名和其他信息

这是一个非常基础的话题,在 Linux 中,每个人都知道如何使用 id 来查找用户信息。一些用户也从 /etc/passwd 文件中过滤用户信息。

我们还使用其它命令来获取用户信息。

你可能会问,为什么要讨论这个基础话题呢?即使我也这么认为,因为除了这两个之外没有更好的方法了,但是我们也有一些不错的选择。

与这两者相比,那些命令提供了更详细的信息,这对于新手非常有帮助。

这是帮助管理员在 Linux 中查找用户信息的基本命令之一。Linux 中的一切都是文件,甚至用户信息都存储在一个文件中。

所有用户都被添加在 /etc/passwd 文件中,这里保留了用户名和其它相关详细信息。在 Linux 中创建用户时,用户详细信息将存储在 /etc/passwd 文件中。passwd 文件将每个用户详细信息保存为一行,包含 7 字段。

我们可以使用以下 6 种方法来查看用户信息。

  • id:为指定的用户名打印用户和组信息。
  • getent:从 Name Service Switch 库中获取条目。
  • /etc/passwd: 文件包含每个用户的详细信息,每个用户详情是一行,包含 7 个字段。
  • finger:用户信息查询程序
  • lslogins:显示系统中已有用户的信息
  • compgen:是 bash 内置命令,它将显示用户的所有可用命令。 

1) 使用 id 命令

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

  1. # id daygeek
  2. uid=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 个字段。

  1. # getent passwd
  2. root:x:0:0:root:/root:/bin/bash
  3. bin:x:1:1:bin:/bin:/sbin/nologin
  4. daemon:x:2:2:daemon:/sbin:/sbin/nologin
  5. adm:x:3:4:adm:/var/adm:/sbin/nologin
  6. lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
  7. sync:x:5:0:sync:/sbin:/bin/sync
  8. shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
  9. halt:x:7:0:halt:/sbin:/sbin/halt
  10. mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
  11. uucp:x:10:14:uucp:/var/spool/uucp:/sbin/nologin
  12. operator:x:11:0:operator:/root:/sbin/nologin
  13. games:x:12:100:games:/usr/games:/sbin/nologin
  14. gopher:x:13:30:gopher:/var/gopher:/sbin/nologin
  15. magesh:x:502:503:2g Admin - Magesh M:/home/magesh:/bin/bash
  16. thanu:x:503:504:2g Editor - Thanisha M:/home/thanu:/bin/bash
  17. sudha:x:504:505:2g Editor - Sudha M:/home/sudha:/bin/bash

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

  1. 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 命令的输出中显示用户名,使用以下命令格式:

  1. # getent passwd | cut -d: -f1
  2. root
  3. bin
  4. daemon
  5. adm
  6. lp
  7. sync
  8. shutdown
  9. halt
  10. mail
  11. uucp
  12. operator
  13. games
  14. gopher
  15. magesh
  16. thanu
  17. sudha

(编辑:ASP站长网)

网友评论
推荐文章
    热点阅读