权限:
r 读
w 写
x 执行
任何一个文件具体的权限,针对不同的用户是不一样的
用户分类:
文件拥有者 u
文件所属同组 g
其他用户 o
所有用户 a
我/媳妇 客厅+主卧
儿子 客厅+次卧
路人甲 客厅
第一组rwx 文件拥有者 //我/媳妇 可以主卧 儿子可以去次卧
第二组rwx 和文件拥有着同组用户的权限 //儿子和我不是一个用户但是同组 所以可以去客厅
第三个rwx 其他用户的权限 //路人甲
在Linux中root是凌驾于权限体系之上
实际工作中分组协同开发的情况,问题就是其他人能否看你的组写的代码,以及同组内不同组员对其他人的写的代码?解决这个问题就要权限来解决
同时运维工程师都分配好了,不用管,作为科普常识就好了
权限相关指令
chmod:修改文件权限
方式1:
chmod -r/w/x 文件名 : 去掉(文件名)的读/写/执行权限
eg:
chmod -r 文件名 : 去掉(文件名)的读权限
chmod +r 文件名 : 加上(文件名)的读权限
chmod u-r 文件名 : 去掉(文件名)的读权限---只针对当前文件拥有者,即第一个rwx
方式二:
chmod 三位八进制数字 文件名
eg :
chmod 777 (每个数字对应第几个rwx) 文件名
chmod 777 b.txt
二进制 000 110 100
八进制 0 6 4
chmod 064 b.txt
110 就是 rw-
3 : 011 可写可执行
5 : 101 可读可执行
7 : 111 都可以操作
所谓的执行权限是一个程序能执行的必要条件,但不是充要条件
必须满足系统的可执行要求才是能真的执行
平时敲得大部分指令都是可执行程序
whereis: whereis 命令 : 能够找到某个指令对应的可执行路径
sz: 可以把Linux上的文件放到windows下,注sz命令一般Linux不能运行,但是windows下Liunx文件不可用,Linux下Windows文件也不可用
sz b.txt(文件名)
对普通文件来说:
1.读意味着能够查看内容
2.写意味着能够修改文件内容
3.执行意味着能够运行程序
对于目录文件来说:
1.读意味着能够查看目录中包含哪些文件和目录
2.写意味着能够修改目录中包含的内容(新增文件/删除文件)
3.执行意味着能够进入到目录中(cd)
假如一个用户A要查看(不允许修改)一个目录a中的代码,就需要把目录a的权限开放给A,目录a中的文件的写权限都对a关闭,此时A能否进行删除文件???
只要用户有了目录的写权限,不管用户是否就有文件的读写权限,都能删除文件,
这个问题是不科学的,在Linux中给目录设置了粘滞位,就可以来解决这个问题