chmod:修改目录权限

chmod 简介

chmod​ 是一个常用的 Linux 命令,用于改变文件或目录的权限。在 Linux 中,每个文件和目录都有权限位,分别控制着文件所有者、所属组和其他用户对文件的读、写和执行权限。

查看 Linux 文件权限

soulio@ubuntu:~$ ls -l /
total 4004936
lrwxrwxrwx   1 root root          7 Feb 16  2024 bin -> usr/bin
drwxr-xr-x   3 root root       4096 Aug 23 06:16 boot
...

第 1 位是文件类型:l 表示链接,d 表示文件,-表示普通文件。

第 2~10 位是权限位:分别表示属主、属组 和 其他用户的 rwx 权限。

chmod 基本语法

chmod [选项] mode file
  • mode​:权限模式,用数字或符号表示。
  • file​:要改变权限的文件或目录。

chmod​ 命令中,权限可以用数字或符号表示。

  • u:文件所有者
  • g:所属组
  • o:其他用户
  • a:所有用户

一些常用的 chmod​ 命令选项包括:

  • -R:递归地改变指定目录及其子目录中所有文件的权限。
  • --reference=referencefile:根据 referencefile​ 的权限来设置指定文件的权限。

示例列表

1. 给文件所有者增加执行权限

chmod u+x file.txt

2. 给文件所属组增加写权限

chmod g+w file.txt

3. 移除其他用户的读权限

chmod o-r file.txt

4. 给所有用户设置读权限

chmod a+r file.txt

5. 设置文件权限为只有所有者有读、写、执行权限

chmod 700 file.txt

6. 设置文件权限为所有者有读、写、执行权限,所属组和其他用户有读和执行权限

chmod 755 file.txt

7. 设置文件权限为所有者有读、写权限,所属组和其他用户没有任何权限

chmod 640 file.txt

8. 设置目录权限,使得所有者有完全权限,所属组和其他用户只能进入目录(不能列出目录内容或创建文件)

chmod 711 directory

9. 设置 setuid 权限,使得执行文件的用户获得文件所有者的权限

chmod u+s executable

10. 设置 setgid 权限,使得在目录中创建的文件继承目录的所属组而不是创建者的所属组

chmod g+s directory

11. 设置 sticky bit 权限,使得只有文件所有者可以删除或重命名文件,即使其他人有写权限

chmod +t directory

12. 同时移除 setuid、setgid 和 sticky bit 权限

chmod u-s,g-s,o-t directory

特殊权限

在Linux中,除了基本的读(r)、写(w)和执行(x)权限之外,还存在三种特殊权限:

一、概念

  1. Setuid (SUID) :

    • 概念:SUID是一种特殊权限,当它被设置在一个可执行文件上时,用户在执行这个文件时,会暂时获得该文件所有者的权限。
  2. Setgid (SGID) :

    • 概念:SGID是一种特殊权限,可以应用于可执行文件或目录。当应用于可执行文件时,执行者会获得文件所属组的权限;当应用于目录时,目录中创建的新文件和目录会继承该目录的组所有权。
  3. Sticky Bit:

    • 概念:Sticky Bit是一种特殊权限,通常只应用于目录。设置了Sticky Bit的目录中,只有文件的所有者或root用户才能删除或重命名文件,即使其他用户对目录有写权限。

二、标志符号

  1. Setuid (SUID) :

    • 标志符号:在ls -l​命令的输出中,SUID权限在所有者的执行权限位上显示为s​(如果所有者有执行权限)或S​(如果所有者没有执行权限)。
  2. Setgid (SGID) :

    • 标志符号:在ls -l​命令的输出中,SGID权限在所属组的执行权限位上显示为s​(如果所属组有执行权限)或S​(如果所属组没有执行权限)。
  3. Sticky Bit:

    • 标志符号:在ls -l​命令的输出中,Sticky Bit在其他用户的执行权限位上显示为t​(如果其他用户有执行权限)或T​(如果其他用户没有执行权限)。

三、实际用途

  1. Setuid (SUID) :

    • 实际用途:SUID常用于那些需要临时提升权限来执行特定操作的应用程序,例如passwd​命令允许普通用户更改自己的密码,而密码文件通常需要root权限才能修改。
  2. Setgid (SGID) :

    • 实际用途:SGID在可执行文件上用于让执行者以文件所属组的身份运行程序,常用于共享程序。在目录上,SGID用于确保所有用户创建的文件都属于该目录的组,便于组内用户共享文件。
  3. Sticky Bit:

    • 实际用途:Sticky Bit通常用于公共可写目录,如/tmp​,以防止用户删除或重命名其他用户的文件,增加了系统安全性,尤其是在多用户环境中。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/795890.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

