Linux的权限(三)

目录

共享文件夹

分析一

补充内容

分析二

粘滞位


共享文件夹

分析一

在普通用户yyf中创建一个目录test:

普通用户yyf在test目录中创建yyf类的文件,超级用户root在该目录中创建root.txt类的文件(从拥有者和所属组上来看只有root可以对这些文件进行删除和修改)

Linux的权限(三)_第1张图片

普通用户yyf作为root1.txt文件的other,只有对该文件的读权限(图中没有展现)没有对该文件的写权限,这是正常的因为该文件对other的权限只有r,但是普通用户却可以删除该文件

Linux的权限(三)_第2张图片

这是因为test目录是在普通用户yyf中创建的,yyf拥有对该目录的rwx权限,即yyf对该目录拥有读写权限,也就是可以删除或修改该目录中的文件

Linux的权限(三)_第3张图片

root用户对此表示疑惑?你一个普通用户为什么可以删除超级用户创建的文件?

yyf表示,是我删的,你别问为什么,要问就问你为什么要在我的目录中创建文件 

结论:一个文件是否可以被删除与它本身的读取(r)、写入(w)和执行(x)权限无关,而与它所在目录的写入权限有关,要删除一个文件,你需要对包含该文件的目录具有写入权限。如果你没有目录的写入权限,即使你对文件本身拥有全部权限也无法删除它(要删除一个文件你得看它的父级目录都给你了的什么权限,当然root用户有时候可以强制删除文件)

补充内容

斜杠(/)是linux文件系统的最顶层目录

Linux中,普通用户的家目录位于/home/,更准确的来说是/目录中的home目录中:

Linux的权限(三)_第4张图片

root用户的家目录就是/root,即/目录中的root目录中(可以发现cd root 与 cd的效果一样)

Linux的权限(三)_第5张图片

分析二

除了root用户外,普通用户都不会拥有进入其它普通用户目录的权力:

Linux的权限(三)_第6张图片

结论: 共享文件不能建立在一个用户自己的目录(家目录)下,只能在系统的非用户目录(既不是普通用户也不是超级用户root)下创建

Linux的权限(三)_第7张图片

同时记得为该目录添加other的写权限:

思考:共享文件的other有读、写、执行权限,那么当我与用户yyf在通过共享文件夹传递文件时,wxm可以删除我们俩传递的文件吗?
答案:可以(实际效果不再展示)
 

粘滞位

为了防止上述问题的发生我们引入了粘滞位的概念

特点:当一个目录被设置为粘滞位,则该目录下的文件只能由

  • root删除
  • 该目录的所有者删除
  • 该文件的所有者删除

添加方式:chmod  +t 目录名

为共享文件目录111_shared添加粘滞位后, whb用户创建的log.txt文件在于zpw用户共享使用时,gaobo用户就不能对该文件进行删除操作,只有该文件的所有者zpw可以删除:

Linux的权限(三)_第8张图片

~over~ 

你可能感兴趣的:(Linux-初阶,linux,运维,服务器)