Day5 权限管理与归属

1、基本权限

1.1 访问方式(权限)

读取:允许查看内容—read

  • 目录的 r 权限:能够ls浏览此目录内容

写入:允许修改内容—write

  • 目录的 w 权限: 能后执行 rm / mv / cp / mkdir / touch /…等更改目录内容的操作

可执行:允许运行和切换—execute

  • 目录的 x 权限:能够cd切换到此目录

1.2 权限适合对象(归属)

所有者:拥有此文件/目录的用户—user

所属组:拥有此文件/目录的组—group

其他用户:出所有者、所属组以外的用户—other

1.3 查看权限

ls -ld 文件或目录

  • 写入格式:ls -ld 目录或文件路径

参考实例:

[root@Liwj ~]# ls -ld /test
drwxr-xr-x. 3 root root 88 810 15:05 /test
权限位		硬连接数		属主		属组		大小		最后修改时间		文件/目录名称

1.4 设置基本权限(rwx)—chmod

chomd 权限类别 文件或文档

  • 创建目录时,同时设置目录权限 。
mkdir -m 777 /test						#创建/test文件夹,并设置所有人可读、写、执行

在这里插入图片描述

修改目录或文件权限设置

参考实例:

chmod 700 /test/						#修改/test文件夹权限为:拥有者可读、写、执行,其他人不可访问

在这里插入图片描述

chmod u=rwx,g+rwx,o--- /test/						
#修改/test文件夹权限为:
拥有者可读、写、执行
所属组可读、写、执行
其他人不可访问

在这里插入图片描述

修改文件权限(rwx)
  • 父、子文件rwx权限不同,可使用【-R】同时修改下级子文件
    在这里插入图片描述
    参考实例:
chmod -R 777 /test
#修改/test文件夹含子文件权限:
拥有者(u):rwx(可读、可写、可执行)
所属组(g):rwx(可读、可写、可执行)
其他用户(o):rwx(可读、可写、可执行)

在这里插入图片描述

1.5 设置归属权限(拥有者、所属组)—chown

  • 可使用递归【-R】同时设置父、子目录文件

chown 选项参数 归属权限 文件路径

  • 归属权限:
拥有者
:所属组
拥有者:所属组

参考实例:

  • 父、子文件归属均为root ;文件夹rwx权限对用户不同
    在这里插入图片描述
修改文件归属 —拥有者
chown -R harry /test
#修改/test文件夹含子文件归属   拥有者为:harry

在这里插入图片描述

修改文件归属 —所属组
chown -R :adminuser /test
#修改/test文件夹含子文件归属   所属组为:adminuser

在这里插入图片描述

修改文件归属 —拥有者、所属组
chown -R root:root /test
#修改/test文件夹含子文件归属   拥有者为:root	所属组为:root

在这里插入图片描述

2、附加权限(特殊权限)

2.1 Set GID (继承组权限)

  • 常用于目录
  • 显示在所属组的x权限位上,
  • 当组有:“x”(执行)权限,则显示“s”;
  • 当组没有“x”(执行)权限,则显示“S”
  • 继承组权限;使得在该目录下创建的文档文件与父目录相同组
  • 所有者 > 所属组 > 其他人

chmod g + s 目录文件


  • 目录“ r ”权限:能够 ls 浏览目录内容
  • 目录“ w ”权限:能够 rm / mv / cp / mkdir / touch 等更改目录内容
  • 目录“ x ”权限:能够 cd 切换到此目录

参考实例:

  • 给目录分配一个组:adminuser,再给组分配附加权限Set GID(g+s),此目录下新增子文件继承父目录权限
    在这里插入图片描述
[root@svr7 ~]# ls -ld /test01/							#查看父目录权限
drwxr-sr-x. 2 root adminuser 6 8月  15 13:02 /test01/							
[root@svr7 ~]# mkdir /test01/f01						#父目录下新增子目录
[root@svr7 ~]# ls -ld /test01/f01						#查看子目录权限
drwxr-sr-x. 2 root adminuser 6 8月  15 13:09 /test01/f01						#对比父目录权限一致

在这里插入图片描述

2.2 Set UID (使用管理员身份)

  • 显示在所有者的x权限位上,
  • 当所有者有:“x”(执行)权限,则显示“s”;
  • 当所有者没有“x”(执行)权限,则显示“S”
  • 适用于执行文件,让使用者具有所有者的权限

chmod u+s 目录、文件


参考实例:

  • 复制一个mkdir程序(/usr/bin/mkdir),命名为:userdir,并赋予UID权限
