背景:朋友在使用php进行mv操作时,出现了权限被拒绝的问题.查看之后,发现目录设置了sticky权限,取消此权限后,文件可以正常mv及删除.

Sticky:对于一个多人可写的目录,如果设置了sticky,则每个用户仅能删除自己的文件(马哥语录,见 马哥Linux base学习笔记)

如下图所示,这是一个加了sticky权限的目录

# mkdir sticky_test
# chmod 1777 sticky_test
# ll -d sticky_test
drwxrwxrwt. 2 root root 4096 Jun 29 17:06 sticky_test

使用redheat用户进入sticky_test目录,touch一个文件,并对该文件添加777权限

$ whoami
redheat
$ touch redheat_file
$ chmod 777 redheat_file
$ ll
total 0
-rwxrwxrwx. 1 redheat redheat 0 Jun 29 17:10 redheat_file

正常来说,添加了777权限的文件,任何用户可以对其执行读,写,执行的操作

现在使用myuser用户进入该目录,执行删除操作

$ whoami
myuser
$ ll
total 0
-rwxrwxrwx. 1 redheat redheat 0 Jun 29 17:10 redheat_file
$ rm -rf redheat_file
rm: cannot remove `redheat_file': Operation not permitted

可以发现,系统给出了权限被拒绝的提示.

换回redheat用户,执行删除操作

$ rm -rf redheat_file
$ ll
total 0

命令可以正常执行.

再次创建该文件,并使用root用户将文件的属组更改为myuser

# chown .myuser redheat_file
# ll
total 0
-rwxrwxrwx. 1 redheat myuser 0 Jun 29 17:18 redheat_file

再次使用myuser用户执行删除命令

$ ll
total 0
-rwxrwxrwx. 1 redheat myuser 0 Jun 29 17:18 redheat_file
$ rm -rf redheat_file
rm: cannot remove `redheat_file': Operation not permitted

仍然是不可以删除的.

使用root用户,将目录的sticky权限去掉,同时将redheat_file文件的所属组改回redheat用户

# chmod o-t sticky_test
# ll -d sticky_test
drwxrwxrwx. 2 root root 4096 Jun 29 17:18 sticky_test
# chown redheat.redheat sticky_test/redheat_file
# ll sticky_test/redheat_file
-rwxrwxrwx. 1 redheat redheat 0 Jun 29 17:18 sticky_test/redheat_file

使用myuser用户可以成功删除该文件

$ rm redheat_file
$ ll
total 0

总结:当目录设置了sticky权限之后,属组或其他用户,即使对该目录下的文件拥有权限,也无法对该文件执行删除操作.

命令:

对目录设置777权限,同时增加sticky权限
# chmod 1777 sticky_test
对目录设置sticky权限
# chmod o+t sticky_test
删除目录sticky权限
# chmod o-t sticky_test

