linux权限和归属

权限与归属

目录 : 基本权限

          附加权限

          acl访问控制列表

 

     

步骤:

        先创建一个目录 [mkdir]     

   访问方式(权限):

        -读取 :   允许查看文件  read      缩写:r

       -写入 :    允许写入修改文件 write   缩写:w

       - 执行 :    允许运行和切换文件  execute  缩写:x

 

 

 

       对于文本文件:
    r:cat less grep  head tail 
    w:vim  >  >>
    x:shell脚本
 

 

• 权限适用对象(归属)
– 所有者(属主):拥有此文件/目录的用户-user  u
– 所属组(属组):拥有此文件/目录的组-group     g
– 其他用户:除所有者、所属组以外的用户-other   o
 

 

 

  

查看权限
• 使用 ls -l 命令
– ls -ld 文件或目录...

小知识点:

   以-开头为文本文件
   以d开头为目录
   以l开头为快捷方式

 

 

案例: 
[root@server0 ~]# ls -l   /etc/passwd      查看/etc.passwd 的详细文件
[root@server0 ~]# ls -ld  /etc/                 查看/etc.passwd 的详细属性   (可自己在虚拟机做实验)发现

[root@localhost ~]# ls -ld /etc/passwd
-rw-r--r--. 1 root root 3117 12月  4 16:53 /etc/passwd     
 -代表文本文件  rw-代表(所属主)读写权限  r-- 代表(所属组) 只读权限     r-- 代表(其他人) 只读权限

以此尝试查看解析

[root@server0 ~]# ls -l   /etc/shadow           
[root@server0 ~]# ls -ld  /root
[root@server0 ~]# ls -ld  /home/student

[root@server0 ~]# ls -ld  /tmp
   

置基本权限
• 使用 chmod 命令
– chmod [-R] 归属关系+-=权限类别    文档...
  

 

 

 案例:


[root@server0 ~]# mkdir /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod u-w  /nsd01
[root@server0 ~]# ls -ld /nsd01

[root@server0 ~]# chmod g+w /nsd01
[root@server0 ~]# ls -ld /nsd01

Permission denied:权限不足

 


以root用户新建/nsddir目录,在此目录下新建readme.txt文件
并进一步完成下列操作
 1)使用户lisi能够在此目录下创建子目录     切换用户 su  -  lisi
     chmod o+w  /nsddir/
 2)使用户lisi不能够在此目录下创建子目录                 
     chmod o-w  /nsddir/
 3)使用户lisi能够修改readme.txt文件内容
     chmod o+w  /nsddir/readme.txt
 4)调整此目录的权限,使所有用户都不能cd进入此目录
     chmod u-x,g-x,o-x  /nsddir/
 5)为此目录及其下所有文档设置权限 rwxr-x---
     chmod -R  u=rwx,g=rx,o=---  /nsddir/
   -R:递归设置权限,目录下及目录下所有
 

 

设置文档归属
• 使用 chown 命令
– chown [-R] 属主      文档...
– chown [-R] :属组     文档...
– chown [-R] 属主:属组   文档.  


 

案例:


利用root用户新建/nsd06目录,并进一步完成下列操作         
1)将属主设为gelin01,属组设为tarena组              
[root@server0 /]# useradd gelin01
[root@server0 /]# useradd gelin02
[root@server0 /]# groupadd tarena
[root@server0 /]# chown gelin01:tarena  /nsd06
2)使用户gelin01对此目录具有rwx权限
      除属主与属组之外的人,对此目录无任何权限
[root@server0 /]# chmod o=--- /nsd06
3)使用户gelin02能进入、查看此目录内容
[root@server0 /]# gpasswd -a  gelin02  tarena    #将用户加入组
4)将gelin01加入tarena组, 将nsd06目录的权限设为rw-r-x---
      再测试gelin01用户能否进入此目录
[root@server0 /]# gpasswd -a  gelin01  tarena
[root@server0 /]# chmod u=rw,g=rx /nsd06

 


Set GID
• 附加在属组的 x 位上
– 属组的权限标识会变为 s
– 适用于目录,Set GID可以使目录下新增的文档自动设置与父目录相同的属组

 

 

 


[root@server0 ~]# mkdir /nsd08
[root@server0 ~]# ls -ld /nsd08

[root@server0 ~]# chown :stugrp /nsd08   #修改所属组
[root@server0 ~]# ls -ld /nsd08

[root@server0 ~]# mkdir /nsd08/abc01
[root@server0 ~]# ls -ld /nsd08/abc01

[root@server0 ~]# chmod g+s /nsd08       #赋予Set GID 权限
[root@server0 ~]# ls -ld /nsd08

[root@server0 ~]# mkdir /nsd08/abc02
[root@server0 ~]# ls -ld /nsd08/abc02

[root@server0 ~]# touch /nsd08/1.txt
[root@server0 ~]# ls -l /nsd08/1.txt
 

Sticky Bit
• 附加在其他人的 x 位上                                   
– 其他人的权限标识会变为 t
– 适用于开放 w 权限的目录,可以阻止用户滥用 w 写入权限(禁止操作别人的文档)
 

 

案例:
[root@server0 ~]# mkdir /home/public
[root@server0 ~]# chmod ugo=rwx /home/public
[root@server0 ~]# ls -ld /home/public

[root@server0 ~]# chmod o+t /home/public
[root@server0 ~]# ls -ld /home/public
 

 

acl访问控制列表

acl策略的作用
• 文档归属的局限性
– 任何人只属于三种角色:属主、属组、其他人
– 无法实现更精细的控制

• acl访问策略
– 能够对个别用户、个别组设置独立的权限
– 大多数挂载的EXT3/4、XFS文件系统默认已支持

 


设置acl访问控制策略
• 使用 getfacl、setfacl 命令
– getfacl 文档...
– setfacl [-R] -m u:用户名:权限类别 文档...
– setfacl [-R] -m g:组名:权限类别 文档...
– setfacl [-R] -x u:用户名   文档...    #删除指定ACL策略
– setfacl [-R] -b 文档...          #删除所有的ACL策略
 

 

案例:
[root@server0 ~]# mkdir /nsd10
[root@server0 ~]# setfacl -m u:lisi:rx /nsd10
[root@server0 ~]# setfacl -m u:zhangsan:rwx /nsd10
[root@server0 ~]# setfacl -m u:dc:rwx /nsd10
[root@server0 ~]# setfacl -m u:student:rwx /nsd10
[root@server0 ~]# getfacl /nsd10

[root@server0 ~]# setfacl -x u:dc /nsd10   #单独删除dc的ACL策略
[root@server0 ~]# getfacl /nsd10

[root@server0 ~]# setfacl -b /nsd10  #删除所有的ACL策略
[root@server0 ~]# getfacl /nsd10
###########################################################
acl策略的作用:单独拒绝
[root@server0 ~]# ls -ld /home/public/

[root@server0 ~]# setfacl -m u:lisi:--- /home/public/
[root@server0 ~]# getfacl /home/public/
 

 

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值