用户创建: useradd


useradd [options] LOGIN

 

             -u  UID:UID_MIN,UID_MAC,定义在/etc/login.defs

             -g  GID:指明用户所属的基本组,可为组名也可为GID

             -c:用户注释选项      

 

             -d /PATH/TO/HOME_DIR: 以指定的路径为家目录;

             -s SHELL: 指明用户的默认shell程序,可用列表在/etc/shells文件中;

             -G GROUP1[,GROUP2,…[,GROUPN]]]:为用户指明附加组;组必须事先存在;

             -r: 创建系统用户

组创建:groupadd


groupadd [OPTION]… group_name

 
            -g GID: 指明GID号;[GID_MIN, GID_MAX]
            -r: 创建系统组;


知识点

linux用户分类

 

1、系统管理员:即root帐户,UID=0  GID=0,拥有所有系统权限,它类似于Windows系统中的administrator帐户,是整个系统的所有者。

2、系统用户:linux为满足自身系统管理所内建的账号,通常在安装过程中自动创建,不能用于登录操作系统。UID在1-499之间。如上图中的的halt、mail等等用户即是此类用户。它类似于Windows中的system帐户,当然权限远没有system帐户高。

3、自定义用户:由root管理员创建供用户登录系统进行操作使用的账号,UID在500以上。它类似于Windows系统中users用户组中的帐户 。

 

用户组分类

 

用户不论为与基本组中还是附加组中,就会拥有该组的权限。一个用户可以属于多个附加组。但是一个用户只能有一个基本组。一个用户可以属于多个附加组,但是一个用户只能有一个基本组。

 

1、基本组:如果没有指定用户组,创建用户的时候系统会同时创建一个和这个用户名同名的组,这个组就是基本组,不可以把用户从基本组中删除。在创建文件时,文件的所属组就是用户的基本组。

2、附加组:除了基本组之外,用户所在的其他组,都是附加组。用户是可以从附加组中被删除的。


查看用户相关的ID信息:id

 

id [OPTION]… [USER]

 

        -u: UID

        -g: GID

        -G: Groups

        -n: Name


用户属性修改:usermod

        usermod [options] username

 

               -u UID: 新UID

               -g GID: 新基本组

               -G GROUP1[,GROUP2,…[,GROUPN]]]:新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a选项,表示append;

               -s SHELL:新的默认SHELL;

               -c 'COMMENT':新的注释信息;

               -d HOME: 新的家目录;原有家目录中的文件不会同时移动至新的家目录;若要移动,则同时使用-m选项;

               -l login_name: 新的名字;

               -L: lock指定用户

               -U: unlock指定用户

               -e:YYYY-MM-DD: 指明用户账号过期日期;

               -f INACTIVE: 设定非活动期限;

            -a, --append  将用户添加到附加组。只能和 -G 选项一起使用。

 给用户添加密码:passwd

 

passwd [OPTIONS] UserName: 修改指定用户的密码,仅root用户权限

passwd: 修改自己的密码;

 

                 -l: 锁定指定用户

                 -u: 解锁指定用户

                 -n:mindays: 指定最短使用期限

                 -x:maxdays:最大使用期限

                 -w:warndays:提前多少天开始警告

                 -i:inactivedays:非活动期限;

                 –stdin:从标准输入接收用户密码;

 

                 echo "PASSWORD" | passwd –stdin USERNAME


删除用户:userdel

 

userdel [OPTION]… login

 

              -r: 删除用户家目录;

组属性修改:groupmod

 

groupmod [OPTION]… group

 

                -n group_name: 新名字

 

                -g GID: 新的GID;

组删除:groupdel

 

groupdel GROUP

组密码:gpasswd

 

gpasswd [OPTION] GROUP

 

             -a user: 将user添加至指定组中;

             -d user: 删除用户user的以当前组为组名的附加组

             -A user1,user2,…: 设置有管理权限的用户列表

newgrp命令:临时切换基本组;如果用户本不属于此组,则需要组密码;


修改用户属性:chage

 

chage [OPTION]… LOGIN

 

-d:指定密码最后修改日期

-E:密码到期的日期,过了这天,此账号将不可用。0表示马上过期,-1表示永不过期。
-h:显示帮助信息并退出
-I:密码过期后,锁定账号的天数
-l:列出用户以及密码的有效期
-m:密码可以更改的最小天数。为零代表任何时候都可以更改密码。
-M:密码保持有效的最大天数。
-W:密码过期前,提前收到警告信息的天数。