Linux权限问题(1)-Sticky的更多相关文章

  1. Linux权限扩展

    在LINUX中我们创建文件或文件夹的时候系统总会为我们创建的对象分配一个默认的权限,那么今天我们就了解一下这个默认权限是怎么得来的?以及我们如何来改变系统的默认权限设置? 在LINUX系统中我们打开每 ...

  2. linux权限---【600,644,700,755,711,666,777】 - - 博客频道 - CSDN.NET

    body { font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI ...

  3. linux权限相关操作

    Linux权限管理是Linux中一个十分重要的概念,也是系统安全性的重要保障.这里主要介绍Linux的基本权限和默认权限,通过理论讲解与实验演示,可以详细了解到权限的相关操作及其重要性. 文件权限 [ ...

  4. Linux权限详解 命令之 chmod:修改权限

    权限简介 Linux系统上对文件的权限有着严格的控制,用于如果相对某个文件执行某种操作,必须具有对应的权限方可执行成功. Linux下文件的权限类型一般包括读,写,执行.对应字母为 r.w.x. Li ...

  5. linux权限详解

    一个用户.一个组 我们来看一看 Linux 权限和所有权模型.我们已经看到每个文件属于一个用户和一个组.这正是 Linux 中权限模型的核心.您可以在 ls -l 清单中查看用户和组: $ ls -l ...

  6. linux权限管理-特殊权限

    目录 linux权限管理-特殊权限 一,特殊权限 Linux权限属性chattr概述 linux进程掩码umask linux权限管理-特殊权限 一,特殊权限 1.suid(4000) SetUID( ...

  7. linux 权限笔记

    权限模型 linux权限模型,指的是对文件.文件夹同的读写权限,同用户之间的权限管理模型 三种角色 user 文件.文件夹的创建者,所有人 group 一个group对应多个user,user自动具有 ...

  8. Linux—权限管理

    Linux 权限管理 1.权限简介 Linux权限是操作系统用来限制对资源访问的机制,权限一般分为读.写.执行.系统中每个文件都拥有特定的权限:属主.属组以及其他人,通过这样的机制来限制哪些用户或用户 ...

  9. linux权限系统

    Linux权限分为 r(4):可读 , w(2)可写 , x(1)可执行 , -无权限 , 可以通过ls -l 文件名查看权限 , 如 ls -l 文件名 输出: -rwxrw---x. root r ...

随机推荐

  1. vs Code + Eslint + Prettier 代码格式化(vue开发)

    一.什么是Eslint 通过查看eslint官网(官网传送门),我们就可以知道,eslint就是一个用来识别 ECMAScript/JavaScript 并且按照规则给出报告的代码检测工具,主要用来检 ...

  2. 02_利用numpy解决线性回归问题

    02_利用numpy解决线性回归问题 目录 一.引言 二.线性回归简单介绍 2.1 线性回归三要素 2.2 损失函数 2.3 梯度下降 三.解决线性回归问题的五个步骤 四.利用Numpy实战解决线性回 ...

  3. 面试官:Java中线程是按什么顺序执行的?

    摘要:Java中多线程并发的执行顺序历来是面试中的重点,掌握Java中线程的执行顺序不仅能够在面试中让你脱颖而出,更能够让你在平时的工作中,迅速定位由于多线程并发问题导致的"诡异" ...

  4. 机器学习--PR曲线, ROC曲线

    在机器学习领域,如果把Accuracy作为衡量模型性能好坏的唯一指标,可能会使我们对模型性能产生误解,尤其是当我们模型输出值是一个概率值时,更不适宜只采取Accuracy作为衡量模型性泛化能的指标.这 ...

  5. LeetCode剑指Offer刷题总结(一)

    LeetCode过程中值得反思的细节 以下题号均指LeetCode剑指offer题库中的题号 本文章将每周定期更新,当内容达到10题左右时将会开下一节. 二维数组越界问题04 public stati ...

  6. Updating a Dictionary UVA - 12504

    In this problem, a dictionary is collection of key-value pairs, where keys are lower-case letters, a ...

  7. Digit Generator UVA - 1583

    ​ For a positive integer N, the digit-sum of N is defined as the sum of N itself and its digits. Whe ...

  8. matlab数值类型

    matlab数值类型 数值类型的分类 整数类型    整数类型有8种.上面的数字为其内存大小,如:int8,整数所占内存大小为8个字节.除了int64 和 uint64不能进行数值运算之外都可以. 类 ...

  9. 记一次 .NET WPF布草管理系统 挂死分析

    一:背景 1. 讲故事 这几天看的 dump 有点多,有点伤神伤脑,晚上做梦都是dump,今天早上头晕晕的到公司就听到背后同事抱怨他负责的WPF程序挂死了,然后测试的小姑娘也跟着抱怨...嗨,也不知道 ...

  10. Cobalt-Strike Office宏利用与免杀

    1.打开Cobalt-Strike生产Office宏病毒. 首先需要设置监听器.因为钓鱼的目标比较单纯,在这里就不采用域前置技术. 然后使用攻击模块,生产Office宏病毒. 设置好监听器. 生成宏病 ...