linux权限相关

这一期,让我们愉快地讨论一下linux权限的问题

你不知道我经历了什么系列(前言)

  前两天发现了一个非常有趣的命令

sudo chmod -R 000 /


  这条命令简直就是比【sudo rm -rf /】更狠,其实这里面的关键在于,chmod命令把自己的权限将为0了,所以,他也没有任何权限可以对其他文件进行任何操作
  此命令执行成功后,整个linux系统内,除了cd命令以外,全线瘫痪,ls无权使用。恢复的方法也很简单,将硬盘接入另一个linux系统中,对其进行重新的赋予权限,然后把重要运行文件拷贝出来,重装系统,重新搭建运行环境,并重新上线项目。这是我所能想到的方法,之所以需要重装系统,是因为不可能给每个系统文件单独设计权限,也无法确定每个文件的权限,而倘若给所有文件777的权限,系统一样会瘫痪,服务一样会瘫痪,linux系统不允许所有程序都拥有root权限

记录

  这件事让我对linux的权限设置有了兴趣,梳理一下

代号 作用 权限值
r 4
w 2
x 运行 1

  由此可以组合出八种权限赋予方式,分别是

模式 数字
rwx 7
rw- 6
r-x 5
r-- 4
-wx 3
-w- 2
--x 1
--- 0

  而放置权限的三位分别是文件属主拥有的权限、同组用户拥有的权限、其他用户拥有的权限

chmod操作方式

  chmod操作方式分为两种

直接赋值型

chmod -R 777 / # 给根目录下所有文件赋予最高权限值

##权限添加型
  适用于给个别用户或用户组添加或删除权限

用户 意义
u 所属人(user)
g 所属群组(group)
o 其他人(other)
a 全部的人(all)
chmod o+r test.txt # 允许其他用户读取test.txt

补充

  其实应该是四位,在这三位之前还有个文件类型标志位,他只有四种状态,只有字母表示方式,没有数字表示方式

字母 类型
d 文件夹
- 普通文件
l 链接文件(类似windows快捷方式)
b 块设备文件(硬盘光驱类)
p 管道文件
c 字符设备文件(猫等串口设备)
s 套接口文件/数据接口文件

发表评论

电子邮件地址不会被公开。 必填项已用*标注