【运维知识基础篇】Linux权限体系

简介: 【运维知识基础篇】Linux权限体系

吾日三省吾身,想出类拔萃,要把知识学牢,学全,学深,学广。


今天给大家分享Linux权限体系的知识,包括rwx权限,查看当前用户对于文件的权限,chmod修改文件权限,umask值,rwx对于文件和目录的作用,隐藏权限,特殊权限。

rwx

1. r 可读 4
2. w 可写 2
3. x 执行 1

当前用户对于文件的权限是什么

1. 1.当前用户是谁
2. whoami
3. 2.用户和 文件的关系
4. 总共三种
5. 属主 表示文件的主人
6. 属组 表示在一个小组
7. 陌生人 表示其他人
8. 根据九位权限位可以查看其他人的权限
9. 3.根据和文件的关系找到对应的权限位

chmod修改文件权限(注意与chown修改属主数组区分)

1. -R递归修改文件
2. 第一种方式:使用ugo方式修改
3. u是属主 g是属组 o是other
4. 
5. 示例1:修改1.txt的属主位置为rwx权限
6. chmod u+x   1.txt
7. 
8. chmod o+w   1.txt #给其他用户加上写的权限
9. chmod go+x  1.txt #给属组和其他用户加上执行权限
10. chmod ugo+x 1.txt #给所有位加上执行权限
11. chmod +x    1.txt #默认表示所有位置加上写权限
12. chmod a+x   1.txt #默认表示所有位置加上写权限
13. 
14. chmod o-w   1.txt #给其他用户去掉写的权限
15. chmod go-x  1.txt #给属组和其他用户去掉执行权限
16. chmod ugo-x 1.txt #给所有位去掉执行权限
17. chmod -x    1.txt #默认表示所有位置去掉执行权限
18. chmod a-x   1.txt #默认表示所有位置去掉执行权限
19. 
20. chmod u=rx  1.txt #默认属主位置覆盖为rx权限
21. =赋值,先清空后赋值
22. 
23. 第二种方式:使用数字的方式进行赋值
24. rwx分别对应421
25. 
26. 示例1:授权1.txt为rw-r-xr-x权限
27. 先换算成数字,每三位相加655
28. chmod 655 1.txt
29. 
30. 文件的最高权限为666 rw-rw-rw- 不需要执行权限,文件中执行命令才需要执行权限
31. 目录的最高权限是777 rwxrwxrwx
32. 
33. 一般密码设置为600权限
34. 
35. 企业对外的服务,禁止给文件及目录777权限
36. 
37. 企业中目录最大授权为755
38. 
39. 文件最大授权为644

umask值

1. 使用文件最高权限减去umask值得到文件的默认权限
2. 使用目录最高权限减去umask值得到目录的默认权限
3. 作用:控制文件创建的权限
4. 
5. 1、查看umask值,默认0022
6. [root@VMware-koten ~]# umask
7. 0022
8. [root@VMware-koten ~]# 
9. 
10. 2、修改umask值 临时的,永久生效写进profile   一般不去修改 了解即可
11. [root@VMware-koten ~]# umask 044
12. [root@VMware-koten ~]# umask
13. 0044
14. [root@VMware-koten ~]# 
15. 
16. [root@VMware-koten ~]# touch 1.txt
17. [root@VMware-koten ~]# mkdir 1
18. [root@VMware-koten ~]# ll
19. total 0
20. drwx-wx-wx 2 root root 6 Mar 14 10:29 1
21. -rw--w--w- 1 root root 0 Mar 14 10:28 1.txt
22. 
23. 666-044=622
24. 777-044=733
25. 
26. 注意:如果umask值为奇数位,则文件权限需要加1,目录不需要
27. 举例,UMASK 032
28. 文件:666-032=634+010=644
29. 目录:777-032=745
30. 
31. [root@VMware-koten ~]# umask 032
32. [root@VMware-koten ~]# umask
33. 0032
34. [root@VMware-koten ~]# mkdir 2
35. [root@VMware-koten ~]# touch 2.txt
36. [root@VMware-koten ~]# ll
37. total 0
38. drwxr--r-x 2 root root 6 Mar 14 10:34 2
39. -rw-r--r-- 1 root root 0 Mar 14 10:34 2.txt
40. [root@VMware-koten ~]#

rwx对于文件和目录的作用

