前言
大家好,我是jiantaoyab,本篇文章给大家介绍Linux的文件权限。文件权限系统是确保文件和系统安全的关键组成部分。正确理解和配置文件权限对于维护系统安全至关重要。
用户和用户组
在Linux下,有拥有者user、用户组group、其他人others之分。
什么的group?
假设在一个班里面有2个小组A和B,A和B要对同一个问题进行作答,存在竞争关系,A组员之间能修改和查看对方的数据,但是B组的成员不能看到和修改A组的数据。那么A成员组成的A就是一个group。
在Linux默认中,系统上所有账号的信息都记录在/etc/passwd这个文件内,密码记录在/etc/shadow中,组名记录在/etc/group,更多用户管理内容的可以看我后面写的Linux用户管理。
Linux文件权限
Linux文件和属性是用来针对上面所说的用户和用户组进行设置的,我们先来看看文件相关的权限。
第一个字符代表这个文件是目录、文件、链接文件等
-:普通文件
d:目录文件
l:链接文件
c:设备文件里面的串行端口设备,如键盘、鼠标
p:管道文件
b:块设备文件:磁盘
一般文件权限
r:代表可读,w代表可写,x代表可执行,没有权限的话用-表示。
注意root用户不受权限的限制。
通过chomd来增加或者删除文件权限
chomd g+x #给group加上x权限
chomd o+x #给other加上x权限
chomd u+x #给user加上x权限
chomd a+x #给所有人加上x权限
想要同时加可以用","隔开
chomd u+x,o+x #给user和other加上x权限
可以看到,权限每三三为一组,我们可以用数字来代表各个权限。
比如rw-r–r–转为二进制110 100 100再转八进制644,这里方便大家记忆r:4,w:2,x:1。
所以,可以用数字来进行权限的修改。
通过chgrp修改文件所属组,通过chown修改文件拥有者。
为什么我这里给不了root呢?
虽然这个文件是我的,但是想要给别人也要别人同意才行,这里要么切换成root身份,要么加上sudo。
可以看到将user改成root了,同样的更改所属组也需要这样操作。
如果想要同时修改的话中间加上":"
目录权限
上面说的权限是对文件的,同样的在Linux下一切皆文件,目录也是文件,但是一般文件和目录的权限是不一样的。
对于一般文件来说:
r:可以读取取文件的实际内容
w:可以编辑、新增、或修改文件内容,不包含删除文件
x:可以被系统执行
我们应该特别注意在Windows下一个文件是否具有可执行的权限是有扩展名来决定的,例如.exe、.com等,但是在Linux下,文件能否被执行,是由x这个权限来决定的,跟文件名没有关系。
文件是存放数据的地方,目录主要是记录文件名的列表,所以对于目录来说:
r:具有读取目录结构列表的权限,可以查看目录下文件名数据,就能用ls将文件名显示出来
w:表示可以改动目录结构列表,新建文目录、删除文件与目录、改已近存在的文件和目录的名字、移动文件和目录的位置,具有w权限就能变动目录下的东西。
x:表示能否进入该目录
注意
可以看到这个文件的对于我来说是什么权限都没有的。
但是它在我的/home/jiantao/for_test下面,我对这个目录是具有w权限的,所以我能把for_test目录下的test.c给删除了。
我想要别人在自己的目录下创建文件但是不让他删别人的文件,为了解决这个问题,引入了粘滞位。粘滞位是给目录设置的,一般用来限制other权限。
默认权限
大家有没有注意到,普通文件的初始权限是666,目录文件是777,为什么新建一个目录/文件的默认权限是长这这样的呢?
权限掩码umask
凡是在umask中出现的,都应该在起始权限中去掉
第一个0是给特殊权限用的,我们这里只看002,
用二进制表示是000 000 010,上面我说普通文件起始权限是666,对应的二进制就是 110 110 110。
或者
(-rw-rw-rw-) - (-------w-) = (-rw-rw-r-)
同样的目录的权限(drwxrwxrwx)-(d-------w-)=(drwxrwxr-x) 也就是775。
我们还可以自定义umask的大小,只在当前会话有效,不建议写入bashrc中。
连接数
表示有多少文件名链接到此节点。
每个文件都会将它的权限和属性记录到文件系统的inode中,不过目录树缺是使用文件名来记录,因此每个文件名就会链接到一个inode,连接数就是记录有多少不同的文件名链接到相同的一个inode中。
文件大小和最后修改时间就是字面意思,文件名的话后面我讲写一篇专门来介绍Linux文件种类与扩展名。
标签:文件,文件名,Linux,chomd,权限,目录 From: https://blog.csdn.net/weixin_53425006/article/details/136856448