首页 > 代码库 > chmod+chown+umask+lsattr_chattr

chmod+chown+umask+lsattr_chattr

chmod

rwxrw-r--  代表着不同的三个权限位  分别是:所有者,所属组,其他用户

r=4 w=2 x=1 , rwx=7,rw- =6, r-- =4,  r=读,w=写,x=执行

命令格式:

#chmod 755 dir1 #给dir1目录授权755<rwxr-xr-x>
#chmod -R 700 dir2  #级联设定dir2及其目录下的子目录或文件同时批量设定权限为 700<rwx------>

以下三种不经常用<建议直接数字 例如 700 755等>!

#chmod u=rwx,g=r,o=r dir3   #也可使用这种模式,分别制定u g o 的权限
#chmod a+x dir4      #意味着所有的权限为均增加一个x权限
#chmod g-x,o-x dir5   #也可专门设定某个目录有什么权限

chown

命令格式:

#chown username:group filename or directory
#chown zhdy /tmp/123.txt     #把123.txt这个目录的用户更改为zhdy
#chown zhdy:root /tmp/234    #把234这个目录的所有者更改为zhdy 所属组更改为root
#chown  :user1 /tmp/123     #仅仅更改123的所属组为user1
#chown -R zhdy:root /tmp/343     #级联批量更改343目录及子目录和文件全部更改所属者为zhdy 所属组为root

umask

系统默认的umask为022

当我们创建一个文件 默认的权限为644<rw-r--r-->

当我们创建一个目录 默认的权限为755<rwx-r-xr-x>;是因为目录需要打开,打开就需要执行权限!

当然我们也可以更改系统的默认;

例:umask 002    002<-------w->  

当我重新创建一个文件   666<rw-rw-rw-> - 002<-------w-> = 664<rw-rw-r-->

当我重新创建一个目录   777<rwxrwxrwx> - 002<-------w-> = 775<rwxrwxr-x>

例2: umask 033   033<----wx-wx>

当我重新创建一个文件   666<rw-rw-rw-> - 033<----wx-wx> = 644<rw-r--r-->

当我重新创建一个目录   777<rwxrwxrwx> - 033<----wx-wx> = 744<rwxr--r-->

lsattr_chattr

#chattr +i /tmp/123  或  #chattr +i /tmp/232.txt

如上使用chattr 增加了 i 权限,这是一个非常严谨的权限,不可以增加,追加,删除,更改,重命名任何内容和信息!!!如何去掉呢?使用:

#chattr -i /tmp/123  或  #chattr -i /tmp/232.txt     即可去掉 i 权限
#chattr +a /tmp/123  或  #chattr +a /tmp/232.txt

如上使用chattr 增加了 a 权限,使用这个权限,只可以追加内容;不可以删除,更改,重命名!!!

同理去掉 a 权限使用

#chattr -a /tmp/123  或  #chattr -a /tmp/232.txt     即可去掉 a 权限

如何查看一个文件或者目录有没有 i a 权限?

#lsattr /tmp/123 或 #lsattr /tmp/232.txt

一次性查看某个目录下的子目录或文件是否也有 i 或 a 权限

#lsattr -R /tmp/123

把隐藏目录也列出来

#lsattr -a /root

本文出自 “老七Linux运维管理” 博客,请务必保留此出处http://asd9577.blog.51cto.com/4291946/1933228

chmod+chown+umask+lsattr_chattr