Loading... # 3.16 ## 用户和组的概念 ### 用户 * 超级用户 管理员用户,对系统具有绝对的访问权限,root的UID为0并且只能为0。 * 系统用户 也称程序用户,主要用于管理系统中的服务、进程及程序的相关用户。UID:1-999 * 普通用户 由管理员root创建,对系统的操作权限是有限的。UID:1000-60000 ### 组 拥有相同权限的用户的集合,一个组<mark>可以包含</mark>多个用户,一个用户<mark>可以属于</mark>多个组。 #### 主组 也叫默认组,任何一个用户默认都会有一个主组,有且只有一个 <mark>创建用户时不指定主组会创建一个与用户名同名的主组</mark> #### 附加组 也叫附属组,一个用户除主组之外,也可以有0个或多个附加组。 ## 用户的管理 ### 创建用户 ``` useradd {选项} 用户名 -g 表示主组 -G 表述附加组 -u 表示uid -s 表示登录的shell,默认登录shell为可交互 设置不可交互的shell,设置/sbin/nologin -d 表示设置用户的家目录,默认普通用户的家目录在/home 目录 ``` ### 查看用户 `id {用户名} 或 cat /etc/passwd` ### 修改用户 `usermod` ``` -c 修改描述信息 -s 该用户帐号的新登录 shell -d 修改用户家目录 ``` echo {密码} | passwd --stdin {用户名} ][1] 设置用户的密码使用passwd命令。普通用户只能由超级用户root<mark>来设置</mark>,普通用户只能<mark>修改密码</mark>,但是密码必须符合复杂度要求 ### 删除用户 #### uaserdel 在删除用户的时候,用户的家目录和邮件池不会被删除 -r 删除用户所有文件和邮件池 ## 组的管理 ### 创建组 #### groupadd ``` groupadd {选项} 组名 -g 表示GID -G -u ``` ### 查看组 cat /etc/passwd | grep 组名 cat /etc/group 保存组相关信息文件,该文件每一行表示的是一个组的信息,有多少行就有多少个组。 四个栏位: 1. 组名 1. 密码占位符 1. GID 1. 组成员 `shadow` cat /etc/gshadow 保存组密码及相关信息的文件,有多少行就有多少个组。 四个栏位: 1. 组名 1. 加密之后的密码(感叹号没有密码) 1. 组的管理员 1. 组成员 `groups` 表示打印当前用户所在的组 `tail /etc/gshadow` 查看后面几行 ### 修改组 #### groupmod ``` groupmod {选项} -g 修改组ID -n 修改组名 ``` `groupmod -n {修改组名} {组名}` `groupmod -g {新组id} {组名}` #### gpasswd ``` gpasswd {组名} 为一个组添加密码 -a 向组里面添加用户 -d 向组里面删除用户 -M 设置组 GROUP 的成员 -A 设置组里的管理员 ``` ### 删除组 #### groupdel ``` groupdel {选项} -f 强制删除 ``` ## 用户相关的文件 cat /etc/passwd-保存用户相关信息 七个栏位: 1. 用户名 1. 密码占位符 1. 用户ID 1. 主组GID 1. 用户描述 1. 家目录 1. 登录shell cat /etc/shadow-保存用户密码信息 九个栏位 1. 用户名 1. 用户加密之后密码 1. 最后修改密码时间 1. 密码最小生存周期(0表示立刻可以修改)单位天 1. 密码最大生存周期(99999表示密码永不过期)单位天 1. 密码警告期(到期前x天警告) 1. 密码非活动期(密码一到期,在x天内仍然可以登录) 1. 账户失效的时间 1. 保留字段 chage 改变密码期限 chage {用户名} -l {用户名} 查看密码期限信息 ][2] ## 普通用户的提权操作 工作时通常创建一个普通用户,然后授予普通用户的某些权限 系统中的一个普通用户ys,此用户本身没有创建用户和修改用户的权限;可以通过提权操作让ys拥有临时创建用户和修改用户的权限 三种方法: ### 方法一 visudo set un显示行号 100行 ``` 查看绝对路径:which ys ALL=(ALL) (绝对路径)需要使用的命令 ``` 提权给用户修改密码时,密码默认可以保留5分钟,5分钟之后密码失效 使用命令时添加 <mark>sudo</mark>,使用前需要给用户设置密码 ### 方法二 vim /etc/sudoers 和方法一同步操作 修改完必须强制保存 ### 方法三 创建提权文件 vim /etc/sudoers.d/00-ys ``` ys ALL=(ALL) 命令绝对路径 ``` 如果在提权的时候免密码: ``` ys ALL=(ALL) NOPASSWD:命令绝对路径 ``` ## 组的提权 组中的所有用户提权 ### 方法一 visudo 107行 `%adminuser ALL=(ALL) (绝对路径)需要使用的命令` ### 方法二 vim /etc/sudoers 和方法一同步操作 修改完必须强制保存 ### 方法三 创建提权文件 vim /etc/sudoers.d/00-adminuser ``` %adminuser ALL=(ALL) 命令绝对路径 ``` 如果在提权的时候免密码: ``` %adminuser ALL=(ALL) NOPASSWD:命令绝对路径 ``` 命令: su - 用户名 切换用户 exit 用于退出登录的用户 超级管理员可以root可以在不需要密码的情况下切换到任何可交互登录的普通用户,当一个用户的shell为非交互登录的shell(/sbin/nologin),超级管理员root用户是不能进行切换登录的 普通用户切换到其他可交互式登录的用户包括root用户,是必须要输入登录的密码 --stdin 标准输入 管道符<mark>|</mark>前面命令执行结果,作为后面的输入 id 用户名 ll -d /home/用户名 vim /etc/passwd # 3.2(s) ## 一、查找命令 ### which 查找命令的绝对路径 ### whereis 用于查找命令的绝对路径及相应的文档手册 ### find 用于根据查找条件进行查找 查找条件: 查找条件:可以根据文件大小、格式、权限、属主属组等条件查找。 find命令也可以对查找的结果进行相应的操作 语法: * find 查找路径 [选项][查找条件] -ok * find 查找路径 [选项][查找条件] -exec Linux操作系统中一切皆文件。而文件是有类型的,有七种类型文件: 1. <mark>普通文件</mark>:f或<mark>.</mark> 1. <mark>目录文件</mark>:d 1. <mark>软链接文件</mark>:l 1. <mark>字符设备文件</mark>:c 1. 块设备文件:b 1. 套接字文件:s 1. 管道文件:p ### grep 在Linux系统中: ^ 表示<mark>以什么开头</mark>,例如以ys开头表示`^ys` $ 表示<mark>以什么结尾</mark>,例如以/bin/bash结尾表示`/bin/bash$` grep -v 不匹配相应的行,即是取反 ## 二、打包压缩工具 压缩工具: 语法:zip 压缩之后的文件 需要压缩的文件 | 压缩命令 | 解压命令 | | :-: | :-: | | zip命令压缩 | unzip命令解压 | | gzip命令压缩 | gunzip命令解压 | | bzip2命令压缩 | bunzip2命令解压 | | xz命令压缩 | unxz命令解压 | 打包命令:tar(归档) 解压:tar -zxvf {包} ## 三、网络管理 临时修改:hostname 永久修改: vim /etc/hostname hostnamectl set-hostname yishun.example.com hostnamectl 命令可以查看主机名,也可以修改主机名 ### 配置IP地址 在rhel7以前默认管理网络的服务为network,在rhel8以默认管理网络的服务为NetworkManager,而没有network服务。 #### nmtui命令 打开<mark>图形化网络管理界面</mark> #### 修改网卡的配置文件: vim /etc/sysconfig/network-scripts/ifcfg-ens160 ``` TYPE="Ethernet" //网卡类型 BOOTPROTO="dhcp" //获取IP地址的方式:none或static表示静态获取或手动配置;dhcp表示自动获取 NAME="ens160" //连接的名字 UUID="36760cb7-c331-4bcb-b771-8e66abda7528" //UUID DEVICE="ens160" //设备名 ONBOOT="yes" //是否启用网卡 IPADDR=192.168.36.1 //IP PREDIX=24 //子网掩码 GATEWAY=192.168.36.254 //网关 dns=192.168.117.117 //dns ``` 如果配置没有问题卡启动,重启即可 #### 使用nmcli命令 设置IP: nmcli connection modify ens160 ipv4.addresses 192.168.36.2/24 ipv4.gateway 192.168.36.254 ipv4.dns 192.168.117.117 ipv4.method manual 多个IP在对应添加后+ipv4.XXX 192.168.118.118 cat /etc/resolv.conf route -n ``` ipv4.add 192.168.36.2/24 //配置它的IP ipv4.gateway 192.168.36.254 //配置它的网关 ipv4.dns 192.168.117.117 //配置dns ipv4.method manual //设置手动模式 ``` ``` nmcli connection down ens160 //关闭ens160网卡(可更改) nmcli connection up ens160 //开启ens160网卡(可更改) ``` # 3.23(权限管理) / 根目录 ~ 用户家目录 - 上一次访问的目录 ][3] file可以查看文件类型 ls -l 也可以查看文件类型 查看二进制文件 ldd {文件名} 删除空目录 rmdir # 权限 | 权限 | 英文 | 数字 | | :-: | :-: | :-: | | 读 | r | 4 | | 写 | w | 2 | | 执行 | x | 1 | | 没有权限 | - | 0 | | | | | | | | --- | --- | ---- | --- | --- | ---- | --- | --- | ---- | | 读 | 写 | 执行 | 读 | 写 | 执行 | 读 | 写 | 执行 | 设置权限 chmod ``` chmod u=rwx,g=rwx,o=--- {文件路径} //添加权限 chmod u+rwx {文件路径} //添加权限 chmod u-x {文件路径} //去掉权限 ``` 数字设置权限 ``` chmod 777 {文件路径} chmod 000 {文件路径} ``` chown {用户名}:{属组} {文件} 没有指定组名,默认是用户名的组 [1]: https://kdmy.xyz/usr/uploads/2023/04/3446026274.png [2]: https://kdmy.xyz/usr/uploads/2023/04/3235026781.png [3]: https://kdmy.xyz/usr/uploads/2023/04/2969531375.png 最后修改:2023 年 04 月 07 日 © 允许规范转载 打赏 赞赏作者 支付宝微信 赞 如果觉得我的文章对你有用,请随意赞赏