linux之chmod命令

在linux系统中经常遇到需要对文件修改读写执行的权限,下面对chomod命令进行梳理总结。

1、文件权限

在linux系统中,每个文件都有归属的所有者和所有组,并且规定了文件的所有者、以及其他人对文件所拥有的可读(r)、可写(w)、可执行(x)等权限。

对于一般文件来说,权限比较容易理解:"可读"表示能够读取文件的实际内容;"可写"表示能够编辑、新增、修改、删除文件的实际内容;"可执行"则表示能够运行一个脚本程序。

对于目录文件来说,"可读"表示能够读取目录内的文件列表;"可写"表示能够在目录内新增、删除、重命名文件;而"可执行"则表示能够进入该目录。

文件的普通权限

通过 ll 命令查看文件的详细信息

第一个字符信息就是文件的类型,这个文件类型有(d)目录文件、(-)普通文件、(p)管道文件、(c)字符设备文件、(b)块设备文件、(l)链接文件等等。

文件的普通权限有r(read 读 )、w(write 写)、x(execute 执行)权限。

除了第一个文件类型,一共有9个空位是用来显示文件的权限,分成三个,文件所有者(user)、所有组(group)、其他人(other)、还有一个是所有人(all),包括前面三个的意思。

在linux中,系统只认识二进制(0/1)的内容,那么读写执行是怎么转化成我们认识的权限,实际上,我们能看到的读写执行是八进制(0-7)显示的。

2、chmod命令

chmod命令来自于英文词组"change mode"的缩写,其功能适用于改变文件或者目录权限的命令。默认只有文件的所有者和管理员可以设置文件权限,普通用户只能管理自己的文件的权限属性。

设置权限时可以使用数字法,亦可使用字母表达式,对于目录文件建议加入-R参数进行递归操作,意味着不仅对于目录本身,也对目录内的子文件/目录进行新权限的设定。

chmod命令的常用参数如下:

  • -c 若该文件权限确实已经更改,才显示其更改动作
  • -f 若该文件权限无法被更改也不显示错误讯息
  • -v 显示权限变更的详细资料
  • -R 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)

3、修改权限实例

1)文件所有者拥有读写执行权限,所有者、其他用户无权限

chmod 700 test.txt

2)目录拥有满权限

chmod -R 777 test/

3)给一个文件添加可执行权限

chmod +x test.txt

4、注意事项

  • 添加可执行权限是一项有风险的操作,因为可执行文件可能包含恶意代码。确保只将可执行权限添加到受信任的文件上。
  • 要执行chmod命令,您通常需要具有文件的所有者或超级用户权限。
  • 使用chmod命令时要小心,以免不小心修改了文件的权限。
相关推荐
琥珀色糖2 分钟前
Linux守护进程
linux·终端·守护进程·会话·进程组
鹤落晴春7 分钟前
有状态应用 vs 无状态应用
运维·云原生·k8s
starzy19902 小时前
虚拟化解决方案全景:软件虚拟化、硬件虚拟化与 Docker 的位置
运维·docker·容器
Neighbor_OldY3 小时前
云上安全配置审计与误配置修复实战:从安全组、OSS、RAM到数据库的全栈排查复盘
大数据·运维·安全·云计算
开心大爆炸4 小时前
xrdp 连接 登录对话框输入密码后闪退
linux·运维·服务器
oushaojun24 小时前
大厂 C++ 面试:深度剖析 Linux Signal 信号机制(转)
linux
苏生Susheng5 小时前
【软件实施】Linux系统Shell脚本教程
linux·运维·服务器·chrome·spring boot·学习·实施
2601_962304915 小时前
把出片接进自动化流水线:2026 年批量 AI 视频生成工具的脚本契约与同类项目对照
运维·人工智能·自动化
Ruiery5 小时前
Linux 6.6内核 IOMMU 深度解析(七):DMA API 与 IOMMU 集成 — 从 dma_map_single 到 iommu_map
linux·运维·服务器
分支预测失败5 小时前
RISC-V AIA 中断架构实战:从 PLIC 到 APLIC 与 IMSIC 的迁移
linux·后端