权限管理:

chmod, chgrp, chown, umask, setfacl,chattr

在linux中文件权限有三类:属主权限(u), 属组权限(g), 其他用户权限(o)

 -rw-r--r-- 1 root root 0 07-21 23:03 file 第一位是 - 则为文件,如果是 d 这为目录其他三组 --- --- ---分别代表属主 属组 其他用户

如上file文件第一个 - 表示是文件。rw- 表示属主权限为读写 ,- 表示没有权限此位是执行,所以没有执行权限。其他同理。第一个root表示是属主,第二个root表示属组

-rw-r--r-- 1 root root 0 07-21 23:03 file

修改权限:

修改属主 chown  user1 file    ----------> -rw-r--r-- 1 user1 root 0 07-21 23:03 file

修改属组 chown :user2 file 或 chgrp uer2 file 

                ---------->-rw-r--r-- 1 root user2 0 07-21 23:03 file

修改属主属组分别为user1 user2  chown user1:user2 file 

                -----------> -rwxr-xr-- 1 user1 user2 0 07-21 23:03 file

chmod 修改文件读写执行、防删除和保留进程文件属主属组权限,对应文件权限为rwxtss。对于文件的属主属组及其其他组分别用u g o 表示,a表示u g o三个全部。+表示添加权限,-表示去除权限。

修改属主为读写可执行权限:chmod u+rwx file 

                ---------->-rwxr--r-- 1 root user2 0 07-21 23:03 file

修改属组为读执行权限:chmod g+rx file 

                ----------->-rw-r-xr-- 1 root user2 0 07-21 23:03 file

修改全部有执行权限:chmod a+x file 

                ------------> -rwxr-xr-x 1 root user2 0 07-21 23:03 file

修改其他用户没有可执行权限:chmod o-x file 

                ------------> -rwxr-xr-- 1 root user2 0 07-21 23:03 file

方法二:rwx rwx rwx 中每一位有权限为1,没权限为0。

比如: r-- r-- r-- 为二进制100 100 100 = 十进制4 4 4

  rwx rw- r-- 为二进制 111 110 100 = 十进制 764

修改属主读写执行 属组为读执行 其他用户为读 :chmod 754 file 

                ---->-rwxr-xr-- 1 user1 user2 0 07-21 23:03 file

特殊权限

SUID 运行某程序时,相应进程的属主是程序文件自身的属主,而不是启动者的属主

 rwsrwx--- chmod u+s或chmod 4770    如果原先有x有执行权限就显示s,否

                                                            则显示大写S表示权限不完全

chmod u+s file 其他用户执行file的进程属主具备user权限rwx 

                         ------->-rwsrwx--- 1 user root 0 07-21 23:03 file

 SGID 运行某程序时,相应进程的属组是程序文件自身的属组,而不是启动者的属组 

 rwxrws--- chmod g+s 或chmod 2770 Sticky 

chmod g+s file 其他用户执行file的进程属组具备user权限rwx  

                        ------->-rwxrws--- 1 root user 0 07-21 23:03 file

防删位但可以删除自己创建的文件 ------rwt chmod o+t 或chmod 1777

chmod o+t file  或 chmod 1777  ------->-rwxrwxrwt 1 user root 0 07-21 23:03 file

利用文件扩展保存额外的访问控制权限

setfacl 

-m 设定

setfacl -m u:user:rwx file

setfacl -m g:group:rwx file

setfacl -m d:u:user:rwx dir 

-x 取消 

setfacl -x u:user

setfacl -x g:group

getfacl file 查看扩展权限

chattr

i:不可修改权限  

例:chattr u+i filename 则filename文件就不可修改,无论任何人,如果需要修改需要先删除i权限,

用chattr -i filename就可以了。查看文件是否设置了i权限用lsattr filename。

a:只追加权限, 对于日志系统很好用,这个权限让目标文件只能追加,不能删除,而且不能通过编辑器追加。

可以使用chattr +a设置追加权限。

umask 023

文件默认权限没有执行权限如果有执行权限就加1 文件减为-1则为0

文件 666-023=643+1=644

目录 777-023=754