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命令时要小心,以免不小心修改了文件的权限。
相关推荐
hunter2062062 小时前
ubuntu向一个pc主机通过web发送数据,pc端通过工具直接查看收到的数据
linux·前端·ubuntu
不会飞的小龙人2 小时前
Docker Compose创建镜像服务
linux·运维·docker·容器·镜像
不会飞的小龙人2 小时前
Docker基础安装与使用
linux·运维·docker·容器
白粥行4 小时前
linux-ubuntu学习笔记碎记
linux·ubuntu
jerry-894 小时前
通过配置核查,CentOS操作系统当前无多余的、过期的账户;但CentOS操作系统存在共享账户r***t
linux
小歆8844 小时前
100%全国产化时钟服务器、全国产化校时服务器、全国产化授时服务器
运维·服务器
涛ing5 小时前
21. C语言 `typedef`:类型重命名
linux·c语言·开发语言·c++·vscode·算法·visual studio
翻滚吧键盘5 小时前
debian中apt的配置与解析
运维·debian
0xfather5 小时前
在Debian系统中安装Debian(Linux版PE装机)
linux·服务器·debian
workingman_li5 小时前
centos虚拟机异常关闭,导致数据出现问题
linux·运维·centos