前言

本文介绍下:Linux环境下,权限修改那些事儿


一、文件权限是什么?

先看个例子,如下是某个路径下文件的权限显示。

drwxr-xr-x 2 ubuntu\huxf ubuntu\domain^users  4096 Sep  3 14:56 ./
drwxr-xr-x 4 ubuntu\huxf ubuntu\domain^users  4096 Sep  3 16:17 ../
drwxr-xr-x 3 ubuntu\huxf ubuntu\domain^users  4096 Sep  3 17:21 bf/
drwxrwxrwx 2 ubuntu\huxf ubuntu\domain^users  4096 Sep  3 17:39 face_out/
-rw-r--r-- 1 ubuntu\huxf ubuntu\domain^users  1541 Sep  3 11:55 rk_st.txt
-rw-r--r-- 1 ubuntu\huxf ubuntu\domain^users 28487 Sep  3 10:31 test.jpg

从左至右,分别表示:

文件类型与权限  链接数  所有者 所属用户组  文件大小 最后的修改时间  文件名

也就是最左侧的,第一列表示文件的权限。

那么问题来了,文件权限针对的是哪些对象呢?主要定义了哪些权限呢?
答案是:

  • 文件权限针对的对象有:所有者(owner)、用户组(Group)、其他人(Others)

文件权限针对的对象说明

  • 主要定义的权限有:r( read,读)、w(write,写) 、x(excute,执行)
    注意:x,对文件夹加执行权限,对文件不加执行权限,因为执行文件有安全隐患

那么,r、w、x分别是什么含义呢?

  • r:读取文件内容 ; 查看目录下的文件列表
  • w:修改文件内容; 删除和创建目录下的文件
  • x:执行权限(主要是对二进制程序的文件)

而r、w、x 也可以用二进制来表示,如下表格:
文件权限的数字表示方式
另外,在上面的例子的权限中,首个字符,有的是“d”,有的则是“-”,其实“d”,表示目录,而“-”表示普通文件。

一般地,用户获取文件权限的顺序:

  • 先看是否为所有者,如果是,则后面权限不看;
  • 再看是否为所属组,如果是,则后面权限不看。

二、文件权限的数字命名方式

-rw------- (600) 只有所有者才有读和写的权限
-rw-r--r-- (644) 只有所有者才有读和写的权限,组群和其他人只有读的权限
-rwx------ (700) 只有所有者才有读,写,执行的权限
-rwxr-xr-x (755) 只有所有者才有读,写,执行的权限,组群和其他人只有读和执行的权限
-rwx--x--x (711) 只有所有者才有读,写,执行的权限,组群和其他人只有执行的权限
-rw-rw-rw- (666) 每个人都有读写的权限
-rwxrwxrwx (777) 每个人都有读写和执行的权限

二、chmod命名方式

1. mode方式

格式:chmod who opt per file

  who:u g o a(all)
  
  opt:+ – =
  
  per:r w x X

举个例子:

chmod ugo+r file.txt    // 每个人都有读写和执行的权限
chmod a+r file.txt      // 每个人都有读写和执行的权限

2. 数字方式

格式:chmod XXX file

chmod 764 file.txt    // 给file.txt文件添加 rwxrw-r– 权限

三、修改权限

1.修改文件权限

chmod 777 test.jpg    // 修改test.jpg权限为:可读可写可执行

2.修改文件夹权限

在修改文件的基础上,增加:-R

chmod -R 777 face_out  //修改face_out文件夹下所有文件的权限为可读可写可执行
chmod -R 777 ×         //修改当前目录下所有文件及子目录的权限

其实,“-R”表示递归文件夹中所有文件


总结

参考链接:
Linux文件权限修改

Logo

更多推荐