1. 创建测试文件:
2. [root@VMware-koten ~]# mkdir /koten
3. [root@VMware-koten ~]# cd /koten/
4. [root@VMware-koten koten]# touch {1..2}.txt
5. [root@VMware-koten koten]# ll
6. total 0
7. -rw-r--r-- 1 root root 0 Mar 14 10:40 1.txt
8. -rw-r--r-- 1 root root 0 Mar 14 10:40 2.txt
9. [root@VMware-koten koten]# chown koten1.koten1 {1..2}.txt
10. [root@VMware-koten koten]# ll
11. total 0
12. -rw-r--r-- 1 koten1 koten1 0 Mar 14 10:40 1.txt
13. -rw-r--r-- 1 koten1 koten1 0 Mar 14 10:40 2.txt
14. [root@VMware-koten koten]# echo pwd > 1.txt
15. [root@VMware-koten koten]# su - koten1
16. Last login: Tue Mar 14 08:39:58 CST 2023 on pts/2
17. [koten1@VMware-koten ~]$ cd /koten 
18. [koten1@VMware-koten koten]$ ll
19. total 4
20. -rw-r--r-- 1 koten1 koten1 4 Mar 14 10:43 1.txt
21. -rw-r--r-- 1 koten1 koten1 0 Mar 14 10:40 2.txt
22. [koten1@VMware-koten koten]$ 
23. 
24. 测试R权限对于文件的作用
25. root下:
26. [root@VMware-koten ~]# chmod ugo=r /koten/1.txt 
27. [root@VMware-koten ~]# ll /koten/1.txt 
28. -r--r--r-- 1 koten1 koten1 4 Mar 14 10:43 /koten/1.txt
29. [root@VMware-koten ~]# 
30. 
31. 1、可读
32. 2、不可写、但可以强制写入,强制保存(主人可以强制,不是主人强制都不行)
33. 3、不能执行
34. 总结:r权限只能查看
35. 
36. W权限对于文件的作用
37. [root@VMware-koten ~]# chmod ugo=w /koten/1.txt 
38. [root@VMware-koten ~]# ll /koten/1.txt 
39. --w--w--w- 1 koten1 koten1 4 Mar 14 10:43 /koten/1.txt
40. [root@VMware-koten ~]# 
41. 
42. 1、不允许读文件
43. 2、不允许写文件,可以追加
44. 3、不能执行
45. 
46. 总结:w权限啥也不能干
47. X权限对于文件的作用
48. [root@VMware-koten ~]# chmod ugo=x /koten/1.txt 
49. [root@VMware-koten ~]# ll /koten/1.txt 
50. --w--w--w- 1 koten1 koten1 4 Mar 14 10:43 /koten/1.txt
51. [root@VMware-koten ~]# 
52. 
53. 1、不允许读文件
54. 2、不允许写文件
55. 3、不能执行
56. 总结:x权限啥也不能干
57. 
58. rwx对于文件的作用小结:
59. 1、只读,给r权限即可
60. 2、如果写入必须给rw权限
61. 3、执行必须给r和x权限
62. 4、能不能删除看目录权限,目录权限控制增删改查
63. 
64. rwx对于目录的作用
65. 
66. r权限对于目录的作用
67. 1、不能进入目录
68. 2、可以看到文件名称(因为文件名存储在上级目录的block中),不能看里面的详细属性
69. 3、不能创建,不能删除,不能修改文件名字
70. 4、不能查看文件内容
71. 
72. w权限对于目录的作用
73. 1、不能进入目录
74. 2、不能查看目录下文件信息
75. 3、不能创建,不能删除
76. 
77. x权限对于目录的作用
78. 1、可以进入目录
79. 2、不能查看文件信息
80. 3、不能创建,不能删除,不能改名
81. 
82. rwx对于文件的作用小结:
83. 1、进入目录和查看目录下所有的文件,可以复制 r-x 5
84. 2、进入目录查看创建删除改名 rwx 7
85. 
86. 文件权限:文件改读
87. 目录权限:进入目录、查看目录下文件、创建、删除
88. 对文件可读写必须有目录的r-x支持和文件的rw支持
89. 删除和创建和改名目录必须有rwx和文件权限没关
90. 
91. 系统目录大部分都是755
92. 唯独root550

总结最终版:

系统默认的目录权限是755

系统默认的文件权限是644

一个普通文件可以读 cat less more,目录权限r-x 5,文件权限必须有r 4

一个普通文件可以写 cat vim sed less echo,目录权限r-x 5,文件权限必须有rw-6

这个很重要,解决权限拒绝的问题!

隐藏权限

1. 作用:保护重要的系统文件或者服务的重要文件
2. a    只能追加文件和看 除了追加其他事情都不能干 root也不好使
3. i    只能看 啥都不能干 root也不好使
4. 
5. lsattr 1.txt 查看1.txt的隐藏权限
6. 
7. 给1.txt设置a隐藏权限
8. chattr +a 1.txt
9. 给1.txt取消a隐藏权限
10. chattr -a 1.txt
11. 
12. 企业中遇到不能删不能改的文件,一定要查看一下隐藏权限
13. 还有一种情况是登录系统后无法删除1.txt 也没有隐藏权限 因为第三方安全软件限制了
14. 这些软件可以控制,但是你看不出来,可以问下同事是否安装了第三方安全软件,怎么控制

特殊权限(了解)

