1. 查看文件权限
linux下使用ls -l或者ll可以看到文件或者文件夹前面的属性,其中:
- r: read就是读权限 --数字4表示
- w: write就是写权限 --数字2表示
- x: excute就是执行权限 --数字1表示
如:-rw-r--r-- 1 root root 762 07-29 18:19 exit
- 字段一"-rw-r--r--":文件属性字段
- 字段二"1":文件硬链接数
- 字段三"root":文件(目录)拥有者
- 字段四"root":文件(目录)拥有者所在组
- 字段五"762":文件所占字节数
- 字段六"07-29 18:19":文件(目录)最近修改的时间
- 字段七"exit":文件(目录)名
2. 文件属性的构成
可以分为两部分:其中一部分是文件的类型,另一部分是文件的权限,如-rwxrwxrwx,其中第一个"-"代表文件类型, 后面三组"rwx"代表权限。
3. 文件类型说明
- - 普通文件
- d 目录
- l 链接文件
- b 块设备
- c 字符设备
4. 文件权限说明
读、写、运行三项权限可以用数字表示,就是r=4,w=2,x=1,而"-"表示没有该权限。举例,-rw-r--r--用数字表示成644。
可以理解每个文件的权限有3组3bit来表示,3组分别是什么意义呢?
- 前面三个表示所有者(当前用户)权限
- 中间三个表示同组用户权限
- 最后一组表示其他用户权限
以上的其他用户,不包括root这个super user。
如:-rwxrwx--- 770权限表示此文件(文件夹)的拥有着和同组用户有读写及执行权限,其他用户组没任何权限
5. 常用场景
- 赋予文件可执行权限:chmod +x filename
- 修改整个文件夹权限:chmod -R 700 directory/
- 常见权限:+x 可执行文件常用;777 最大权限;700当前用户拥有所有权限;
- 修改文件所属的用户和用户组:sudo chown -R user:user directory 把文件夹从其他用户组(包括root)改到制定user用户和用户组