chmod,chown,umask,lsattr,chattr

2018-05-09 14:12:01 浏览数 (1)

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为0022

当我们创建一个文件 默认的权限为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

0 人点赞