00. 目录

文章目录

  • 00. 目录
  • 01. 命令概述
  • 02. 命令格式
  • 03. 常用选项
  • 04. 参考示例
  • 05. 总结
  • 06. 附录

01. 命令概述

chmod - 改变文件的访问权限

chmod命令的英文原意是“change the permissions mode of a file”,我们简称为“change mode”,意为用来改变文件或目录权限的命令,但是只有文件的属主和超级用户root才能执行这个命令。有两种模式,一种是采用权限字母和操作符表达式;另一种是采用数字。

文件十个字符意义如下图所示

权限进制表示

rwx对文件意义如下:

r:可以使用内容查看类的命令来显示文件相关内容

w: 可以使用编辑器修改文件内容,但需要配置r权限一起使用

x:可以将文件发起一个进程进行执行

rwx对目录意义如下:

r:可以使用ls命令查看目录内容的文件信息,但使用cd切换不了其它目录

w:可以创建、删除目录里的文件,也可以删除当前目录,但需要配合rx两个权限一起使用

x:可以使用ls -l命令来查看目录内容的文件信息,并且可以使用cd命令切换此目录为工作目录,但需配合r权限一起使用

权限范围的表示法如下

u User,即文件或目录的拥有者;
g Group,即文件或目录的所属群组;
o Other,除了文件或目录拥有者或所属群组之外,其他用户皆属于这个范围;
a All,即全部的用户,包含拥有者,所属群组以及其他用户;
r 读取权限,数字代号为“4”;
w 写入权限,数字代号为“2”;
x 执行或切换权限,数字代号为“1”;
- 不具任何权限,数字代号为“0”;
s 特殊功能说明:变更文件或目录的权限。

权限设定

  • 增加权限
  • 取消权限 =
  • 唯一设定权限

02. 命令格式

用法:chmod [选项]... 模式[,模式]... 文件...或:chmod [选项]... 八进制模式 文件...或:chmod [选项]... --reference=参考文件 文件...

03. 常用选项

将每个文件的模式更改为指定值。-c, --changes         类似 --verbose,但只在有更改时才显示结果--no-preserve-root        不特殊对待根目录(默认)--preserve-root           禁止对根目录进行递归操作-f, --silent, --quiet 去除大部份的错误信息-v, --verbose         为处理的所有文件显示诊断信息--reference=参考文件      使用指定参考文件的模式,而非自行指定权限模式-R, --recursive               以递归方式更改所有的文件及子目录--help            显示此帮助信息并退出--version         显示版本信息并退出每种 MODE 都应属于这类形式"[ugoa]*([-+=]([rwxXst]*|[ugo]))+"。

04. 参考示例

4.1 全部用户增加读权限

[deng@itcast test]$ chmod a+r file
[deng@itcast test]$ ls -l file
-rw-rw-r-- 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$ #或者
[deng@itcast test]$ chmod  ugo+r file

4.2 所有用户减去读权限

[deng@itcast test]$ chmod ugo-r file
[deng@itcast test]$ ls -l file
--w--w---- 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$ #或者
[deng@itcast test]$ chmod a-r file

4.3 文件所属者和所属组增加读写权限

[deng@itcast test]$ chmod ug+rw file
[deng@itcast test]$ ls -l file
-rw-rw---- 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$

4.4 文件其它设置权限为rw

[deng@itcast test]$ chmod o=rw file
[deng@itcast test]$ ls -l file
-rw-rw-rw- 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$

4.5 文件所属组设置权限为rwx,所属组设置为rw,其它设置为r

[deng@itcast test]$ chmod u=rwx,g=rw,o=r file
[deng@itcast test]$ ls -l file
-rwxrw-r-- 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$

4.6 文件所属者和所属组追加写,其它撤销写权限

[deng@itcast test]$ chmod ug+w,o-w file
[deng@itcast test]$ ls -l file
-rwxrw-r-- 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$

4.7 文件所属者增加可执行权限

[deng@itcast test]$ chmod  u+x file
[deng@itcast test]$ ls -l file
-rwxrw-r-- 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$

4.8 递归将test目录下所有的文件和目录追加读权限

[deng@itcast test]$ chmod -R a+r test/

4.9 文件所有用户撤销执行权限

[deng@itcast test]$ chmod a-x file

4.10 所有人追加可执行权限

[deng@itcast test]$ chmod +x file
[deng@itcast test]$ ls -l file
-rwxrwxr-x 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$ #等价于
[deng@itcast test]$ chmod a+x file

4.11 设置文件所属者读写,所属组和其它读权限

[deng@itcast test]$ chmod 644 file
[deng@itcast test]$ ls -l file
-rw-r--r-- 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$

4.12 将所有用户设置为只读权限

[deng@itcast test]$ chmod 444 file
[deng@itcast test]$ ls -l file
-r--r--r-- 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$

等价于

[deng@itcast test]$ chmod a-wx,a+r file
[deng@itcast test]$ ls -l file
-r--r--r-- 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$

4.13 将所有的用户设置为只读权限

[deng@itcast test]$ chmod =r file
[deng@itcast test]$ ls -l file
-r--r--r-- 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$

4.14 文件所属者读写执行权限,文件所属组读和执行权限,文件其它执行权限

[deng@itcast test]$ chmod 751 file
[deng@itcast test]$ ls -l file
-rwxr-x--x 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$

等价于