pbootcms模板如何实现产品置顶

要在PBootCMS中实现产品的置顶功能,你可以按照以下步骤操作:定位到模板文件:打开你的网站后台。 导航到模板管理部分,找到templates default目录下的index.html文件。修改产品列表查询参数:在index.html文件中找到展示产品列表的部分。 修改产品列表的查询参数,将order=s…

算法与数据结构——二分查找

二分查找 二分查找(binary search)是一种基于分治策略的高效搜索算法。它利用数据的有序性,每轮缩小一半搜索范围,直至找到目标元素或搜索区间为空为止。Qustion: 给定一个长度为n的数组nums,元素按从小到大的顺序排列且不重复。请查找并返回元素target在该数组中的索引。…

栈Stack——递归替身?

对于Stack这个集合类,由类继承关系可知是Vector的子类,根据push入栈方法跟踪代码,可知Vector是一个线程安全的类(如果你用来储存大量数据,那可能不是一个好的选择)看到这里,显然可以得知Stack入栈出栈的大致原理,就是Vector的elementData对象数组,用来储存数据,入栈时…

煤矿反光衣穿戴识别系统

煤矿反光衣穿戴识别系统对视频监控画面开展实时识别分析,可以及时预警施工工地工作员是不是按照规定穿反光衣。当煤矿反光衣穿戴识别系统发现视频监控界面中有工作人员不穿反光衣时,系统会积极主动开启警报提示。工程师依据煤矿情景开展有目的的算法优化。本优化计算方法具有…

如何彻底关闭Win11自动更新?

如何彻底关闭Win11自动更新?https://www.disktool.cn/content-center/stop-windows-11-update-666.html1、“Win+R”调出运行,输入“services.msc”,回车打开服务。  2、找到“Windows update”,打开。  3、设置为“禁用”,然后点击“停止”。方案一:使用Windows设置…

释放静电行为监测识别系统

释放静电行为监测识别系统对烟花爆竹厂进入车间的入口处进行实时监测分析,当释放静电行为监测识别系统监测一部分员工进到车间之前并没有触摸静电释放仪,系统就会自动开启警报同时语音提醒工人触碰静电释放器释放静电,并把警报截屏和视频保存到下来生成表格,推送给有关人员…

监控视频行为分析系统

监控视频行为分析系统是可以通过利用现场监控摄像头传回的现场画面视频利用AI神经网络模型的人工优化算法分析识别人们运动轨迹,监控视频行为分析系统去识别监控摄像机拍摄到的各种人的异常行为,甚至很多行为识别规则大多数场景下都可以做到零误报。这大大降低了系统对硬件的…

洛谷题单指南-分治与倍增-P1966 [NOIP2013 提高组] 火柴排队

原题链接:https://www.luogu.com.cn/problem/P1966 题意解读:计算两个序列∑(ai​−bi​)^2的最小值,对10^8-3取模。 解题思路: 1、贪心思路 要使得两个序列对应位置元素之差的平方和最小,必须满足两个序列相对排序是一致的,什么意思? 设a序列有两个元素:a1,a2,b序列…

两款插件让浏览器起飞!

今天给大家分享两款最近在用的实用小插件~1.猫抓 一个用来帮我们嗅探下载网络上各种媒体资源的小插件 当我们浏览的网站有媒体文件时,插件就会自动嗅探视频资源。这时我们只需要点开插件页面,直接下载就好了。不单单是普通的媒体文件,遇见M3U8这种分段式格式,插件还会自动…

养老院视频监控分析系统

养老院视频监控分析系统24h不需要人员监控,对养老院360度及时高清视频监控,即时自动分析和识别养老院监控区域内的异常情况。一旦出现异常,养老院视频监控分析系统马上记录和储存,并把报警信息上传至综合服务平台。除此之外,依据智能视频分析,识别监控区域内的工作人员入…

值班人员睡岗离岗监控报警系统

值班人员睡岗离岗监控报警系统可持续24个小时对值班岗位开展智能化监控。目前,值班人员睡岗离岗监控报警系统识别工作员长时间保持不动的姿态,会被判定为睡岗,随后马上提醒睡岗工作人员。值班人员睡岗离岗监控报警系统同时保存前端分析视频证据并上传至后台,为后续的人工审…