[root@svr7 ~]# cp /usr/bin/mkdir /usr/bin/userdir					#复制mkdir并命名userdir
[root@svr7 ~]# chmod u+s /usr/bin/userdir							#赋予UID权限
  • 使用其他用户登录,使用userdir在根目录可以创建新目录
[a1@svr7 root]$ userdir /test03										#根目录创建/test03目录
[a1@svr7 root]$ ls /												#a1用户可创建目录
bin   dev  etc   lib    mnt     opt   protected  run   srv  test01  tmp  var
boot  dvd  home  lib64  nsddir  proc  root       sbin  sys  test03  usr  vod	

  • 使用其他用户登录,使用mkdir在根目录不可以创建新目录
[a1@svr7 root]$ mkdir /test02										#根目录创建/test02目录
mkdir: 无法创建目录"/test02": 权限不够									#a1无法在根创建目录
[a1@svr7 root]$ 

2.3 Sticky Bit (禁止删除他人创建的目录、文件)

  • 显示在其他人的x权限位上,
  • 当其他人有:“x”(执行)权限,则显示“t”;
  • 当其他人没有“x”(执行)权限,则显示“T”
  • 适用于开放“ w ”权限的目录,阻止用户滥用 “ w ”写入权限

chmod o + t 目录文件


参考实例:

  • 附有“ t ” 权限的目录下
[root@svr7 ~]#		 chmod o+t /test01/

  • 用户:a1 > 创建子文件
[a1@svr7 root]$ 	mkdir /test01/a1
  • 用户:a4 > 无法删除 / 修改 a1 子文件
[a4@svr7 root]$ 	rm -rf /test01/a1
rm: 无法删除"/test01/a1": 不允许的操作

3、ACL访问控制列表

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

3.1 设置用户ACL:setfacl -m u:用户名:权限(rwx) 目录、文件

  • 可添加【 - R 】选项,于子目录一同设置

参考实例:

  • 当用户没有权限访问目录时
[a1@svr7 root]$ 	ls /test01/
ls: 无法打开目录/test01/: 权限不够
  • 使用ACL权限赋予 a1用户 读、执行( r x )权限
[root@svr7 ~]# setfacl -m u:a1:rx /test01/
  • 此时,a1用户可以访问该目录
[a1@svr7 root]$ ls /test01/
a1

3.2 设置组ACL:setfacl -m g:组名:权限(rwx) 目录、文件

  • 可添加【 - R 】选项,于子目录一同设置

  • 新建一个“mk”组,添加a2用户到组里面
[root@svr7 ~]# groupadd mk
[root@svr7 ~]# gpasswd -a a2 mk
正在将用户“a2”加入到“mk”组中
  • 使用ACL权限赋予mk 组 读、执行( r x )权限
[root@svr7 ~]# setfacl -m g:mk:rx /test01/
  • 重新登录账户后,此时mk组内的成员可以访问
[a2@svr7 root]$ ls /test01/
a1

3.3 查看ACL权限:getfacl 目录、文件

  • 查看目录文件访问控制列表
[root@svr7 ~]# 	getfacl /test01/						#查看/test目录具体访问权限
getfacl: Removing leading '/' from absolute path names
# file: test01/
# owner: root
# group: root
# flags: -s-
user::rwx
user:a1:r-x
group::rwx
group:mk:r-x
mask::rwx
other::---

3.4 删除指定ACL策略

删除指定用户ACL:setfacl - x u:用户名 目录、文件

[root@svr7 ~]# setfacl -x u:a1 /test01/						#删除/test01目录的a1用户的ACL访问
[root@svr7 ~]# getfacl /test01/								#与上面参考,已删除a1用户访问
getfacl: Removing leading '/' from absolute path names
# file: test01/
# owner: root
# group: root
# flags: -s-
user::rwx
group::rwx
group:mk:r-x
mask::rwx
other::---

删除指定组ACL:setfacl - x g:组名 目录、文件

[root@svr7 ~]# setfacl -x g:mk /test01/						#删除/test01目录的mk组的ACL访问
[root@svr7 ~]# getfacl /test01/								#与上面参考,已删除mk组访问
getfacl: Removing leading '/' from absolute path names
# file: test01/
# owner: root
# group: root
# flags: -s-
user::rwx
group::rwx
mask::rwx
other::---

删除所有ACL:setfacl - b 目录、文件

[root@svr7 ~]# 	setfacl -b /test01/						#删除/test01目录所有ACL访问
[root@svr7 ~]# getfacl /test01/
getfacl: Removing leading '/' from absolute path names
# file: test01/
# owner: root
# group: root
# flags: -s-
user::rwx
group::rwx
other::---
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值