运维笔记(七)用户和组的管理

文章目录

        • 1.概念
          • 1.1 用户
          • 1.2用户和组的关系
          • 1.3 配置文件
            • 用户配置文件 /etc/passwd
            • 用户组文件 /etc/group
            • 用户对应密码文件 /etc/shadow
        • 2.用户管理
          • 2.1 添加用户
          • 2.2 -u 指定用户UID
          • 2.3 -g 指定用户组
          • 2.4 -d 指定用户的家目录
          • 2.5 -G 指定用户附属组
          • 2.6 删除用户
        • 3.用户密码
          • 3.1 密码文件
          • 3.2 给用户添加密码
        • 4.用户修改
          • 4.1 用户默认值文件
          • 4.2 添加用户配置文件
          • 4.3 修改用户信息
        • 总结

1.概念

Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的人,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。除了人之外,一些系统服务也需要含有部分特权的用户账户运行;因此出于安全考虑,用户管理应运而生,它加以明确限制各个用户账户的权限,root在计算机中用拥有至高特权。所以一般只作管理用,非特权用户可以通过SU或SUDO程序来临时获得特权

1.1 用户

linux 用户分为三类
超级用户:root ,root用户对系统有最高的管理权限 用户ID=0
普通用户:系统用户 centOS7,8中用户ID1-999,CentOS6中的用户ID是1-499
                  本地用户 centOS7,8中用户ID1000+,CentOS6中的用户ID是500+
虚拟用户:不是用来登陆的,主要用于维持服务的正常运行,比如:apache , oracle , ftp等
命令:[root@localhost ~]# ll
严格来说,ll 并不是linux下一个基本的命令,它实际上是ls -l的一个简便用法。
运维笔记(七)用户和组的管理_第1张图片

1.2用户和组的关系

一对一:一个用户可以存在一个组中; 一对多:一个用户可以存在多个组中
多对一:多个用户可以存在一个组中; 多对多:多个用户可以存在多个组中

运维笔记(七)用户和组的管理_第2张图片

1.3 配置文件
用户配置文件 /etc/passwd

用 man 命令 来查看手册 ,可以看到是用户身份验证令牌,但注意,这不是密码文件!
命令:[root@localhost ~]# man passwd
运维笔记(七)用户和组的管理_第3张图片
用 vim 查看下这个文件
运维笔记(七)用户和组的管理_第4张图片

用户组文件 /etc/group

运维笔记(七)用户和组的管理_第5张图片

用户对应密码文件 /etc/shadow

可以看到【用户名】:【密码(当然是加密过的)】
运维笔记(七)用户和组的管理_第6张图片

2.用户管理

2.1 添加用户

[root@localhost ~]# useradd laobai
查看 /etc/passwd 文件最后一行
在这里插入图片描述
运维笔记(七)用户和组的管理_第7张图片
除用户名外,其他都是默认生成,当然,也可以指定
添加另外一个命令 是 adduser,这两个命令是一样的
运维笔记(七)用户和组的管理_第8张图片
查看下这个命令:[root@localhost ~]# which adduser
在这里插入图片描述
用 ll 命令查看 详细信息:[root@localhost ~]# ll /usr/sbin/adduser
可以看到 adduser 是 user 的软连接
在这里插入图片描述

2.2 -u 指定用户UID

新建一个名叫江户川柯南的用户
命令: [root@localhost ~]# useradd jiangHuChuanKeNan -u 1010
运维笔记(七)用户和组的管理_第9张图片
新命令:id 【用户名】

id命令用于显示用户的ID,以及所属群组的ID。id会显示用户以及所属群组的实际与有效ID。若两个ID相同,则仅显示实际ID。若仅指定用户名称,则显示目前用户的ID。

不指定组的话。默认创建和UID相同的GID,以及和用户名相同的组名
在这里插入图片描述

2.3 -g 指定用户组

