Linux系统内文件有三种身份(user group other),这三种身份均有三种权限(r、w、x)
权限对文件的重要性
文件是实际含有数据的地方,包括一般文本文件、数据库内容文件、二进制可执行文件
r(read):可读取文件中的实际内容,如文本文件中的文字;
w(write):可编辑、新增或者修改该文件的内容(但不会删除文件);
x(execute)该文件可以被系统执行权限。
权限对目录的重要性
目录是记录文件名的列表
r(read contents in directory):可读取目录结构列表,可以查询该目录下的文件名数据,因此用ls的时候可以将该目录的内容列表显示出来;
w(write):可更改目录结构列表;如:
新建新的文件与目录
删除已经存在的文件与目录(不论该文件的权限为何)
将已存在的文件或目录进行重命名
转移该目录内的文件、目录位置
x(execute)目录不可以被执行,目录的x代表的是用户能否进入该目录成为工作目录的用途。工作目录就是你目前所在的目录。
例题1
drwxr--r-- 3 root root 4096 Jun 25 08:35 .ssh
系统有个账号叫做vbird,这个账号没有支持root用户组,vbird对这个目录有何权限?可以切换到此目录中吗?
答:有r权限,可以查询此目录下的文件名列表。因为没有x权限,不能切换到此目录中。
如果你在某目录下面不具备x权限,那么就无法切换到该目录下,也无法执行该目录下的任何命令,即使你具备r权限
例题2
假如有个账号名称为student,他的主文件夹在/home/student/,student对此目录具有[rwx]的权限。若在此目录下有个名为the_root.data的文件,该文件的权限为
-rwx------ 1 root root 4356 Jun 25 08:35 the root.data
请问student对此文件的权限是什么?可否删除此文件?
答:student对于此文件来说是“others”的身份,因此这个文件他不可读,不可写,不可执行。
但因为这个文件在student的主文件夹下面,他对于此目录有rwx权限,因此他虽然无法打开这个目录,但他可以把这个目录直接删除。