Linux 用户介绍

本小节介绍 Linux 用户的基础知识,了解 Linux 系统中有哪些用户,如何查看当前 Linux 系统中有哪些用户,每一个 Linux 用户的权限取决于这些账号登录时获取到的权限。

1. Linux 用户类型

Linux 系统是一个多用户多任务的操作系统,在 Linux 系统中一般可将用户分为 root 用户普通用户两大类。root 用户 是 Linux 系统中的系统管理员用户,root 用户 在登录终端工具时,命令行前面显示 #,如下图展示的是 root 用户 类型:

图片描述

普通用户 在登录终端工具时,命令行前面显示 $,如下图展示的是 普通用户 类型:

图片描述

2. 查看 Linux 有哪些用户

Linux 系统中 /etc/passwd 文件保存的就是系统中所有的用户主要信息,这些信息以 : 分隔,可以使用 cat 命令查看其中的信息,命令如下:

cat /etc/passwd

执行结果如下图:

图片描述

如上图所示,每行代表一个用户,这些用户中的绝大多数是系统或服务正常运行所必需的用户,我们把这种用户称为系统用户或伪用户。系统用户是不能登录系统的,但是这些用户同样也不能被删除,因为一旦删除,依赖这些用户运行的服务或程序就不能正常执行,会导致系统问题。

/etc/passwd 文件中每行用户包含的信息如下:

  • 登录用户名;
  • 用户账户的 UID;
  • 用户账户的组 ID;
  • 用户账户的描述;
  • 用户家目录的位置;
  • 用户的默认 shell。

以第一行为例,root:x:0:0:root:/root:/bin/bash 中包含的信息有 用户名是 root密码标志 xUID 0组ID(GID) 0用户描述 root家目录位置 /root默认shell /bin/bash,第二行最后的 nologin 表示这个用户不能登录(有些不能登录的用户可以用作启动某个软件进程)。

3. 查看 Linux 用户信息

Linux 中 /etc/shadow 文件上保存了每个用户的信息,该文件只有 root 用户才能访问,这个文件中包含每个用户的一条记录信息,使用 cat 命令查看:

cat /etc/shadow

执行结果如下图:

图片描述

这些信息以 : 分隔,/etc/shadow 文件中每行用户包含的信息如下:

  • 用户名(和 /etc/passwd 对应);
  • 密码(已被加密),这个字段是非空的;
  • 上次修改口令的时间(距离 1970 年 1 月 1 日的天数);
  • 两次修改口令间隔最少的天数,如果这个字段的值为空,帐号永久可用;
  • 提前多少天警告用户口令将过期,如果这个字段的值为空,帐号永久可用;
  • 在口令过期之后多少天禁用此用户,如果这个字段的值为空,帐号永久可用;
  • 用户过期日期,表示用户作废的天数(距离 1970 年 1 月 1 日的天数),如果这个字段的值为空,帐号永久可用;
  • 保留字段,目前为空,以备将来发展之用。

4. 小结

本小节介绍了 Linux 系统中的 root 用户和 普通用户,并且还介绍了 Linux 系统中两个和用户相关的文件 /etc/passwd/etc/shadow 文件,其中 /etc/shadow 文件只有 root 用户 才有访问权限。