Linux | 一篇文章带你深刻理解粘滞位

目录

前言

一、为什么需要粘滞位

二、粘滞位是什么?

三、怎么设置粘滞位


前言

关于粘滞位的学习,首先你得了解Linux下的权限,当然,文章会稍稍带着复习关键知识点,具体关于权限,请移步 Linux权限

一、为什么需要粘滞位

首先,如果每听过的小伙伴肯定不知道什么是粘滞位,但并不影响我们了解为什么需要粘滞位;现在我们有这样的一个情形,公司内有两个员工,分别叫做小张和小李,现在公司要求这两个员工把自己的工作文件放到root账户创建的共享文件目录下,于是有了下面这样的文件;

但是,如果我们这么设置权限,小张和小李既没有进入该目录的权限x,也没有再该目录下创建文件的权限w,这样根本就不能达到我们想要的效果,因此我们要赋予他们两w和x的权限,如下图所示;

这样就可以让小张和小李在该目录下创建各自的文件了,如下图所示;

但是呢,小张和小李有矛盾,小张不想让小李看自己的代码,小李也不想让小张把自己的代码偷走!于是呢,小张和小李都给自己的文件分别修改了权限,如下图所示;

突然有一天,小张和小李又发生矛盾了,小张非常生气,于是就想将小李辛苦写的代码给改掉;说干就干,于是直接登上了自己的账号,准备修改小李的代码;于是有了下图;

他发现自己没有修改文件的权限,小李早就把自己文件的权限修改了,小张既不能读,也不能写,也没有执行权;于是小张气的咬牙切齿,心生一狠计,于是他直接 rm -f xiaoli1;如下图所示;

就这样小张一句 rm 就偷偷删掉了,小李熬了几夜写的代码;故事到这就完毕了;这里提出一个问题,为什么小张对文件没有任何权限,不能读,不能写,也不能执行,却可以删掉呢?

复习一下,对于文件是否可删是有所在目录的权限决定的,而小张和小李所在的是一个共享目录,他们都拥有w权限,可以在目录下创建删除文件,因此可以虽然没有对方创建文件的权限,却拥有删掉对方文件的权限;

又有小伙伴有疑惑了,那直接把共享目录的w权限去掉,不就可以了吗?但是如果没有w权限,那小张和小李又怎么在共享目录下创建自己的文件呢?那又如何工作呢?因此引出了我们粘滞位的概念;

二、粘滞位是什么?

粘滞位也是一种权限,一般出现在共享目录的情形中,增加了粘滞位后,哪个用户创建的文件,就只能由哪个用户来进行删除,也就可以防止小张上述的那种极端行为;

三、怎么设置粘滞位

我们可通过以下指令进行设置粘滞位;

chmod +t 文件名

细节:

1、粘滞位只能由目录创建者来进行增加和取消;

2、在设置粘滞位的目录内的文件/目录只能由 文件拥有者 、设置粘滞位目录用户 、root用户进行删除;

相关推荐
Soneswy30 分钟前
Linux系统篇--重定向与文件操作命令
linux
有毒的教程34 分钟前
Linux底层存储路由配
linux·运维·网络
Linux系统运维工程师_郭主任2 小时前
运维人还在被拒offer?现在能考的,只有 RHCE 10.0。
linux
自养Agent2 小时前
MCP Server Boundary Audit Report
linux·服务器·人工智能·windows·大模型·llm
Coisinier3 小时前
docker命令管理镜像及容器
linux·运维·nginx·docker·容器·操作系统
A心有千千结3 小时前
通过 SSH 反向代理让服务器借用本机网络访问 GitHub 的最佳实践
linux·服务器·网络·git·ssh·github
书生执笔画浮沉4 小时前
Linux 内核模块为什么不能自己解决兼容性问题?
linux·c·kernel·update·灵感
15Moonlight4 小时前
Linux网络(03):Socket 编程 TCP
linux·网络·tcp/ip
广州灵眸科技有限公司4 小时前
单芯片同时跑 Linux 与 RT-Thread:RV1126B的AMP异构方案完整拆解
linux·运维·服务器
小雪崩4 小时前
嵌入式学习:Linux驱动开发总结
linux·驱动开发·学习