1.在做文件权限管理之前,我们先了解下文件的基本属性,执行 ll 或者ls -l,查看文件的基本属性,以及所属的用户和组:
第一列中:
第一个字符:
d:表示目录;
-:表示文件;
rwx:
r:读权限
w:写权限
x:执行权限
三个为一组,没有该权限时,用 - 表示,第一组为属主权限,第二组为属组权限,第三组为其他用户权限。
第三列为文件(目录)属主
第四列为文件(目录)属组
如上图中的apache-maven-3.5.0目录权限描述为:
属主root用户拥有读写和执行权;属组为root(在root组里)的用户拥有读和执行权,没有写权限;其他用户拥有读和执行权,没有写权限。
2.了解了文件属性,接下来做用户分组及权限管理
a.新增user01和user02两个用户,新增没有指定分组时,默认以用户名命名该用户所在组,groups 查看用户所在组,用户user01所在组为user01,user02所在组为user02:
新增用户后,默认会在 /home/ 目录下生成以用户名为名的目录,作为该用户的家目录,且只有该用户拥有读写执行权,同组及其他用户不拥有任何权限:
b.假使user01目录下有个tomcat,user02需要该tomcat的读写和执行权,同时不拥有除tomcat外其他文件(目录)的任何权限:
如上图,user01目录下,有个属主和属组都是root的tomcat的文件夹,我们把它重新分配给user01:
c.上面说到user01的家目录默认权限是700,即只有属主user01拥有读写执行权,同组用户和其他用户没有任何权限,所以需要把user01的家目录,分配读和执行权给同组用户:
这里说明下,读写执行权不光可以用rwx表示,也可以用数字表示,r=4,w=2,x=1,5即表示读和执行权。
再给user01目录下的tomcat赋读写执行权给同组用户:
再将用户user02挂到user01组下:
切换到user02,验证下user02是否只有/home/user01/tomcat目录的读写和执行权:
进到tomcat,执行shutdown.sh,新增test目录,都是成功的:
再访问user01目录下未附权的user01file目录,提示没有权限,这样就达成了用户文件隔离的作用。
以上。