[deng@itcast test]$ chmod u=rwx,g=rx,o=x file
[deng@itcast test]$ ls -l file
-rwxr-x--x 1 deng deng 0 8月   6 20:06 file
[deng@itcast test]$

05. 总结

06. 附录

参考:【Linux】一步一步学Linux系列教程汇总

【Linux】一步一步学Linux——chmod命令(110)相关推荐

  1. 学linux作用,linux有必要学吗?学linux有什么作用,学linux能干什么

    Linux是一种自由和开放源码的类UNIX操作系统.Linux有必要学吗?学Linux有什么作用,学Linux能干什么?Linux最大的作用就是提高效率.当你习惯在Linux命令行下工作,再回到win ...

  2. LINUX学习之路(学LINUX必看)

    很多同学接触Linux不多,对Linux平台的开发更是一无所知.而现在的趋势越来越表明,作为一 个优秀的软件开发人员,或计算机IT行业从业人员,掌握Linux是一种很重要的谋生资源与手段.下来我将会结 ...

  3. linux学习需要什么基础,学linux需要什么基础?

    近几年来,随着计算机网络的发展,越来越多的人学习 linux.对于想要从事运维工作或者从事智能开发方面的同学来说,学习 linux 是必要的.linux 的学习并不简单,那么这篇文章 w3cschoo ...

  4. 分享--linux 学习之路(学linux必看)

    很多同学接触Linux不多,对Linux平台的开发更是一无所知. 而现在的趋势越来越表明,作为一个优秀的软件开发人员,或计算机IT行业从业人员, 掌握Linux是一种很重要的谋生资源与手段. 下来我将 ...

  5. 英语不好学linux运维难吗,学Linux系统难吗?学好Linux运维需要多久

    随着近年来经济的快速发展,企业对Linux人才的需求也越来越高.许多人认为,Linux是一个非常简单的行业,然而,Linux行业是一个综合了云计算.Linux运维.Linux开发.Linux编程等多方 ...

  6. 不会linux的php难找工作,学linux系统难吗

    这是 Linux初学者经常会问的问题,其实Linux和Windows一样都属于操作系统,对于大部分人来说,对Windows操作系统十分熟悉,而对Linux操作系统没有使用过,所以觉得很难,其实,只要熟 ...

  7. linux lamp实验报告,新手学Linux--构建lamp

    本人前不久开始学习Linux,俗话说得好,好记性不如烂笔头,于是决定将平日所学所做实验,记录下来,以备回顾.由于本人是个初学者,所以借鉴了很多网上的资料,但在此处写出来的都是经过本人思考和多次实验的记 ...

  8. linux中文件权限 组,linux中文件权限格式与chmod命令以及用户和用户组的管理

    简单了解一下linux中的文件权限格式与chmod命令 chmod命令:改变文件或者目录的权限 格式:chmod [参数] [] -R 或者--recursive 递归处理,表示将指定目录下的所有文件 ...

  9. Linux其实没那么难学

    互联网技术总是更新迭代的,因为2020年的一场疫情,影响着中国乃至整个世界,就在这一年,网络直播,远程办公,在线教育等等的互联网产物进入了众多人的世界,当然,这其中离不开程序员的功劳. 李开复曾经说过 ...

最新文章

  1. 比特币现金网络会看到什么样的代币?
  2. streaming优化:spark.default.parallelism调整处理并行度
  3. 我的CSDN_Blog激活啦~~
  4. 主动找智能钥匙 PKE取代RKE是大势所趋
  5. centos安装nginx,配置负载均衡
  6. roads 用户体验标准_全球领先技术加持,联发科 天玑1000+刷新5G用户体验新标准...
  7. phoenix表操作
  8. Future 接口介绍
  9. SQLServer之创建Transact-SQL DDL触发器
  10. 心理学与生活 - 发展与教育
  11. 【干货】交换机网络故障排除
  12. guid主分区表损坏如何处理_GUID分区表简介
  13. php css抽离,webpack4 单独抽离打包 css 的新实现
  14. 火狐下载文件名乱码问题
  15. 关于pingpp(招行一网通)-混淆
  16. elaticsear学习常见错误
  17. Zookeeper客户端Curator使用
  18. android实现从耳机和自带麦克风,android插上耳机的时候仍然使用机身的麦克风录音,解决!...
  19. SECOND: Sparsely Embedded Convolutional Detection
  20. java基于微信小程序的共享单车电动车租赁系统 uniapp 小程序

热门文章

  1. C#使用BackgroundWorker实现多线程
  2. flash中Stage,stage,root和this的区别用法
  3. 16、Windows API 服务
  4. GridPanel的一些小技巧
  5. ISAPI_Rewrite规则
  6. percona toolkit for mysql_Percona Toolkit for MySQL安装(CentOS5.8) | 学步园
  7. 解决方案和项目的区别_沃尔玛用大数据提高销售额,云计算和大数据技术之间的区别汇总...
  8. 如何在服务器上运行python程序_在服务器上配置运行(每天一则段子python程序)...
  9. Java黑皮书课后题第6章:*6.39(几何:点的位置)编程练习题3.32显示如何测试一个点是否在一个有向直线的左侧、右侧或在直线上,编写一个程序,输入三个点p0p1p2,显示p2是否在直线p0p1
  10. Java黑皮书课后题第3章:*3.17(游戏:剪刀、石头、布)编写可以玩流行的剪刀-石头-布游戏的程序