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命令时要小心,以免不小心修改了文件的权限。
相关推荐
NiNg_1_23428 分钟前
使用Docker Compose一键部署
运维·docker·容器
萠哥啥都行33 分钟前
Linux安装Docker以及Docker入门操作
运维·docker·容器
王哲晓33 分钟前
Linux通过yum安装Docker
java·linux·docker
小江湖199439 分钟前
元数据保护者,Caesium压缩不丢重要信息
运维·学习·软件需求·改行学it
gopher95111 小时前
linux驱动开发-中断子系统
linux·运维·驱动开发
码哝小鱼1 小时前
firewalld封禁IP或IP段
linux·网络
鼠鼠龙年发大财1 小时前
【x**3专享】安装SSH、XFTP、XShell、ARM Linux
linux·arm开发·ssh
nfgo1 小时前
快速体验Linux发行版:DistroSea详解与操作指南
linux·ubuntu·centos
吃面不喝汤662 小时前
如何配置和使用自己的私有 Docker Registry
运维·docker·容器
Rookie_explorers2 小时前
Linux下go环境安装、环境配置并执行第一个go程序
linux·运维·golang