加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 服务器 > 搭建环境 > Linux > 正文

Linux中文件的默认权限如何理解、如何修改

发布时间:2023-06-08 14:15:32 所属栏目:Linux 来源:
导读:文件默认权限

当我们创建一个文件时,这个文件默认就会被设置默认权限。

# touch 1.txt
# ls -l 1.txt
-rw-r--r-- 1 root root 0 Sep 13 14:48 1.txt

# mkdir abc
# ll -d abc
drwxr-xr-x 2 root root
文件默认权限

当我们创建一个文件时,这个文件默认就会被设置默认权限。

# touch 1.txt
# ls -l 1.txt 
-rw-r--r-- 1 root root 0 Sep 13 14:48 1.txt

# mkdir abc
# ll -d abc
drwxr-xr-x 2 root root 4096 Sep 13 14:51 abc
可以看到,新创建的文件权限为644,目录权限为755。那么这个644是怎么来的呢?原来系统会给新创建的文件默认权限,这个默认权限可以通过umask来查看。

# umask
0022

# umask -S
u=rwx,g=rx,o=rx
通过umask -S查看的权限即为新创建目录的默认权限,如果新创建的文件类型是文件的话,则需要减去x权限,所以新文件的默认权限是644(rw-r-xr-x)

我们还可以通过umask来修改文件的默认权限

umask 770
文件隐藏属性

不知道大家用过宝塔没,当我们通过宝塔新建一个站点的时候,宝塔默认会在网站的根目录下创建一个.user.ini文件。这个文件很奇怪,即使你是root用户,想要删除它也办不到。会出现下面的提示信息:

# rm -f .user.ini 
rm: cannot remove ‘.user.ini’: Operation not permitted
这里我们要讲下另一个概念,文件的隐藏属性,为什么叫隐藏属性呢?因为你通过ls -l是看不出这个文件有什么不一样的。

# ll .user.ini 
-rw-r--r-- 1 root root 51 Sep  5 18:48 .user.ini
想要看出蹊跷,就需要使用lsattr来查看

# lsattr .user.ini 
----i--------e-- .user.ini
这里,我们需要记住几个字符的含义:

i表示系统不允许对这个文件进行任何的修改。如果目录具有这个属性,那么任何的进程只能修改目录之下的文件,不允许建立和删除文件。

a表示系统只允许在这个文件之后追加数据,不允许任何进程覆盖或截断这个文件。如果目录具有这个属性,系统将只允许在这个目录下建立和修改文件,而不允许删除任何文件。

所以,如果我们想要删除这个文件就需要修改它的隐藏属性。通过chattr可以做到。

# chattr -i .user.ini 
# rm -f .user.ini  <===删除成功了

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章