本文共 2510 字,大约阅读时间需要 8 分钟。
管理用户和组
账号概述
1、用户账号: 超级用户:root用户是linux系统中默认的超级用户,对于本机拥有至高无上的权限。 普通用户:普通用户账号需要由root用户或其它管理员创建,拥有的权限受到一定的限制,一般普通用户在自己的宿主目录拥有完整的权限。 程序用户:在安装linux系统及部分应用程序时,会添加一些特定的底权限用户账号,这些用户一般不允许登录系统,仅用于维护某个程序正常运行。2、组账号:
基于某种特定联系将多个用户集合在一起,即构成一个用户组,用于表示该组内所有用户的账户称为组账号。每个用户至少属于一个组,这个组称为该用户的基本组(或私有组),如果该用户还属于其他组。则这个组称为该用户的附加组(或公共组)。3、UID和GID号
UID:linux系统中每个用户都有一个数字形式的身份标记,称为UID,roo账户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命令查看当前系统中的用户登录情况。
本文转自yun5277 51CTO博客,原文链接:http://blog.51cto.com/dengqi/1182256,如需转载请自行联系原作者