linux 权限相关
访问权限:
- read: 可以查看文件内容,查看目录列表
- write: 允许修改文件内容,允许在目录中新建,移动,删除文件目录,或子目录
目录
- execute: 允许运行程序,切换目录
归属
- owner 拥有该文件或目录的用户账号
- group 所属组
- others 除了所属组/所有者外的其它人
/ | 读(r) | 写(w) | 可执行(x) |
---|---|---|---|
文件 | cat,more,head,tail | vim,vi | 作为命令使用 |
文件夹 | ls ll | 添加touch ,删除rm,mkdir | 进入该文件cd |
linux中的任何文件,不管root对它有没有所有权,root都能强制修改
想修改文件的权限,要么是root,要么是所有者
查看文件或目录的权限和归属
命令 ll 目录名
[root@ecs-t6-large-2-linux-20190824103606 home]# ll changwu/
total 254844
drwxr-xr-x 4 root root 4096 Sep 4 15:25 data
drwxr-xr-x 8 10 143 4096 Jun 17 2014 jdk1.8.0_11
-rw-r--r-- 1 root root 159019376 Sep 1 22:33 jdk-8u11-linux-x64.tar.gz
解读
drwxr-xr-x 4 root root 4096 Sep 4 15:25 data
d: 文件类型: 文件夹
rwxr-xr-x:访问权限
root:所有者
root:所属组
设置文件或目录的权限
命令格式1: chmod {[ugoa] [+-=] [rwx]} 文件或者目录
u: 所有者
g: 所属组
o: 其他用户
a: all 全部用户
+-=: 添加,去除,设置新权限
rwx: read write excute
-R: 递归修改目录下的子文件
例: 给所有者添加上写的权限
chmod u+w [文件/目录]
例: 给所有者添加上写的权限,其他人取出写的权限
chmod u+w o-w [文件/目录]
命令格式2: chmod nnn 文件/目录
r: 4
w: 2
-: 0
x: 1
设置文件/目录的归属
只有root才有这个权限(chown)
命令: chown
格式:
chown 属组 文件
chown :属组 文件
chown 属组:属组 文件
chown 属组: 文件
前提是这些用户/组也都存在
例: 将文件1的所有者改成 changwu
chown changwu 文件1
命令: chgrp 改变某个文件的所属组
root和文件的所有者(还必须是组成员), 拥有这个权限(chmod,chgrp)
格式: chgrp 属组 文件
-R : 递归修改
命令 | 拥有者 |
---|---|
chmod | root 和 文件的所有者 |
chgrp | root 和 文件的所有者(必须是组成员) |
chown | 只有root |
默认权限
在内核级别,文件的默认权限是666 4r+2w
在内核级别,文件夹的默认权限是777
用umask命令控制默认权限,临时有效
查看:
[root@ecs-t6-large-2-linux-20190824103606 home]# umask
0022
解读:
0: 特殊权限
022 : --- -w- -w-
使用逻辑与处理的结果就是
022 : --- -w- -w-
755 : rwx r-x r-x
查看系统的默认权限(不推荐修改系统默认umask)
[root@ecs-t6-large-2-linux-20190824103606 home]# umask -S
u=rwx,g=rx,o=rx
设置文件的隐藏属性
命令: chattr [+-=] [ai] 文件/目录
+-=: 分别表示添加,去除,设置新权限
-R : Recursively 重复递归操作
-a : 可以追加,但是不能修改删除
-i : 锁定保护文件
查看文件隐藏属性
命令::lsattr [Rda] 文件或目录
-R : Recursively 重复递归操作
-d : 查看目录
-a :all 包含隐藏文件