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