用户身份与文件权限
1、Linux是一个多用户、多任务的操作心态,具有很好的稳定性与安全性。
2、在Linux系统中,UID表示用户身份号码,具有唯一性。在 RHEL 7 系统中,用户身份有下面这些:
- ① 管理员 UID 为 0:系统的管理员用户
root 。 - ② 系统用户 UID 为 1~999: Linux 系统为了避免因某个服务程序出现漏洞而被黑客提权至整台服务器,默认服务程序会有独立的系统用户负责运行,进而有效控制被破坏范围。
- ③ 普通用户 UID 从 1000 开始:是由管理员创建的用于日常工作的用户。
3、用户组用于管理属于同一组的用户,通过使用用户组号码(GID, Group IDentification)可以把多个用户加入到同一组中,从而方便为组中的用户统一规划权限或指定任务 。
4、在 Linux 系统中创建每个用户时,将自动创建一个与其同名的基本用户组,而且这个基本用户组只有该用户一个人。如果该用户以后被归纳入其他用户组,则这个其他用户组称之为扩展用户组 。一个用户只有一个基本用户组,但是可以有多个扩展用户组。
1 用户命令
命令 | 格式 | 作用 |
---|
useradd | useradd [选项] 用户名 | 创建新的用户 | groupadd | groupadd [选项] 群组名 | 创建用户组 | usermod | usermod [选型] 用户名 | 修改用户属性 | passwd | passwd [选项] [用户名] | 修改用户密码、过期时间、认证信息等 | userdel | userdel [选项] 用户名 | 删除用户 |
1、useradd :使用该命令创建用户账户时,默认的用户家目录会被存放在/home 目录中,默认的 Shell 解释器为/bin/bash,而且默认会创建一个与该用户同名的基本用户组。
useradd命令中的用户参数及作用:
2、usermod :Linux 系统中的一切都是文件,因此在系统中创建用户也就是修改配置文件的过程。用户的信息保存在/etc/passwd 文件中,可以直接用文本编辑器来修改其中的用户参数项目,也可以用 usermod 命令修改已经创建的用户信息,诸如用户的 UID、基本/扩展用户组、默认终等。
usermod命令中的参数及作用:
参数 | 作用 |
---|
-c | 填写用户账户的备注信息 | -d -m | 这两个参数连用,可重新指定用户的home目录并自动把旧的数据转移过去 | -e | 账户的过期时间,格式为YYYY-MM-DD | -g | 变更所属用户组 | -G | 变更扩展用户组 | -L | 锁定用户禁止 其登录系统 | -U | 解锁用户,允许其登录系统 | -s | 变更默认终端 | -u | 修改用户的UID |
3、passwd :普通用户只能使用 passwd 命令修改自身的系统密码,而 root 管理员则有权限修改其他所有人的密码,并且修改自己或他人的密码时不需要验证旧密码。
passwd命令中的参数及作用:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Q5GlCOLT-1627227536001)(Linux学习.assets/1627223384186.png)]
4、userdel :删除该用户的所有信息。在执行删除操作时,该用户的home目录默认会保留下来,此时可以使用-r 参数将其删除。
参数 | 作用 |
---|
-f | 强制删除用户 | -r | 同时删除用户及用户 home目录 |
2 用户权限
1、Linux 系统中一切都是文件,但是每个文件的类型不尽相同。使用如下符号区分:
符号 | 代表文件类型 |
---|
- | 普通文件 | d | 目录文件 | l | 链接文件 | b | 块设备文件 | c | 字符设备文件 | p | 管道文件 |
2、在 Linux 系统中,每个文件都有所属的所有者和所有组,并且规定了文件的所有者、所有组以及其他人对文件所拥有的可读(r)、可写(w)、可执行(x)等权限。
- r:能够读取文件的实际内容。可用数字4 (binary: 100)表示。
- w:能够编辑、新增、修改、删除文件的实际内容。2(010)
- x:表示能够运行一个脚本程序。1 (001)
-rwxr-xr-x 1 root root 129 Mar 5 23:15 helloworld.sh
3 su与sudo命令
1、su 命令用来切换用户身,当前用户在不退出登录的情况下切换到其他用户。
su - hadoop01
- 从 root 管理员切换到普通用户时是不需要密码验证的。
- 从普通用户切换成 root管理员就需要进行密码验证。
2、 sudo 命令把特定命令的执行权限赋予给指定用户,即给普通用户提供额外的权限来完成原本 root 管理员才能完成的任务,格式为:sudo [参数] 命令名称 。
sudo服务中的可用参数及其作用:
参数 | 作用 |
---|
-h | 列出帮助信息 | -l | 列出当前用户可执行的命令 | -u 用户名 或 UID值 | 以指定的用户身份执行命令 | -k | 清空密码的有效时间,下次执行时需要密码验证 | -b | 在后台执行指定的命令 | -p | 更改询问密码的提示语 |
- 总结来说,sudo 命令具有如下功能:
- 限制用户执行指定的命令。
- 记录用户执行的每一条命令。
- 配置文件(/etc/sudoers)提供集中的用户管理、权限与主机等参数。
- 验证密码的后 5 分钟内(默认值)无须再让用户再次验证密码。
visudo 命令:配置用户权限。
- 这条命令在配置用户权限时将禁止多个用户同时修改 sudoers 配置文件。
- 可以对配置文件内的参数进行语法检查,并在发现参数错误时进行报错。
- 只有 root 管理员才可以使用 visudo 命令编辑 sudo 服务的配置文件。
|