linux修改文件权限

电子说

1.3w人已加入

描述

权限介绍

我们首先使用ls -l指令查看文件的权限信息(以/etc/fstab为例):

ls -l  /etc/fstab

可以看到输出包含:

rwx rw- r--

权限表示共有9位,每3位为一组,分别表示拥有者、所属组的成员和其他成员。其中,r表示读(read)权限,w表示写(write)权限,x表示执行( execute )权限,-表示无权限。

所以这个输出rwx rw- r--表示:拥有者有读、写、执行三个权限;所属组的成员拥有读、写权限;其他成员只有读权限。

修改文件

Linux下对文件进行读写操作时,可能出现如下报错:

-bash: xxx: Permission denied

所以我们需要修改文件的权限。

修改文件权限

文件的最高权限为9位都是1,即111 111 111,转为十进制即777

首先切换到根用户,进入根用户]

查看文件权限:

ls -l

赋予文件可操作的最高权限(以/etc/fstab为例):

sudo chmod 777 /etc/fstab

若无法赋予权限

若出现报错:

chmod: changing permissions of 'fstab': Operation not permitted

是因为我们执行的chmod命令,其底层实现是chattr命令。

执行 lsattr 查看文件属性:

sudo lsattr /etc/fstab

输出为:

----i--------e-- /etc/fstab

说明文件有i属性和e属性,无法修改。

去除文件i属性:

sudo chattr -i /etc/fstab

去除文件e属性:

sudo chattr -e /etc/fstab

然后执行 lsattr查看,发现输出为:

---------------- /etc/fstab

此时可以修改权限了:

sudo chmod 777 /etc/fstab

然后修改文件即可。

恢复文件权限

恢复文件权限:

sudo chmod 440 /etc/fstab

添加文件i属性:

sudo chattr +i /etc/fstab

添加文件e属性:

sudo chattr +e /etc/fstab

  审核编辑:汤梓红

打开APP阅读更多精彩内容
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉

全部0条评论

快来发表一下你的评论吧 !

×
20
完善资料,
赚取积分