Linux运维实战:CentOS7.6操作系统( 用户/文件/程序/归档/进程 管理 )

第6章 CentOS用户管理
第7章 CentOS 7 文件权限管理
第8章 CentOS 7 程序包的管理与安装
第9章 文件的归档和压缩
第10章 CentOS 7 系统进程管理

Linux运维实战:CentOS7.6操作系统从入门到精通6-10

第6章 CentOS用户管理

6.1 用户和用户组的关系

(1)Linux用户有3种角色:超级用户、普通用户、虚拟用户。

① 超级用户:即root用户,拥有对系统的最高管理权,UID为0
② 普通用户(包含系统用户和本地用户):在不同的系统版本中,系统用户和本地用户的UID取值范围不相同。
​ CentOS 7版本:系统用户UID为1~999,本地用户UID为1000及以上。
​ CentOS 6版本:系统用户UID为1~499,本地用户UID为500及以上。
③ 虚拟用户:伪用户,一般不会用来登录系统,它主要用来维持某个服务的正常运行,如ftp、apache。

请添加图片描述

6.2 创建用户相关命令

6.2.1 创建用户

1.useradd命令

useradd命令用于创建用户,在Linux中,adduser命令也用于创建用户。实际上,adduser是软链接指向useradd的命令程序,所以两者的效果是一样的。

在默认创建用户时,会自动指定UID和GID,默认的UID和GID都是1000以上的。一般情况下,新创建用户的UID和GID是相同的,用户家目录(也叫宿主目录)是/home/目录下与用户名相同的目录,Shell类型为/bin/bash。如果在特殊情况下造成不相同,在权限分配时可能会出错。

创建用户完成时默认该用户密码为空,/etc/shadow文件中的密码位是两个“!!”,没有密码不能直接登录系统,只能用超级用户登录系统以后再切换到该用户。创建用户时如果不指定其附加组,默认会创建一个与用户名同名的组。

这些默认属性是根据/etc/default/useradd文件中所定义的创建用户默认值来设定的。

命令使用格式如下:useradd [选项 参数] 用户名

常用选项如下。

参数 作用
-d 指定新创建用户的家目录路径。 eg.useradd -d /data/wwx wwx #创建wwx用户并指定其家目录为/data/wwx
-M 不创建用户的家目录。
-g 指定用户初始组的名字或GID,前提是该组必须是存在的,如果没有设置该选项,useradd会根据/etc/login.defs文件中的USERGROUPS_ENAB环境变量进行设置。USERGROUPS_ENAB默认为yes,会用和用户名相同的名字创建用户组,并且GID等于UID。eg. useradd -g wwx wwx1. #创建wwx1用户指定主组为wwx
-G 指定用户要加入的附加组列表,使用逗号分隔多个组,不要添加空格,如果不设置,用户仅加入初始组(一个用户只允许有一个初始组,可以有多个附加组)。eg. useradd -G wwx,xuegod,root wwx1.
-s 指定用户登录系统后默认使用的Shell,请确保指定的Shell已经安装,默认的是bash。有时需要禁止某些用户执行登录动作,如用来执行系统服务的用户,将该用户登录系统后默认使用的Shell指定为/sbin/nologin就可以禁止该用户登录。
-u 指定用户UID。eg. useradd -u 1100 wwx #创建wwx用户,并指定其UID为1100

注意:用户初始组是指在创建用户的同时创建的与用户名同名的组,也称为主组。附加组则是指用户创建后或在创建的同时指定的一个额外的组,此组不属于用户初始组,因此称为附加组。

请添加图片描述

2. passwd文件

passwd用户信息文件每段的含义
请添加图片描述

3.查看系统中支持哪些Shell

/etc/shells 文件中记录。

[root@jira01 ~]# cat /etc/shells   
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh
4.使用id命令查看用户信息
[root@jira01 ~]# id wuwenxuan
uid=387801146(wuwenxuan) gid=387801146(wuwenxuan)=387801146(wuwenxuan)
5.删除用户

命令使用格式:userdel [选项] 用户名

选项如下所示:

-r:删除时,会同时删除用户的家目录和/var/mail目录下该用户的相关目录。

6.创建用户规则

文件文件/etc/default/useradd/etc/login.defs是创建用户时的规则文件。

