chmod
chmod
除了可以用数字代替rwx来设置权限之外,还支持使用rwx的方式来设置权限
目录或者文件的权限属性一共有三组,分别属于user、group、others,在使用的时候用u,g,o
来分别代表这三群,除此之外,还可以用a(all)来代表全部的三群
一个文件设置成 rwxrw-r- (764)这样的权限,使用这种方式改变权限的命令为
chmod u=rwx,g=rw,o=r 文件名
还可以针对u, g, o, a增加或者减少某个权限(读,写,执行),例如
umask
在默认情况下,目录权限值为766,普通文件权限值为644
umask语法: umask xxx
(这里的xxx代表三个数字)
查看umask值只要输入umask然后回车。 umask预设是0022
先看一下规则:
若用户建立为普通文件,则预设“没有可执行权限”,只有rw两个权限。最大为666(-rw-rw-rw-)
若用户建立为目录,则预设所有权限均开放,即777(drwxrwxrwx)
umask数值代表的含义为,上边两条规则中的默认值(文件为666,目录为777)需要减掉的权限
所以目录的权限为(rwxrwxrwx) – (----w--w-) = (rwxr-xr-x)
普通文件的权限为(rw-rw-rw-) – (----w--w-) = (rw-r--r--)
umask的值是可以自定义的,比如设定umask 为 002,你再创建目录或者文件时,默认权限分别为(rwxrwxrwx) – (-------w-) = (rwxrwxr-x)
和(rw-rw-rw-) – (-------w-) = (rw-rw-r--)
chattr
chattr修改文件的特殊属性
语法: chattr [+-=][ASaci [文件或者目录名]
参数:+ - = R
:分别为增加、减少、设定、递归处理
A:
增加该属性后,文件或目录的atime将不可被修改;
S:
增加该属性后,会将数据同步写入磁盘中;
a:
增加该属性后,只能追加不能删除,非root用户不能设定该属性;
c:
自动压缩该文件,读取时会自动解压;
i:
增加后,使文件不能被删除、重命名、设定连接、写入、新增数据;
chattr 的属性是级联生效的,不仅对当前目录生效而且会对目录下的文件同样生效。
lsattr
列出文件/目录的特殊属性
语法: lsattr [-aR] [文件/目录名]
-a:类似与ls 的-a 选项,即连同隐藏文件一同列出;
-R:连同子目录的数据一同列出