当前位置: 首页 > news >正文

day011-权限管理专题

文章目录

  • 1. 对比文件内容
    • 1.1 diff
    • 1.2 vimdiff
  • 2. /etc/skel目录
  • 3. 权限基础
  • 4. 修改权限
    • 4.1 用数字权限修改
    • 4.2 用字母修改权限(ugo)
    • 4.3 修改文件所有者和用户组
  • 5. 文件与目录权限
  • 6. permission denied 权限拒绝
  • 7. 特殊权限
  • 8. 特殊属性
  • 9. 思维导图

1. 对比文件内容

1.1 diff

[root@oldboy99-Kylin ~/skx]# diff /etc/passwd passwd 
1d0
< root:x:0:0:root:/root:/bin/bash
8d6
< halt:x:7:0:halt:/sbin:/sbin/halt
13d10
< nobody:x:65534:65534:Kernel Overflow User:/:/sbin/nologin
20,22d16
< rpc:x:32:32:Rpcbind Daemon:/var/lib/rpcbind:/sbin/nologin
< dbus:x:81:81:D-Bus:/var/run/dbus:/sbin/nologin
< polkitd:x:996:993:User for polkitd:/:/sbin/nologin
39a34,35
> # 123
> # 孙克旭

1.2 vimdiff

[root@oldboy99-Kylin ~/skx]# vimdiff /etc/passwd passwd

在这里插入图片描述

  • 推荐使用vimdiff

2. /etc/skel目录

/etc/skel目录是一个用于存放新用户默认配置文件的模板目录。当使用 useradd命令创建新用户时,系统会自动将该目录下的所有文件和子目录复制到新用户的家目录(如 /home/username/)中,从而为新用户提供统一的初始环境配置。

应用场景:

  • 向目录中添加文件/通知,新用户都会收到新文件。
[root@oldboy99-Kylin ~]# cd /etc/skel/
[root@oldboy99-Kylin /etc/skel]# echo "欢迎新用户!" >./info.txt
[root@oldboy99-Kylin /etc/skel]# ll
总用量 4
-rw-r--r-- 1 root root 19  59 17:57 info.ttx
[root@oldboy99-Kylin /etc/skel]# useradd lidao
[root@oldboy99-Kylin /etc/skel]# su - lidao
[lidao@oldboy99-Kylin ~]$ ll
总用量 4
-rw-r--r-- 1 lidao lidao 19  59 17:57 info.txt
[lidao@oldboy99-Kylin ~]$ cat info.txt 
欢迎新用户!
  • 不小心把某个用户家目录删除了,可以直接复制该目录下的内容。
[root@oldboy99-Kylin ~]# \rm -fr /home/lidao/   
[root@oldboy99-Kylin ~]# su - lidao 
上一次登录: 五 59 18:56:10 CST 2025 pts/0 上
su: 警告:无法更改到 /home/lidao 目录: 没有那个文件或目录
[lidao@oldboy99-Kylin /root]$ cd 
-bash: cd: /home/lidao: 没有那个文件或目录
[lidao@oldboy99-Kylin /root]$ 注销
[root@oldboy99-Kylin ~]# mkdir /home/lidao
[root@oldboy99-Kylin ~]# cp /etc/skel/.bash* /home/lidao/
[root@oldboy99-Kylin ~]# ll /home/lidao/ -a
总用量 12
drwxr-xr-x 2 root root  62  59 18:58 .
drwxr-xr-x 7 root root  71  59 18:57 ..
-rw-r--r-- 1 root root  75  59 18:58 .bash_logout
-rw-r--r-- 1 root root  71  59 18:58 .bash_profile
-rw-r--r-- 1 root root 138  59 18:58 .bashrc
[root@oldboy99-Kylin ~]# ll /home/lidao/ -d
drwxr-xr-x 2 root root 62  59 18:58 /home/lidao/
[root@oldboy99-Kylin ~]# chown lidao:lidao /home/lidao/
[root@oldboy99-Kylin ~]# ll /home/lidao/ -d
drwxr-xr-x 2 lidao lidao 62  59 18:58 /home/lidao/
[root@oldboy99-Kylin ~]# su - lidao 
上一次登录: 五 59 18:57:38 CST 2025 pts/0 上
[lidao@oldboy99-Kylin ~]$ 