1. 是加给命令的,加在命令绝对路径,提升命令权限使用
2. chmod +s /usr/bin/rm
3. chmod -s /usr/bin/rm
4. s 4  运行命令时相当于命令的所有者,相当于属主的权限,设置到u的位置,设置到其他位置没有意义
5. 加上s是12位权限位
6. 
7. sgid 运行某个命令时,相当于用户组的权限,了解即可
8. 
9. sticky  控制目录权限 控制着不能删别人的文件 /tmp 就加了 1777
10. 粘滞位 t 加到目录下 就是自己管理自己的文件 但是大家都能在这个目录下创建文件,也可以看别人的文件,因为有r权限
11. chmod o+t
12. chmod 1777 /data

我是koten,10年运维经验,持续分享运维干货,感谢大家的阅读和关注!

相关实践学习
CentOS 7迁移Anolis OS 7
龙蜥操作系统Anolis OS的体验。Anolis OS 7生态上和依赖管理上保持跟CentOS 7.x兼容,一键式迁移脚本centos2anolis.py。本文为您介绍如何通过AOMS迁移工具实现CentOS 7.x到Anolis OS 7的迁移。
目录
相关文章
|
2月前
|
Linux Shell
Linux系统文件默认权限
Linux系统文件默认权限
61 2
|
5天前
|
Prometheus 运维 监控
Prometheus+Grafana+NodeExporter:构建出色的Linux监控解决方案,让你的运维更轻松
本文介绍如何使用 Prometheus + Grafana + Node Exporter 搭建 Linux 主机监控系统。Prometheus 负责收集和存储指标数据,Grafana 用于可视化展示,Node Exporter 则采集主机的性能数据。通过 Docker 容器化部署,简化安装配置过程。完成安装后,配置 Prometheus 抓取节点数据,并在 Grafana 中添加数据源及导入仪表盘模板,实现对 Linux 主机的全面监控。整个过程简单易行,帮助运维人员轻松掌握系统状态。
49 3
|
1月前
|
Linux 数据安全/隐私保护
linux特殊权限!!
本文介绍了Linux系统中的特殊权限,包括suid、sgid和sbit。suid使普通用户在执行特定命令时获得root权限;sgid使用户在创建文件时继承目录的用户组权限;sbit确保用户只能删除自己在共享目录中创建的文件。此外,文章还讲解了chattr和lsattr命令,用于更改和查看文件的扩展属性,以及umask的概念和计算方法,帮助理解文件和目录的默认权限。
45 1
linux特殊权限!!
|
1月前
|
运维 监控 网络协议
运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面
本文介绍了运维工程师日常工作中最常用的20个Linux命令,涵盖文件操作、目录管理、权限设置、系统监控等方面,旨在帮助读者提高工作效率。从基本的文件查看与编辑,到高级的网络配置与安全管理,这些命令是运维工作中的必备工具。
135 3
|
1月前
|
运维 监控 安全
盘点Linux服务器运维管理面板
随着云计算和大数据技术的迅猛发展,Linux服务器在运维管理中扮演着越来越重要的角色。传统的Linux服务器管理方式已经无法满足现代企业的需求,因此,高效、安全、易用的运维管理面板应运而生。
|
2月前
|
运维 监控 网络协议
|
1月前
|
缓存 运维 监控
【运维必备知识】Linux系统平均负载与top、uptime命令详解
系统平均负载是衡量Linux服务器性能的关键指标之一。通过使用 `top`和 `uptime`命令,可以实时监控系统的负载情况,帮助运维人员及时发现并解决潜在问题。理解这些工具的输出和意义是确保系统稳定运行的基础。希望本文对Linux系统平均负载及相关命令的详细解析能帮助您更好地进行系统运维和性能优化。
60 3
|
2月前
|
存储 运维 搜索推荐
|
2月前
|
运维 Java Linux
【运维基础知识】Linux服务器下手写启停Java程序脚本start.sh stop.sh及详细说明
### 启动Java程序脚本 `start.sh` 此脚本用于启动一个Java程序,设置JVM字符集为GBK,最大堆内存为3000M,并将程序的日志输出到`output.log`文件中,同时在后台运行。 ### 停止Java程序脚本 `stop.sh` 此脚本用于停止指定名称的服务(如`QuoteServer`),通过查找并终止该服务的Java进程,输出操作结果以确认是否成功。
81 1
|
2月前
|
运维 监控 安全
Linux_权限理解(详细PLUS)
【10月更文挑战第3天】本文介绍了Linux系统中的权限管理基础,包括文件系统对象与权限关联、权限的继承性、字符与数字表示法的解读,以及用户、组与权限的动态交互。详细解析了`chmod`命令的高级用法和权限修改的风险,探讨了SUID、SGID和Sticky Bit等特殊权限的作用机制,并提出了基于角色的权限分配和定期权限审计的最佳实践。
81 11