Linux下文件权限的查看和修改

一、直接查看文件权限

在Linux系统中,要查看某个文件的权限,可以右击选中该文件,点击“属性”来查看,如下图所示:

在这里插入图片描述

从图中可以看出,文件的权限要按“所有者”、“组”、“其他组”进行区分,其中:

(1)所有者:文件的创建者
(2)组:当某个用户创建了一个文件后,这个文件的所在组就是该用户所在的组。
(3)其它组:除开文件的所有者和所在组的用户外,系统的其它用户都是文件的其它组。

二、Linux终端下文件权限的查看

命令ls-l为查看文件权限的命令。

例如,打开终端,输入命令:
ls -l xxx/xxx (xxx/xxx是路径及文件名)

回车后,终端上打印出了如下图所示的信息:

在这里插入图片描述

从图中可以看出,hector_mapping文件的权限是:-rwxr-xr-x

这一串权限字母一共有十位,第一位“-”代表的是类型,第二三四位“rwx”代表的是所有者(user)拥有的权限,第五六七位“r-x”代表的是组(group)拥有的权限,第七八九位“r-x”代表的是其他人(other)拥有的权限。

在这里,
“r”代表文件可以被读(read),
“w”代表文件可以被写(write),
“x”代表文件可以被执行(如果它是程序文件的话),
“-”代表表示相应的权限还没有被授予,
“jms jms”代表该文件的所有者(user)为jms ,所属用户组(group)为jms。

因此,“-rwxr-xr-x”代表了该文件可以被所有者读(r )、写(w)、执行(x),可以被组读(r )、执行(x),可以被其他人执行(x)。

注:对于某目录:/a/b/c,执行 ls -l /a/b命令查看的是b文件夹目录下,所有文件的权限(文件c的权限)。

三、文件权限的修改

命令chmod为修改文件访问权限的命令。

例如:

(1)在终端输入:

chmod a+x xxx/xxx

该命令表示增加(+)了所有人(a)对该文件的执行(x)权限

(2)在终端输入:

chmod go-rw xxx/xxx

该命令表示删除(-)了组(g)和其他人(o)对该文件的读写(rw)的权限

总结1:
u 代表所有者(user)
g 代表所有者所在的组(group)
o 代表其他人(other),但不是u和g
a 代表全部的人(all),包括u,g和o
r 表示文件可以被读(read)
w 表示文件可以被写(write)
x 表示文件可以被执行(如果它是程序文件的话)
+表示添加权限
-表示删除权限

总结2:——使用chmod和数字修改文件或目录的访问权限
rwx可以用数字来代替:
r :对应数值4
w:对应数值2
x:对应数值1
-: 对应数值0

例如:
(1)-rw------- 即600(4+2 0 0) ,只有所有者才有读和写的权限
(2)-rw-r–r-- 即644(4+2 4 4),只有所有者才有读和写的权限,组和其他人只有读的权限
(3)-rwx------ 即700(4+2+1 0 0),只有所有者才有读、写、执行的权限
(4)-rwxr-xr-x即755(4+2+1 4+1 4+1), 只有所有者才有读、写、执行的权限,组和其他人只有读和执行的权限
(5)-rwx–x--x 即711(4+2+1 1 1),只有所有者才有读、写、执行的权限,组和其他人只有执行的权限
(6)-rw-rw-rw- 即666(4+2 4+2 4+2),每个人都有读写的权限
(7)-rwxrwxrwx 即777(4+2+1 4+2+1 4+2+1),每个人都有读写和执行的权限

因此,chmod -rwxrwxrwx xxx/xxx命令等同于:
chmod 777 xxx/xxx,实现了把该文件的权限提升到了最高。

总结3:——递归修改权限
如果要递归修改文件夹下所有文件的权限,可利用命令chmod -R
例如,在终端上输入命令:

 chmod -R a+x /home

该命令递归( R)修改了/home文件夹下所有文件的权限,为所有人(a)增加(+)了执行(x)权限

总结4:——使用命令chown修改目录或文件的所有者(user)与所属用户组(group)
例如:
在这里插入图片描述
还是这个例子,前面已经提到,“jms jms”代表该文件的所有者(user)为jms ,所属用户组(group)为jms。
(1)如果要把该文件的所有权从用户jms转移到用户swjtu,让用户swjtu成为该文件的所有者。在终端输入命令:

chown swjtu ~/catkin_ws/devel/lib/hector_mapping/hector_mapping

(2)如果要把该文件的所属用户组从jms转移到swjtu,那么在终端输入命令:

chown :swjtu ~/catkin_ws/devel/lib/hector_mapping/hector_mapping

(3)如果要同时修改该文件的所有者和所属用户组,那么在终端输入命令:

chown swjtu:swjtu ~/catkin_ws/devel/lib/hector_mapping/hector_mapping
  • 15
    点赞
  • 139
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值