用户账户管理:

账户创建

RHEL6基础之十三RHEL用户和组管理_第1张图片

-c:加上备注文字,备注文字保存在passwd的备注栏中。 

-d:指定用户登入时的启始目录。

-D:变更预设值。

-e:指定账号的有效期限,缺省表示永久有效。

-f:指定在密码过期后多少天即关闭该账号。

-g:指定用户所属的起始群组。

-G:指定用户所属的附加群组。

-m:自动建立用户的登入目录。

-M:不要自动建立用户的登入目录。

-n:取消建立以用户名称为名的群组。

-r:建立系统账号。

-s:指定用户登入后所使用的shell。

-u:指定用户ID号。

/bin/false是最严格的禁止login选项,一切服务都不能用,而/sbin/nologin只是不允许系统login,可以使用其他ftp等服务

如果想要用false在禁止login的同时允许ftp,则必须在/etc/shells里增加一行/bin/false。

使用-d参数指定用户家目录时该路径需事先存在只能指定到其上一级目录,否则无法拷贝skel模版,

系统添加用户的标准步骤
1.编辑/etc/passwd与/etc/group
2.创建用户主目录
3.从/etc/skel拷贝文件与目录
4.让新用户获得其主目录与文件的拥有权限
5.给新用户一个密码

[root@justin ~]# cat /etc/default/useradd
# useradd defaults file
GROUP=100
HOME=/home
INACTIVE=-1
EXPIRE=
SHELL=/bin/bash
SKEL=/etc/skel
CREATE_MAIL_SPOOL=yes
[root@justin ~]# ls -a /etc/skel/
.  ..  .bash_logout  .bash_profile  .bashrc  .gnome2  .mozilla
[root@justin ~]#

[root@justin ~]# useradd -d /usr/home/ jerry
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
[root@justin ~]# cd /etc/skel/
[root@justin skel]# cp bash_logout .bash_profile  .bashrc /usr/home/jerry

用户密码设定:

说明:通过useradd命令新添加的用户账号,还必须为其设置一个密码才能用来登录Linux系统。Linux系统对密码要求非常严格,要求密码应符合下列规则:

a.密码不能与用户账号相同
b.密码长度最好在8位以上
c.密码最好不要使用字典里面出现的单词或一些相近的词汇,如Passw0rd等。
d.密码最好要包含英文大小写、数字、符号这些字符。

当以root用户的身份为普通用户设置密码时,密码即使不符合规则要求,也可以设置成功。但如果是普通用户修改自己的密码,则必须要符合规则要求。

RHEL6基础之十三RHEL用户和组管理_第2张图片

密码时效管理-----修改帐号和密码的有效期限

chage命令是用来修改帐号和密码的有效期限

语法:chage [选项] 用户名

选项:

-m:密码可更改的最小天数。为零时代表任何时候都可以更改密码。

-M:密码保持有效的最大天数。

-w:用户密码到期前,提前收到警告信息的天数。

-E:帐号到期的日期。过了这天,此帐号将不可用。

-d:上一次更改的日期。

-i:停滞时期。如果一个密码已过期这些天,那么此帐号将不可用。

-l:例出当前的设置。由非特权用户来确定他们的密码或帐号何时过期。

RHEL6基础之十三RHEL用户和组管理_第3张图片

[root@Super ~]# chage -l justin
Last password change	 				: May 26, 2018		#最近一次密码修改时间	
Password expires	 				: never			#密码过期时间
Password inactive					: never			#密码失效时间 	
Account expires						: never			#帐户过期时间
Minimum number of days between password change		: 0			#两次改变密码之间相距的最小天数
Maximum number of days between password change		: 99999			#两次改变密码之间相距的最大天数
Number of days of warning before password expires	: 7			#在密码过期之前警告的天数
[root@Super ~]#


用户帐号删除

一般情况下,普通用户只对自己的主目录拥有写权限,所以用户的相关文件一般也都是存放在主目录里。多数情况下,我们都希望在删除一个用户账号时,能将他的所有相关文件一并删除,这时就需要使用-r选项,将用户账号连同主目录一起删除。

RHEL6基础之十三RHEL用户和组管理_第4张图片


账户属性修改

对于系统中已经存在的用户账号,可以使用usermod命令重新设置各种属性。

RHEL6基础之十三RHEL用户和组管理_第5张图片


上图首列错误,应该为usermod

改变我们也可以通过

[root@localhost ~]# chsh jack -s /sbin/nologin


添加多个附加组需要添加参数-a,否则替换原来的组加组:[root@justin ~]# usermod -aG Jerry study3

newgrp--普通用户临时修改默认组

[Tom@justin ~]$ id
uid=503(Tom) gid=503(Tom) groups=503(Tom),504(Jerry),505(Marry)
[Tom@justin ~]$ newgrp Jerry
[Tom@justin ~]$ id
uid=503(Tom) gid=504(Jerry) groups=503(Tom),504(Jerry),505(Marry)
[Tom@justin ~]$

只能在所属组间切换,无法修改为其他组

用户组管理

创建组帐号

RHEL6基础之十三RHEL用户和组管理_第6张图片


删除组帐号

若删除群组为某些用户的基本组,则必须先删除这些用户后,方能删除群组。

[root@justin ~]# id study
uid=520(study) gid=520(study) 组=520(study)
[root@justin ~]# gpasswd -a study g1
Adding user study to group g1
[root@justin ~]# grep g1 /etc/group
g1:x:526:study
[root@justin ~]# groupdel g1
[root@justin ~]# grep g1 /etc/group
[root@justin ~]# groupadd g1
[root@justin ~]# usermod -g g1 study
[root@justin ~]# id study
uid=520(study) gid=524(g1) 组=524(g1)
[root@justin ~]# groupdel g1
groupdel: cannot remove the primary group of user 'study'
[root@justin ~]#

添加、删除组成员

RHEL6基础之十三RHEL用户和组管理_第7张图片

组帐号属性更改

[root@justin ~]# groupmod --help
Usage: groupmod [options] GROUP
Options:
  -g, --gid GID                 change the group ID to GID
  -h, --help                    display this help message and exit
  -n, --new-name NEW_GROUP      change the name to NEW_GROUP
  -o, --non-unique              allow to use a duplicate (non-unique) GID
  -p, --password PASSWORD       change the password to this (encrypted)
                                PASSWORD

用户账号所属的组查看

[root@justin ~]# groups
root
[root@justin ~]# usermod -G g1 study
[root@justin ~]# groups study
study : study g1
[root@justin ~]# usermod -G g2 study
[root@justin ~]# groups study
study : study g2
[root@justin ~]# usermod -a -G g1 study
[root@justin ~]# groups study
study : study g1 g2