linux 权限命令

基本权限  

r  4  读    w 2 写    x  1  执行

chown

chown cj /test

chown cj:group /text 

chgrp

chgrp -R  root  file

添加组成员

gpasswd -a user_name group_name

 

chmod

 

$ chmod u+x file                      给file的属主增加执行权限

$ chmod 751 file                      给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限

$ chmod u=rwx,g=rx,o=x file      上例的另一种形式

$ chmod =r file                     为所有用户分配读权限

$ chmod 444 file                   同上例

$ chmod a-wx,a+r   file          同上例

$ chmod -R u+r directory           递归地给directory目录下所有文件和子目录的属主分配读的权限

$ chmod 4755                            设置用ID,给属主分配读、写和执行权限,给组和其他用户分配读、执行的权限。

 

FACL   

-m  改变   -x   移除

setfacl -m user(u):cj:rw file

setfacl -m group(g):root:rw file

setfacl -m mask(m)::r  file     临时管理,只要有下个user加进去,此命令就会失效

getfacl  file

ACL高级(mask , default)

[root@master2-dev ~]# setfacl -m u:wj:rwx install.log
 

[root@master2-dev ~]# getfacl install.log
# file: install.log
# owner: root
# group: wj
user::---
user:wj:rwx
group::---
mask::rwx
other::---

mask 除了所有者和其他人都会受mask影响

建议:为了方便管理文件权限,其他人的权限为空

[root@master2-dev ~]# setfacl -m o::- install.log    //chmod  o=- install.log

setfacl -m mask(m)::r  file     临时管理,只要有下个user加进去,此命令就会失效

[root@master2-dev ~]# getfacl install.log
# file: install.log
# owner: root
# group: wj
user::---
user:wj:rwx
group::---
mask::rwx
other::---
 

[root@master2-dev ~]# getfacl install.log
# file: install.log
# owner: root
# group: wj
user::---
user:wj:rwx            #effective:---
group::---
mask::---
other::---
 

[root@master2-dev ~]# setfacl -m u:ocdp:r install.log
[root@master2-dev ~]# getfacl install.log
# file: install.log
# owner: root
# group: wj
user::---
user:ocdp:r--
user:wj:rwx
group::---
mask::rwx
other::---
 

继承:d

setfacl -m -R d:u:ocdp:rw file1     //-R 递归  file1下面创建的所有目录都对ocdp有读写权限

高级权限 suid(4) sgid(2) sticky(1)

sgid 新建文件继承目录数组

chmod g+s /home/hr

sticky 用户只能删除自己的文件

chmod o+t /file

 文件目录
suid√以所有者 
sgid  继承属组
sticky 用户只能删除自己的文件

文件属性 lsattr chattr

chattr
用chattr命令可以改变一个文件的隐藏属性。其语法格式为:

chattr [ -RVf ] [ -v version ] [ mode ] files…

下面给出几个选项的含义:

选项    含义
-R    递归更改目录下所有子目录和文件的属性
-V    显示详细信息
-f    忽略大部分错误信息
-v version    设置文件的档案号码
mode    设置文件的隐藏属性,其格式为+-=[acdeijstuACDST]
最关键的是在[mode]部分,[mode]部分的格式是+-=[acdeijstuACDST],这部分是用来设置文件的属性。其中+表示在原有参数设定基础上追加参数;-表示在原有参数设定基础上移除参数;=表示更新为指定参数。下面列出几个常用的属性参数的含义:

属性    含义
A    文件的atime(access time)不可被修改,这样可以减少磁盘I/O数量,对于笔记本电脑有利于提高续航能力
S    硬盘I/O同步选项,功能类似sync
a    即append,设定该参数后,只能向文件中添加数据,而不能删除,多用于服务器日志文件安全,只有root才能设定这个属性
i    文件不能被删除、改名、设定链接关系,同时不能写入或新增内容(即使是root用户)。只有root才能设定这个属性
c    即compresse,文件会自动的经压缩后再存储,读取时会自动的解压
d    即no dump,设定文件不能成为dump程序的备份目标
j    即journal,设定此参数使得当通过mount参数”data=ordered”或”data=writeback”挂载的文件系统,文件在写入时会先被记录(在journal中)。如果filesystem被设定参数为data=journal,则该参数自动失效
s    即secure,保密选项。设置了s属性的文件在被删除时,其所有数据块会被写入0
u    即undelete,反删除选项。与s相反,文件在被删除时,其所有的数据块都保留着,用户今后可以恢复该文件
例如这条命令,可以将MySecretDir目录下的文件设置为不允许任何人修改:

$ sudo chattr -R =i ~/MySecretDir
1
lsattr
用lsattr命令列出文件的隐藏属性。其语法格式为:

lsattr [ -RVadv ] [ files… ]

下面给出几个选项的含义:

选项    含义
-R    递归显示目录下所有子目录和文件的属性
-V    显示lsattr程序的版本信息
-a    显示所有文件的属性信息,包括以.开头的文件
-d    显示目录的属性,而不是目录下的文件的属性
-v    显示文件的档案号码
例如,下面这条命令显示MySecretDir目录的隐藏属性:

$ lsattr -Rd MySecretDir/
----i----------- MySecretDir/

umask

umask 0022   要剪掉的权限   这样设置是暂时的,shell窗口关闭就失效了

umask -S

u=rwx,g=rx,o=rx

vim /etc/login.defs   //永久    UMASK           077
 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

卡搜偶

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值