3. 权限基础

  • Linux系统中的权限管理是核心安全机制,主要通过读(r)、写(w)、执行(x)三种权限控制用户对文件和目录的访问。
权限说明数字表示
rread,读取权限,查看文件内容权限4
wwrite,修改权限,是否可以修改文件内容2
xexecute,执行权限1
-没有权限0

在这里插入图片描述

案例:

  1. 权限400:r-- — —
  2. 权限644:rw- r-- r–
  3. 权限755:rwx r-x r-x

4. 修改权限

  • chmod:change mode,修改权限
  • chown:change owner,修改文件所有者和用户组
  • 都有的选项:-R,递归修改目录下所有文件属性

4.1 用数字权限修改

[root@oldboy99-Kylin ~]# ll sort.txt 
-rw-r--r-- 1 root root 476  59 15:47 sort.txt
[root@oldboy99-Kylin ~]# chmod 755 sort.txt
[root@oldboy99-Kylin ~]# ll sort.txt 
-rwxr-xr-x 1 root root 476  59 15:47 sort.txt
[root@oldboy99-Kylin ~]# chmod 000 sort.txt
[root@oldboy99-Kylin ~]# ll sort.txt 
---------- 1 root root 476  59 15:47 sort.txt

4.2 用字母修改权限(ugo)

[root@oldboy99-Kylin ~]# ll sort.txt 
---------- 1 root root 476  59 15:47 sort.txt
[root@oldboy99-Kylin ~]# chmod u=rw,g=r,o=r sort.txt
[root@oldboy99-Kylin ~]# ll sort.txt 
-rw-r--r-- 1 root root 476  59 15:47 sort.txt
# 加入可执行权限
[root@oldboy99-Kylin ~]# chmod +x sort.txt
[root@oldboy99-Kylin ~]# ll sort.txt 
-rwxr-xr-x 1 root root 476  59 15:47 sort.txt

4.3 修改文件所有者和用户组

[root@oldboy99-Kylin ~]# ll sort.txt 
-rwxr-xr-x 1 root root 476  59 15:47 sort.txt
[root@oldboy99-Kylin ~]# chown skx:skx sort.txt 
[root@oldboy99-Kylin ~]# ll sort.txt 
-rwxr-xr-x 1 skx skx 476  59 15:47 sort.txt

5. 文件与目录权限

在这里插入图片描述

权限文件目录
r查看文件内容查看目录内容,需要有x权限
w修改文件,需要有r权限在目录下创建、删除、重命名文件,需要有x权限
x执行权限(命令、脚本),需要有r权限进入目录
  • 重点:能否删除文件需要查看该文件目录是否有w权限。

6. permission denied 权限拒绝

  • 权限拒绝故障的本质:当前用户对文件或目录缺失了相关权限。
# 用户缺少可读权限
[skx@oldboy99-Kylin ~]$ cat /etc/shadow
cat: /etc/shadow: 权限不够
[skx@oldboy99-Kylin ~]$ ll /etc/shadow
---------- 1 root root 1167  59 18:54 /etc/shadow
###########################################################################
# 目录对其他用户缺少可读权限
[skx@oldboy99-Kylin ~]$ touch /etc/test.txt
touch: 无法创建 '/etc/test.txt': 权限不够
[skx@oldboy99-Kylin ~]$ ll /etc/ -d
drwxr-xr-x 126 root root 8192  59 18:54 /etc/
###########################################################################
# 用户缺少读权限
[skx@oldboy99-Kylin ~]$ tail /var/log/secure 
tail: 无法打开'/var/log/secure' 读取数据: 权限不够
[skx@oldboy99-Kylin ~]$ ll /var/log/secure
-rw------- 1 root root 41276  59 20:50 /var/log/secure
  • 用户目录权限故障案例:
[root@oldboy99-Kylin ~]# useradd lidao
# 删除用户,但是用户的家目录还存在
[root@oldboy99-Kylin ~]# userdel lidao
[root@oldboy99-Kylin ~]# useradd lidao
useradd: warning: the home directory already exists.
Not copying any file from skel directory into it.
正在创建信箱文件: 文件已存在
[root@oldboy99-Kylin ~]# su - lidao
su: 警告:无法更改到 /home/lidao 目录: 权限不够
-bash: /home/lidao/.bash_profile: 权限不够
[lidao@oldboy99-Kylin /root]$ 注销
-bash: /home/lidao/.bash_logout: 权限不够
# 家目录的属主和用户组都是数字,说明用户已经失效
[root@oldboy99-Kylin ~]# ll /home/lidao/ -d
drwx------ 2 1007 1007 92  59 20:59 /home/lidao/
# 为家目录重新配置属主和用户组
[root@oldboy99-Kylin ~]# chown lidao:lidao /home/lidao/
[root@oldboy99-Kylin ~]# su - lidao 
上一次登录: 五 59 20:59:30 CST 2025 pts/0 上
[lidao@oldboy99-Kylin ~]$ 

7. 特殊权限

  • 有三个特殊权限,未来不要使用
特殊权限说明
suid
setuid
/bin/passwd,运行命令时相当于获取命令的所有者(root)权限
sticky粘滞位/tmp拥有粘滞位,每个用户只能管理自己创建的文件
sgid
setgid
运行这个命令的时候相当于获取命令用户组(root)的权限

8. 特殊属性

  • a属性:append,只能向文件追加内容
  • i属性:immutable,不可改变的;不能对文件做任何修改
# 查看文件的特殊属性
[root@oldboy99-Kylin ~]# lsattr sort.txt 
-------------------- sort.txt
# 给文件更改特殊属性
[root@oldboy99-Kylin ~]# chattr +ai sort.txt 
[root@oldboy99-Kylin ~]# lsattr sort.txt 
----ia-------------- sort.txt
# 目前该文件无敌了
[root@oldboy99-Kylin ~]# \rm -f sort.txt 
rm: 无法删除 'sort.txt': 不允许的操作
[root@oldboy99-Kylin ~]# echo "123" >> sort.txt
-bash: sort.txt: 不允许的操作
[root@oldboy99-Kylin ~]# mv sort.txt sort2.txt 
mv: 无法将'sort.txt' 移动至'sort2.txt': 不允许的操作

9. 思维导图

【金山文档】 思维导图 https://www.kdocs.cn/l/co3I7PtpTYQX

相关文章:

  • ClassLoader类加载机制的核心引擎
  • 高效全能PDF工具,支持OCR识别
  • 前端HTMX技术详细解释
  • 如何创建伪服务器,伪接口
  • 阿里云OSS+CDN自动添加文章图片水印配置指南
  • 差动讯号(3)弱耦合与强耦合
  • Python序列化的学习笔记
  • 物业企业绩效考核制度与考核体系
  • java: Compilation failed: internal java compiler error 报错解决方案
  • 关于一些平时操作系统或者软件的步骤转载
  • STM32f103 标准库 零基础学习之点灯
  • MGP-STR:用于场景文本识别的多粒度预测
  • OSPF综合实验报告
  • RPA 浏览器自动化:高效扩展与智能管理的未来
  • RabbitMQ深入学习
  • CenOS7切换使用界面
  • STM32硬件I2C驱动OLED屏幕
  • 牛客周赛round91
  • Vue 两种导航方式
  • 让fixe和absolute根据锚点元素定位
  • 陈宝良 高寿仙 彭勇︱明清社会的皇权、商帮与市井百态
  • 明查|哈佛大学批改美教育部长来信,红笔标出语法错误?
  • 两部门部署中小学幼儿园教师招聘工作:吸纳更多高校毕业生从教
  • 习近平同俄罗斯总统普京举行会谈
  • 国防部:正告菲方停止以任何方式冲撞中方核心利益
  • 万达电影:股东杭州臻希拟减持不超1.3927%公司股份