Chmod命令主要用于修改、设置文件权限

chmod 修改文件权限主要有两种方式: 字母法与数字法

虽然数字法相对字母法简单,但是数字法是基于字母法,所以这里先介绍字母法。

1、字母法:chmod  (u g o a)   (+ - =)   (r w x)   (文件名)

以上是chmod的用法,每个括号是一个参数, 前三个括号主要放在一起使用即 chmod + 设置模式 + 文件名;下面先介绍这些参数的意义:

[u g o a] 含义
u user 表示该文件的所有者
g group 表示与该文件的所有者属于同一组( group )者,即用户组
o other 表示其它用户组
a all 表示这三者皆是
[+  -  =] 含义
+ 增加权限
- 撤销权限
= 设定权限
[r   w   x] 含义
r read 表示可读取,对于一个目录,如果没有r权限,那么就意味着不能通过ls查看这个目录的内容。
w write 表示可写入,对于一个目录,如果没有w权限,那么就意味着不能在目录下创建新的文件。
x excute 表示可执行,对于一个目录,如果没有x权限,那么就意味着不能通过cd进入这个目录。

用法:chmod + 设置模式 + 文件名
中间的设置模式,要分别对u(user), g(group), o(other)设置权限。

chmod u+rwx, g+rwx, o+rwx filename 改命令说明对filename文件, 赋予user、group、other均有read、write、excute的权限

所以设置模式中应该包含对三种用户类型的权限设置,各自独立,互不影响。

举例说明:

chmod u+rw filename   说明对于filname, 只赋予user用户, read、write权限
chmod u+rwx, g+rw  filename  说明对filename,赋予user用户read、write、excute权限;赋予group用户read、write权限

注意:(chmod + 设置模式 + 文件名)    设置模式中包含对三种类型用户(u、g、o)的权限设置,这三者各自独立,互不干扰。

2、数字法

数字法是基于字母法的表示,如果字母法懂了,数字法就好懂,并且易于使用。

用法:chmod + 数字组合 + 文件名
数字组合一般包含三个数字:

第一个数字对应字母法的用户u(user)

第二个数字对应字母法的用户g(group)

第三个数字对应字母法的用户o(other)

另外:

r  (read)     ---------------->   4

w (write)    ---------------->   2

x (excute)  ---------------->   1

示例详解:

数字法:chmod  777   文件名   <-----------对应-------------->    字母法: chmod u+rwx, g+rwx, o+rwx  文件名

第一个数字7:代表用户 u 的权限 rwx, 4 (r) + 2 (w) + 1 (x) =  7

第二个数字7:代表用户 g 的权限 rwx,    4 (r) + 2 (w) + 1 (x) =  7

第三个数字7:代表用户 o 的权限 rwx,    4 (r) + 2 (w) + 1 (x) =  7

举例说明:

数字法:chmod  755 filename    对应    字母法: chmod u+rwx, g+rx, o+rx filename
数字法:chmod  751 filename    对应    字母法: chmod u+rwx, g+rx, o+x  filename
数字法:chmod  765 filename    对应    字母法: chmod u+rwx, g+rw, o+rx filename

经过以上介绍,应该对于chmod的用法明白了。

附录 —— chmod 数字法另一种解释:
刚才上面的解释是基于求和的方法,下面用二进制的方法进行解释数字法表示:
r  w  x 权限用用三位二进制数字表示:
第一位数字(0或1)表示 r, 为1表示有效, 0无效
第二位数字 (0或1) 表示 w, 为1表示有效,0无效
第三位数字 (0或1) 表示 x, 为1表示有效, 0无效
000  <--------------------->    无任何权限
100  <--------------------->    r(read)      <-----> 4
010  <--------------------->    w(write)    <-----> 2
001 <---------------------->    x(excute)  <---->  1
101 <---------------------->    rx              <---->  5
110 <---------------------->    rw             <---->  6
111 <---------------------->    rwx           <-----> 7

参考资料:
http://www.cnblogs.com/loaderman/p/6547609.html
http://blog.csdn.net/leilu2008/article/details/8507037
http://blog.chinaunix.net/uid-21880738-id-1813031.html
http://www.cnblogs.com/chengJAVA/p/4319420.html
https://zhidao.baidu.com/question/168415347.html

