User / Passwd Linux.

用户账号:

  1. 超级用户: root用户是linux系统中默认的超级用户,
    对于本机拥有至高无上的权限。

  2. 普通用户: 拥有的权限受到一定的限制,
    一般普通用户在自己的宿主目录拥有完整的权限。

  3. 程序用户: 在安装linux系统及部分应用程序时,会添加一些特定的底权限用户账号, 这些用户一般不允许登录系统,仅用于维护某个程序正常运行。 组账号: 基于某种特定联系将多个用户集合在一起,即构成一个用户组,用于表示该组内所有用户的账户称为组账号。 每个用户至少属于一个组,这个组称为该用户的基本组(或私有组),如果该用户还属于其他组。则这个组称为该用户的附加组(或公共组)。

3、UID和GID号

UID: linux系统中每个用户都有一个数字形式的身份标记,称为UID.

  • root账户 UID固定为 “0”
    • 程序用户 UID默认为 “1-499”
    • 普通用户 UID默认为 “500-60000”

GID: linux系统中每个组账号也有一个数字形式的身份标记,称为GID.

  • root组GID固定为“0”,
    • 程序组GID默认为“1-499”,
    • 普通组GID默认为“500-60000”。

用户账户文件

用户的账户分别存放在 /etc/passwd /etc/shadow

shadow又称影子文件

如下:通过命令“cat /etc/passwd”命令查看passwd文件中的内容。

在passwd文件中一共有七段,分别用“:”隔开。每段解释如下:
第一段:用户账号的名称,也就是用户登录名。
第二段:经过加密的用户密码字串。(或者密码站位符“x”)
第三段:用户的UID号。
第四段:所属基本组的GID号。
第五段:用户全名,可填写与用户相关的说明信息。
第六段:用户的宿主目录,普通用户默认在“/home”下的同名目录。
第七章:登录shell信息,用户登录后使用的shell。 如下:通过“cat /etc/shadow”命令查看shadow文件中的内容。在shadow文件中保存有各用账号的密码信息,所以对shadow文件访问有着严格的限制,默认只root才能读取文件的内容,而且不能直接编辑文件。

在shadow文件中一共分为九段,也分别使用“:”隔开。每段解释如下:
第一段:用户账号名号,也就是登录名。
第二段:使用MD5加密的密码字串,当为“*”或“!!”时不能登录系统,当为空时,则不需要密码就可登录系统。
第三段:上次密码修改时间到现在的天数。
第四段:密码的最短有效期,值为0时表示进行限制。
第五段:密码的最长有效期,值为99999时表示不进行限制。
第六段:密码过期时提前警告的天数,默认值为7天。
第七段:在密码过期后多少天内禁用此用户。
第八段:账号的实效时间,值为空时表示永久有效。
第九段:保留字段,目前没有待定用途。 用户账户管理。
useradd命令——添加用户账户
useradd 选项 用户名
-u:指定用户的UID号。
-d:指定用户的宿主目录位置。
-e:指定用户的失效时间,使用YYYY-MM-DD格式。
-g:指定用户的基本组。
-G:指定用户的附加组。
-M:创建用户时不建立宿主目录。
-s:指定用户的登录shell。
如下:新建用户admin,指定宿主目录在根目录下,基本组为root组。并使用tail命令查看新建的用户。

passwd命令——为用户账户设置密码
passwd 选项 用户名
-d:清空指定用户的密码,可以使用空密码登录。
-l:锁定用户。
-S:查看用户的状态(是否被锁定)。
-u:解锁用户。
单独使用passwd命令时只能对当前用户设置密码,普通用户使用passwd密令设置密码时,必须输入旧密码,新密码并且必须在六位以上。
如下:为刚才新建的用户admin设置密码。

usermod命令——修改用户的属性。
-u:修改用户的UID号。
-d:修改用户的宿主目录位置。
-e:修改用户的实效时间,使用YYYY-MM-DD的格式。
-g:修改用户的基本组。
-G:修改用户的附加组。
-M:不为用户建立并初始化宿主目录。
-s:指定用户的登录shell。
-l:更改用户的登录名。
-L:锁定用户账户。
-U:解锁用户账户。
如下:使用usermod命令修改root的基本组,并将root的宿主目录移到home目录下(若要修改已有账号的宿主目录,需要先将原有的宿主目录转移到新的位置,然后再通过usermod命令设置新的宿主目录位置。)。

userdel命令——删除用户账户。
userdel 选项 用户名
-r:删除用户时同时删除用户的宿主目录。 组账户管理
和用户一样,组账户也有两个相关的配置文件分别是“/etc/group”和“/etc/gshadow”。这两个文件内容和用户文件一样基本相同,这里就不在详述了。
groupadd命令——新建组
groupadd 选项 组名
-g:指定组的GID号。
如下:新建benet组,指定GID号为200。

gpasswd命令——添加,设置,删除组成员
gpasswd 选项
-a:将指定用户添加到指定组。
-d:删除指定用。
-M:批量添加用户到指定组。
如下:将刚才新建的admin用户加入到benet组中。

groupdel命令——删除组
groupdel 组名 查询账号信息
groups命令——查询用户账户所属的组
groups 用户名
如下:查询刚才新建的admin用户属于那些组。

id命令——查询用户账号的UID
id 用户名 finger命令——查询用户账户的登录属性
finger 用户名 w命令——查询当前主机的用户登录情况(也可以使用user或who命令) 如下:使用w命令查看当前系统中的用户登录情况。

本文出自 “邓奇的Blog” 博客,谢绝转载!