文件权限
文件属性
通过ls -li可查看文件的长格式信息,我们取出一个进行解释
[root@centos7 /]#ls -li64 dr-xr-xr-x. 4 root root 4.0K Jul 14 11:33 boot第1列:inode号
第2列:第1个字符代表文件的类型(-是普通文件,d是目录等等) 第2-10个字符代表文件权限,前三个是用户的权限、中间三个用户组的、后面其他用户的权限 第11个字符.与SELINUX相关,暂时不做描述 第3列:文件的硬连接数 第4列:文件对应的属主或者用户 第5列:文件对应的属组或者用户组 第6列:文件大小第7列:文件最后的修改的时间
第8列:文件名修改文件属主和属组
chown 修改文件的属主(也可以改组)
用户 文件或者目录 <==仅仅授权用户:组 文件活目录 <==仅仅授权组用户:组 文件或目录 <==表示授权用户和组-R 递归–reference=源文件 目标文件强调:1)其中的冒号“:”可以用点好“.”代替2)要授权的用户和组名,必须是linux系统里实际存在的案例:
[root@centos7 app]#ll
-rw-r–r–. 1 root root 0 Jul 29 16:27 f1
-rw-r–r–. 1 root root 0 Jul 29 16:27 f2
[root@centos7 app]#chown ma:ma f1
[root@centos7 app]#chown :zhu f2
[root@centos7 app]#ll
-rw-r–r–. 1 ma ma 0 Jul 29 16:27 f1
-rw-r–r–. 1 root zhu 0 Jul 29 16:27 f2
[root@centos7 app]#chown –reference=/app/f1 f2 #将f1的用户和属组信息复制给f2
[root@centos7 app]#ll
-rw-r–r–. 1 ma ma 0 Jul 29 16:27 f1
-rw-r–r–. 1 ma ma 0 Jul 29 16:27 f2
chgrp 修改文件的属组(只能改组)
—-reference=源文件 目标文件
-R 递归
案例:
[root@centos7 app]#chgrp ma f1 <==将f1的属组直接修改成ma
[root@centos7 app]#ll
-rw-r–r–. 1 ma ma 0 Jul 29 16:27 f1
-rw-r–r–. 1 ma ma 0 Jul 29 16:27 f2
-rw-r–r–. 1 root root 0 Jul 29 16:37 f3
[root@centos7 app]#chgrp –reference=/app/f3 f1
[root@centos7 app]#chgrp –reference=/app/f3 f2
[root@centos7 app]#ll
-rw-r–r–. 1 ma root 0 Jul 29 16:27 f1
-rw-r–r–. 1 ma root 0 Jul 29 16:27 f2
-rw-r–r–. 1 root root 0 Jul 29 16:37 f3
文件权限
普通文件r:可以读取文件的内容w:可以追加或者覆盖文件的内容x:可以执行改文件,需要和r配合 目录文件r:可以查看目录下有哪些文件,不能查看文件的详细信息w:可以在目录中创建和删除文件,需要x配合x:可以cd进入该目录
区别:
文件权限可以用八进制来表示
r:4w:2x:1例如:rwx=4+2+1=7修改文件权限
chmod方法一:chmod u=rwx,g=rx,o=r /app/f1 方法二:chmod 755 /app/f1方法三:chmod –reference=f1 f2 <==将f2的权限修改成f1一样默认权限umask
默认权限umask
真实用途,从对应的位中将umask指定权限去除
全局设置:/etc/bashrc 用户设置:~/.bashrc 新建目录权限=777-umask 新建文件权限=666-umask 看结果,有寄数,对位+1 无寄数 偶数不变,最终结果目录案例:
[root@centos7 app]#umask0022当前umask的值为0022(第一位是特殊权限位,后续会介绍暂时不用理会)新建目录权限=777-022=755[root@centos7 app]#mkdir test/[root@centos7 app]#lldrwxr-xr-x. 2 root root 6 Jul 29 19:15 test <==创建一个目录test可以看见默认权限为755[root@centos7 app]#su – ma <==切换到ma用户,root默认umask为022,其他用户002Last login: Sat Jul 29 17:17:11 CST 2017 on pts/0
[ma@centos7 ~]$umask0002[ma@centos7 ~]$mkdir test2[ma@centos7 ~]$lldrwxrwxr-x. 2 ma ma 6 Jul 29 19:20 test2 <==创建的目录为775=777-002,符合上述格式文件案例:这次我们把默认umask更改为0421
[root@centos7 app]#umask 0421 [root@centos7 app]#umask0421[root@centos7 app]#touch f1[root@centos7 app]#ll–w-r–rw-. 1 ma ma 0 Jul 29 19:38 f1 <==666-421=245 5为奇数+1,偶数不变。最终为246。