chmod命令原理及用法详解相关推荐

  1. chmod命令原理及用法详解(转)

    Chmod命令主要用于修改.设置文件权限 chmod 修改文件权限主要有两种方式: 字母法与数字法 虽然数字法相对字母法简单,但是数字法是基于字母法,所以这里先介绍字母法. 1.字母法:chmod   ...

  2. linux chmod命令参数及用法详解

    使用权限 : 所有使用者 使用方式 : chmod [-cfvR] [--help] [--version] mode file 说明 : Linux/Unix 的档案存取权限分为三级 : 档案拥有者 ...

  3. linux chmod命令参数及用法详解--文件文件夹权限设定命令

    使用方式 : chmod [-cfvR] [--help] [--version] mode file... 说明 : Linux/Unix 的档案存取权限分为三级 : 档案拥有者.群组.其他.利用 ...

  4. python字符串strip的作用_Python字符串函数strip()原理及用法详解

    Python字符串函数strip()原理及用法详解 strip:用于移除字符串头尾指定的字符(默认为空格)或字符序列.注意:该方法只能删除开头或是结尾的字符,不能删除中间部分的字符. 语法:str.s ...

  5. python的编程模式-Python设计模式之状态模式原理与用法详解

    本文实例讲述了Python设计模式之状态模式原理与用法.分享给大家供大家参考,具体如下: 状态模式(State Pattern):当一个对象的内在状态改变时允许改变其行为,这个对象看起来像是改变了其类 ...

  6. linux mount命令参数及用法详解

    linux mount命令参数及用法详解 非原创,主要来自 http://www.360doc.com/content/13/0608/14/12600778_291501907.shtml. htt ...

  7. linux useradd(adduser)命令参数及用法详解(linux创建新用户命令)

    linux useradd(adduser)命令参数及用法详解(linux创建新用户命令) useradd可用来建立用户帐号.帐号建好之后,再用passwd设定帐号的密码.而可用userdel删除帐号 ...

  8. linux中group命令详解,linux groupmod命令参数及用法详解

    需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作.接下来是小编为大家收集的linux groupmod命令参数及用法详解,希望能帮到大家. linux groupmod命令参数及用 ...

  9. linux的usermod命令参数,linux usermod命令参数及用法详解

    linuxusermod命令参数及用法详解,linux修改用户账号信息命令,usermod可用来修改用户帐号的各项设定.接下来是小编为大家收集的linux usermod命令参数及用法详解,欢迎大家阅 ...

最新文章

  1. pythonsqlite3教程_使用 Python 在线操作 sqlite3
  2. (转)DOS批处理的字符串功能
  3. Fedora 10初体验
  4. 第二章--电商设计表
  5. [转载]Qt之自定义界面(二)添加最小化、关闭按钮、添加背景
  6. 互联网秒杀业务架构设计
  7. flume学习(三):Flume Interceptors的使用
  8. linux 打包qt可执行文件
  9. C# 纯真数据库读取
  10. local class incompatible: stream classdesc serialVersionUID = -4601057296962918535, local class seri
  11. 会员积分系统的四大元素
  12. 3ds Max小白入门小案例|旋转楼梯
  13. es---elasticsearch-篇二:idea操作es,常用查询DSL
  14. QData QPair的组合使用例子一
  15. node.js版本不同,跑不起项目(个人笔记)
  16. HTML绘制小房子,简笔画教程怎么画小房子
  17. 如何应用SPSS的频率分析,分析数值分布规律
  18. 基于dlib库进行微笑识别和口罩识别
  19. 一个程序员老总的年终总结2010版
  20. SK6805MICRO-2427RGB灯珠 2427RGB内置IC灯珠 适用显示领域、智能应用、蓝牙WiFi装饰

热门文章

  1. 解读|TARS开源项目发布Go语言版本 1
  2. loadrunner使用sitescope监测监控mysql数据库
  3. python求2数之和
  4. 【转】Eclipse启动之后卡顿,CPU占用率接近100%
  5. IT人士必去的10个网站 .
  6. NCQ与TCQ的区别及测试比较
  7. APP——功耗测试(耗电测试)——adb命令简单获取分析
  8. 系统设计 架构设计 画图工具 架构图 设计图
  9. 一些好用的 alias 命令
  10. micropython RX8025T 驱动简单演示