使用egrep命令过滤login.defs文件中的空白行和注释行(以“#”开头的行:egrep -v "^$|^#" /etc/login.defs),该文件定义了创建用户时,用户属性相关的默认值,在创建用户时,如果明确指定其值时,则不需要从此文件中获取默认值

[root@utahstu2 ~]# egrep -v "^$|^#" /etc/login.defs 
MAIL_DIR	/var/spool/mail
PASS_MAX_DAYS	99999
PASS_MIN_DAYS	0
PASS_MIN_LEN	5
PASS_WARN_AGE	7
UID_MIN                  1000    #UID开始的数字,该值可以设置为大于1000,如果小于该值,用户会被识别为系统用户
UID_MAX                 60000    #UID结束的数字
SYS_UID_MIN               201
SYS_UID_MAX               999
GID_MIN                  1000    #GID开始的数字
GID_MAX                 60000    #GID结束的数字
SYS_GID_MIN               201
SYS_GID_MAX               999
CREATE_HOME	yes                  #是否为用户建立家目录
UMASK           077
USERGROUPS_ENAB yes
ENCRYPT_METHOD SHA512            #shadow文件的加密算法

/etc/default/useradd文件中的内容如下

[root@utahstu2 ~]# cat /etc/default/useradd 
# useradd defaults file
GROUP=100             #表示可以创建普通组,GID为100.如果不指定此项,或者把这个组删除了,在创建用户时,会提示:useradd:group‘100’does not exist.
HOME=/home            #指定家目录的存放目录
INACTIVE=-1           #是否启用账号过期,shadow文件中的第7个字段。即密码过期后时否会失效的设定值。-1表示启动
EXPIRE=               #账号终止日期,shadow文件中的第8个字段。可以直接设定账号在某个日期之后就直接失效,而不用理会密码的问题。通常不设置,但如果是付费的会员制系统,或许会设定该字段。
SHELL=/bin/bash       #用户登录系统后的默认shell
SKEL=/etc/skel        #模版目录
CREATE_MAIL_SPOOL=yes #是否创建邮箱文件。

6.2.2 修改用户属性

usermod命令用于修改用户账号属性信息。

命令使用格式:usermod [选项 参数] 用户名

常用选项如下。

参数 作用
-u 修改用户的UID。
-d 修改用户的家目录。(usermod -m -d /mnt/market market # -m:选项会自动创建新目录并将内容移动到新目录中)
-g 修改用户初始组,只能有一个。
-G 修改用户附加组,可以有多个。
-c 修改用户描述(说明)信息。eg.usermod -c "hello world" wwx
-s 修改用户登录Shell。
-L 锁定用户,锁定用户后,该用户不得登录系统。

总结:如果记不住命令,那么直接改vim /etc/passwd文件也是一样的,使用:wq! 强制保存并退出

6.2.3 用户密码管理

1.passwd命令

普通用户只能使用passwd命令更改用户自身的密码。对于管理员用户的密码管理权限,可以使用passwd USERNAME更改所有其他用户的密码。

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

/etc/shadow 是用户密码信息文件,用户保存用户密码相关信息,具体含义如图:

请添加图片描述

请添加图片描述

更改用户密码:

[root@utahstu2 ~]# passwd wwx        # 交互形式更改用户密码
更改用户 wwx 的密码 。
新的 密码:
无效的密码: 密码少于 8 个字符
重新输入新的 密码:
passwd:所有的身份验证令牌已经成功更新。
[root@utahstu2 ~]#  
[root@utahstu2 ~]# echo 123456 | passwd --stdin wwx   #以非交互方式更改用户密码
更改用户 wwx 的密码 。
passwd:所有的身份验证令牌已经成功更新。
[root@utahstu2 ~]# 

2.chage命令

chage命令用于修改用户密码属性

命令使用格式:chage [选项] [选项参数] 用户名

常用选项如下。

参数 作用
-m 密码可更改的最小天数,参数为0时,表示任何时候都可以更改密码。
-M 密码保持有效的最大天数。
-W 用户密码到期前,提前收到警告信息的天数。
-E 账号到期的日期,过了这一天,此账号将不可用。
-d 上一次更改的日期,参数为0时,表示强制用户在下次登录时更改密码.

例6.7:修改mk用户密码属性,使mk用户下次登录系统时必须更改其密码。
请添加图片描述

例6.8:两个用户使用同一个UID。

注意:当某个用户的UID与其他用户的UID相同时,系统会将UID相同的用户识别为同一个用户,因为系统识别用户时,是识别用户的UID。

以上实验结果,系统把mk用户识别为root用户了。

6.2.4 查看用户相关命令

1.id命令

作用:查看用户和组的信息。

命令使用格式:id [选项] [用户名]

选项有以下几种。

参数 作用
-n 和-u/-g/-G组合使用,在查看信息时以名称显示输出;如不加-n选项,则以ID号显示输出。
-u 只显示指定用户的UID。
-g 只显示指定用户的GID。
-G 只显示指定用户的所有组的GID列表
2.whoami命令

作用:查看当前登录系统的用户名。

命令使用格式:whoami [选项]

3.who命令

作用:显示当前登录系统的用户信息。

命令使用格式:who [选项]

4.w命令

作用:显示已经登录系统的用户列表。

命令使用格式:w [用户名]

5.users命令

作用:显示当前登录系统的所有用户的用户名列表。

命令使用格式:users [选项]


第7章 CentOS 7文件权限管理

7.1 文件的基本权限

7.1.1 文件权限的作用

在用户登录系统时

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值