查询用户属于哪个组的命令:groups user 或者 cat /etc/group

1.用户分类

  1)超级用户:root,拥有最高权限

  2)普通用户:对宿主目录有完全控制权限

  3)程序用户:仅用于某个程序的正常运行,如ftp,mail的用户

2.组账号

  基本组(私有组)每个账号至少属于一个基本组

  附加组(共有组)顾名思义这是一个账号的另外一个组

3.UID号和GID号

   UID:每个账号都有一个UID号(User IDentity 用户标识号)

           root固定UID号为0,程序用户的UID默认为1-499(1-99由distributions自行创建的账号;100-499由其他程序创建的账号),普通用户默认分配500-60000

   GID:每个组都有一个GID号(Group IDentity 组标识号)

           root固定UID号为0,程序用户的UID默认为1-499,普通用户默认分配500-60000

4.用户账号文件

  /etc/passwd  保存用户的名称,宿主目录,登陆shell等信息

  /etc/shadow  保存用户的密码,账号到期等信息

如果备份的话两个文件都要备份才行

查看/etc/passwd文件

root:x:0:0:root:/root:/bin/bash

不同配置项用:分开

第一字段:用户的名称

第二字段:经过加密的用户密码字串货占位符x

第三字段:用户账号的UID号

第四字段:所属基本组账号的GID号

第五字段:用户全名

第六字段:宿主目录,即默认工作目录

第七字段:登陆shell信息

查看/etc/shadow文件

  root:$1$/fvHL1Pl$jGHo6HxFbtuVB.kT2Kfhf1:16293:0:99999:7:::

第一字段:用户名

第二字段:使用MD5加密的密码,当为“*”或“!!”时表示不能登陆系统,如果没有则没有密码直接上

第三字段:上次修改密码的时间

第四字段:密码最短有效天数,默认为0无限天数

第五字段:密码最长有效天数,默认99999不受限制

第六字段:提前多少天警告用户口令过期,默认为7

第七字段:密码过期之后多少天内禁止用户

第八字段:账号失效时间,默认为空

第九字段:保留字段没有作用

组信息保存在 /etc/group 和 /etc/gshadow 文件中

5.添加用户命令

  useradd [选项] [用户名]

                 如果不加参数创建用户,系统默认在/home下创建于用户名相同的宿主目录,于用户名相同的组

                 -c   comment 指定一段注释性描述

                 -g 指定用户组

                 -G [用户组]  指定用户所属组

                 -s [shell文件]   指定用户登录的shell

                 -u [用户号]  指定用户的UID,如果同时有-o选项,则可以重复使用其他用户的标识号

                 -d [目录]  指定用户主目录,如果此目录不村在,则同时使用-m选项,可以创建主目录

                      例子:useradd -d /home/shasha -m shasha 

                 -M 不建立宿主目录,即使/etc/login.defs系统配置中已设定要建立宿主目录

                 -e  指定失效时间

例子: useradd -d /admin -g wheel -G root admin

            useradd -e 2015-12-31 -s /sbin/nologin shasha   账号将于2015-12-31失效,用户禁止终端登录

6.给用户设置,修改密码

  命令格式:passwd [参数] [用户名]

  参数:-d  清空指定用户的密码,仅使用用户名即可登录

             -l   锁定用户账户

             -S  查看用户账户的状态

             -u  解锁用户

7.修改用户属性:usermod

格式:  usermod [选项] [参数]

参数:-u  修改用户的UID号

             -d  修改用户的宿主目录

             -e  修改用户的账号失效时间

             -g  修改用户的基本组名(或使用GID号)

             -G  修改用户的附加组名(或使用GID号)

             -M  修改用户建立并初始化宿主目录

             -s  指定用户登录的shell

             -l   更改用户账号的登录名称

             -L  锁定用户账号

             -U解锁用户账号

  修改账号宿主目录时,要先把当前目录转移到新的位置

例子:usermod  -a -G groupA,groupB,groupC dyq

将dyq添加到 ABC三个组,同时还属于dyq这个组,要加 -a 

8.删除账号:userdel

  userdel shasha

  userdel -r shasha   结合 -r 能同时删除宿主目录

9.添加组账号

  groupadd [组名]

                              -g 可以指定组账号的GID号

10.删除组账号

  groupdel [组名]

11.修改组账号

groupmod [参数] [用户名]

    参数:-g    修改既有的GID数字

               -n    修改既有的组名

12.设置,添加,删除组成员:gpasswd

gpasswd可以指定某个用户组的用户为该用户组的管理员,也可以添加删除组成员,也可以修改该某个用户组的密码。

    格式:gpasswd [groupname]

        若没有任何参数时,表示给予groupname 一个密码(/etc/gshadow)

    格式:gpasswd [-A user1,.....] [-M user3,......] [groupname]

        参数:-A:将groupname的主动权交由后面的用户管理(该用户组的管理员)

                   -M:将某些账号加入这个用户组中!

    格式:gpasswd [-rR] [groupname]

        参数:-r    将groupname的密码删除

                  -R    让groupname 的密码栏失效

    格式:gpasswd [-ad] user groupname

        参数:-a:将某位用户加入到groupname这个用户组中

                  -d:将某位用户删除出groupname这个用户组中

13.查询账号信息

1)groups [用户名] 

 查询用户信息

2)id [用户名]

  查询用户的身份标识

3)finger [用户]

  查询用户账号的登录属性

4)w  

  查询当前主机的用户登录情况