Linux查看用户信息/查看所有用户信息的命令

通过文件 /etc/passwd 来查看所有用户信息

/etc/passwd 是一个包含每个用户基本信息的文本文件。当我们在系统中创建一个新用户,新用户的基本信息就会被添加到这个文件中。
/etc/passwd 文件将每个用户的基本信息记录为文件中的一行,即文件的一行代表一个单独的用户,一行中包含 7 个字段(在后面会介绍这 7 个字段的含义)。

Linux 系统的所有用户信息都保存在文件 /etc/passwd 中,查看文件的命令如下:

[root@htlwk0001host cron]# cat /etc/passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/false
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync

解读查询结果如下:
第一个字段:用户名
第二个字段:密码,x 表示密码已经加密,并且存放在 /etc/shadow 文件中
第三个字段:表示用户id,500 以上的,就是后面建的用户了,其它则为系统的用户
第四个字段:表示所属主用户组的id
第五个字段:用户描述信息
第六个字段:用户的家目录
第七个字段:用户默认使用的shell类型

直接查看所有的用户名:

[root@htlwk0001host ~]# cat /etc/passwd | cut -f 1 -d :
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
operator

或者

[root@htlwk0001host ~]# awk -F':' '{print $1}' /etc/passwd
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
operator
games
ftp
nobody

通过文件 /etc/shadow 查看所有用户信息

Linux 用户的密码经过加密后会保存在文件 /etc/shadow 中,查看该文件可以得知所有的用户:

[root@htlwk0001host cron]# cat /etc/shadow
root:$6$tCNqc/4HHE$1EL6Za/mMz7vHIEweRTbfJ.s1jG2jvYrCrK6rlHUGoXUyAruG3mLrDggBE0ytoYk10:18497:0:99999:7:::
bin:*:18358:0:99999:7:::
daemon:*:18358:0:99999:7:::
adm:*:18358:0:99999:7:::
lp:*:18358:0:99999:7:::
sync:*:18358:0:99999:7:::
shutdown:*:18358:0:99999:7:::
halt:*:18358:0:99999:7:::
mail:*:18358:0:99999:7:::
operator:*:18358:0:99999:7:::
games:*:18358:0:99999:7:::
ftp:*:18358:0:99999:7:::
nobody:*:18358:0:99999:7:::
dbus:!!:18460::::::
systemd-coredump:!!:18460::::::

内容格式说明如下:
第一个字段:用户名称
第二个字段:加密后的密码

使用 getent 命令查看所有用户信息

getent 命令显示 Name Service Switch 库支持的数据库中的条目。这些库的配置文件为 /etc/nsswitch.conf。getent 命令显示类似于 /etc/passwd 文件的用户详细信息。

[root@htlwk0001host ~]# getent passwd
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
halt:x:7:0:halt:/sbin:/sbin/halt
mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
operator:x:11:0:operator:/root:/sbin/nologin
games:x:12:100:games:/usr/games:/sbin/nologin
ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin
nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
dbus:x:81:81:System message bus:/:/sbin/nologin
systemd-coredump:x:999:997:systemd Core Dumper:/:/sbin/nolog

使用 compgen 命令查看所有的用户信息

[root@htlwk0001host ~]# compgen -u
root
bin
daemon
adm
lp
sync
shutdown
halt
mail
operator
games
ftp
nobody
dbus
systemd-coredump
systemd-resolve
tss
polkitd

相关文件

/etc/group 保存所有的用户组信息
/etc/gshadow 这个是文件/etc/group 的影子文件,用于存储用户组的加密密码数据
/etc/passwd 保存所有用户信息
/etc/shadow 这个是文件 /etc/passwd 的影子文件,用于存储用户的加密密码数据

/etc/passwd

这是一个包含每个用户基本信息的文本文件。当我们在系统中创建一个用户,新用户的详细信息就会被添加到这个文件中。

/etc/passwd 文件内容格式说明

用户名:密码:UID:GID:用户信息:HOME目录路径:用户shell

其中 UID 为 0 则是用户 root,1~499 为系统用户,500 以上为普通用户。

/etc/shadow

/etc/shadow 保存用户密码信息,包括加密后的密码,密码过期时间,密码过期提示天数等

/etc/group

/etc/group 文件是用户组的配置文件,内容包括用户和用户组,并且能显示出用户是归属哪个用户组或哪几个用户组,因为一个用户可以归属一个或多个不同的用户组;同一用 户组的用户之间具有相似的特征。比如我们把某一用户加入到root用户组,那么这个用户就可以浏览root用户家目录的文件,如果root用户把某个文件 的读写执行权限开放,root用户组的所有用户都可以修改此文件,如果是可执行的文件(比如脚本),root用户组的用户也是可以执行的。

用户组的特性在系统管理中为系统管理员提供了极大的方便,但安全性也是值得关注的,如某个用户管理着系统中最重要的内容,最好让用户拥有独立的用户组,或者是把用户下的文件的权限设置为完全私有;另外root用户组一般不要轻易把普通用户加入进去。

/etc/group 文件内容格式说明

/etc/group 的内容包括用户组(Group)、用户组口令、GID及该用户组所包含的用户(User),每个用户组一条记录。

格式如下:

group_name:passwd:GID:user_list

在 /etc/group 中的每条记录分四个字段:

第一字段:用户组名称
第二字段:用户组密码
第三字段:GID
第四字段:用户列表,每个用户之间用逗号分割。本字段可以为空,如果字段为空表示该用户组的名称,也是一个用户,而且用户组的id和该用户的id相同

/etc/gshadow

用户群组密码在此文件中保存。

猜你喜欢

转载自blog.csdn.net/liaowenxiong/article/details/120485056