创建组 groupadd [【参数】【组名】
创建一个少年侦探团用户组
命令:[root@localhost ~]# groupadd shaoNianZhenTanTuan
运维笔记(七)用户和组的管理_第10张图片
创建灰原哀的用户并加入少年侦探团
命令:[root@localhost ~]# useradd huiYuanAi -g shaoNianZhenTanTuan
运维笔记(七)用户和组的管理_第11张图片

2.4 -d 指定用户的家目录

root用户的家目录在 /root,其他用户的家目录若不指定,则在/home/[用户名],当然也可以指定
创建 小岛元太 用户,并加入 少年侦探团用户组,然后指定家目录为 /opt/manYuFan
命令:[root@localhost ~]# useradd xiaoDaoYuanTai -g shaoNianZhenTanTuan -d /opt/manYuFan
运维笔记(七)用户和组的管理_第12张图片
接下来去元太的家目录看看有什么文件
在这里插入图片描述
好像并没有什么,但是 ls 不加参数是看不到隐藏文件的,就像在Windows中C盘有很多文件是隐藏的,不勾选隐藏文件可见是看不到的。在linux中 以点开头的文件是隐藏文件 查所有文件加参数 -a
命令:[root@localhost manYuFan]# ls -a
运维笔记(七)用户和组的管理_第13张图片

2.5 -G 指定用户附属组

创建 吉田步美 用户 属于少年侦探团组,柯南组,root组
在这里插入图片描述
查看 /etc/group
运维笔记(七)用户和组的管理_第14张图片

2.6 删除用户

删除用户命令是 userdel ,只有一个参数 -r 它的作用是删除用户的同时,删掉用户的家目录和/var/mail下的目录,尝试一下,那就删掉我自己吧
命令:[root@localhost ~]# userdel -r laobai
运维笔记(七)用户和组的管理_第15张图片

3.用户密码

3.1 密码文件

运维笔记(七)用户和组的管理_第16张图片
按照 1 的内容解释文件

内容 名称 解释
root name 登录名称,就是用户名
$6$fiL…1cHyH8/q7gt1 passwd 已加密部分密码,分为三部分.第一部分表示的是加密方法,$1表示 MD5 ,$5表示SHA-256 ,$6表示SHA-256,第二部分是用于加密密钥,第三部分是已经加密过的密码
0 minage 不能修改密码的最少天数,0表示随意修改
99999 maxage 密码过期天数,最多多少天后必须修改密码
7 warning 密码即将到期警告,7表示提前七天警告,0表示警告
3.2 给用户添加密码

有两种方式,交互式和非交互式,根据个人喜好来
交互式
给灰原哀添加密码 87654321,回报密码过于简单的警告,可以无视他,但是工作中或者实际生产中,请严格设计密码
命令:[root@localhost ~]# passwd huiYuanAi
运维笔记(七)用户和组的管理_第17张图片
非交互式
给 小岛元太 添加密码 87654321
命令 :[root@localhost ~]# echo 87654321 | passwd --stdin xiaoDaoYuanTai
在这里插入图片描述
两个用户的密码都是87654321,他们在密码文件里的密码一样么?
有图有真相,不同的,加密密钥不同,加密密码当然不同,不过他们解码后都是87654321
在这里插入图片描述

4.用户修改

4.1 用户默认值文件

命令 :[root@localhost ~]# vim /etc/default/useradd
运维笔记(七)用户和组的管理_第18张图片

4.2 添加用户配置文件

命令 :[root@localhost ~]# vim /etc/login.defs
运维笔记(七)用户和组的管理_第19张图片
内容太多,注释多,空行太多,想简单看,新命令 egrep 过滤命令
用法 :egrep 【参数】【表达式】【操作对象】

表达式 介绍
^ 锚定行的开始 如:’^#'匹配所有以#开头的行。
$ 锚定行的结束 如:'A ′ 匹 配 所 有 以 A 结 尾 的 行 。 ′ '匹配所有以A结尾的行。' A’匹配所有空行
. 匹配一个非换行符的字符 如:'Lin.x’匹配Lin后接一个任意字符,然后是x。
* 匹配零个或多个先前字符 如:’*Linux’匹配所有一个或多个空格后紧跟Linux的行。
参数 介绍
-n 打印行号
-v 不包括,如 -v ‘^#’ 不匹配#开头的内容,显示其他内容

:查看 /etc/login.defs 不显示空行和注释,并显示行号
命令 :[root@localhost ~]# egrep -n -v ‘#|$’ /etc/login.defs
运维笔记(七)用户和组的管理_第20张图片

4.3 修改用户信息

修改用户信息使用 usermod 命令
例如 修改 吉田步美 的 UID 为 2000
命令 : [root@localhost ~]# usermod -u 2000 jiTianBuMei
运维笔记(七)用户和组的管理_第21张图片
其他参数

参数 作用
-u 修改用户UID
-d 修改用户家目录
-g 修改用户起始组
-G 修改用户附加组
-s 修改用户 Shell
-L 锁定

总结

Linux命令很多,参数也非常多,比如上一个命令egrep,参数和表达式不少,这里不方便一一列举,大家也不可能一下全记住,所以只列举常用的,其余的在使用中查询资料,用的多了,自然也就记住了

你可能感兴趣的:(Linux)