吾日三省吾身,想出类拔萃,要把知识学牢,学全,学深,学广。
今天给大家分享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年运维经验,持续分享运维干货,感谢大家的阅读和关注!