Java学习者论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

恭喜Java学习者论坛(https://www.javaxxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,购买链接:点击进入购买VIP会员
JAVA高级面试进阶视频教程Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程

Go语言视频零基础入门到精通

Java架构师3期(课件+源码)

Java开发全终端实战租房项目视频教程

SpringBoot2.X入门到高级使用教程

大数据培训第六期全套视频教程

深度学习(CNN RNN GAN)算法原理

Java亿级流量电商系统视频教程

互联网架构师视频教程

年薪50万Spark2.0从入门到精通

年薪50万!人工智能学习路线教程

年薪50万!大数据从入门到精通学习路线年薪50万!机器学习入门到精通视频教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程 MySQL入门到精通教程
查看: 645|回复: 0

[默认分类] chmod 777修改权限指令介绍

[复制链接]
  • TA的每日心情
    开心
    2021-12-13 21:45
  • 签到天数: 15 天

    [LV.4]偶尔看看III

    发表于 2018-7-6 13:51:26 | 显示全部楼层 |阅读模式

    在Unix和Linux的各种操作系统下,每个文件(文件夹也被看作是文件)都按读、写、运行设定权限。


    例如我用ls -l命令列文件表时,得到如下输出:


    -rw-r--r-- 1 apple users 2254 2006-05-20 13:47 tt.htm


    从第二个字符起rw-是说用户apple有读、写权,没有运行权,接着的r--表示用户组users只有读权限,没有运行权,最后的r--指其他人 (others)只有读权限,没有写权和运行权。这是系统默认设置,我可以改写tt.htm,同组的人和其他人只有权读,没人有权运行,因为只是一个 HTML文件,不必运行。这在Novell的directory services之前很先进。


    读、写、运行三项权限可以用数字表示,就是r=4,w=2,x=1。所以,上面的例子中的rw-r--r--用数字表示成644。
    反过来说777就是rwxrwxrwx,意思是该登录用户(可以用命令id查看)、他所在的组和其他人都有最高权限。


    再多说一句。我用chmod o-r tt.htm命令改权限,o-r是others的权限中减掉读。结果是


    -rw-r----- 1 bu users 2254 2006-05-20 13:47 tt.htm


    如果用命令chmod 777 tt.htm,结果是


    -rwxrwxrwx 1 bu users 2254 2006-05-20 13:47 tt.htm


    任何人都有读、写、运行三项权限。
    ---------------------------------------------
    指令名称 : chmod

      使用权限 : 所有使用者
      使用方式 : chmod [-cfvR] [--help] [--version] mode file...
      说明 : Linux/Unix 的档案存取权限分为三级 : 档案拥有者、群组、其他。利用 chmod 可以藉以控制档案如何被他人所存取。

      参数格式 :

      mode : 权限设定字串,格式如下 : [ugoa...][[+-=][rwxX]...][,...],其中

      u : 表示该档案的拥有者,g 表示与该档案的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
      + :  表示增加权限、- 表示取消权限、= 表示唯一设定权限。
       r : 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该档案是个子目录或者该档案已经被设定过为可执行。 -c : 若该档案权限确实已经更改,才显示其更改动作
      -f : 若该档案权限无法被更改也不要显示错误讯息
      -v : 显示权限变更的详细资料
      -R : 对目前目录下的所有档案与子目录进行相同的权限变更(即以递回的方式逐个变更)
      --help : 显示辅助说明

      --version : 显示版本

      范例 :将档案 file1.txt 设为所有人皆可读取 :
      chmod ugo+r file1.txt

      将档案 file1.txt 设为所有人皆可读取 :
      chmod a+r file1.txt

      将档案 file1.txt 与 file2.txt 设为该档案拥有者,与其所属同一个群体者可写入,但其他以外的人则不可写入 :
      chmod ug+w,o-w file1.txt file2.txt

      将 ex1.py 设定为只有该档案拥有者可以执行 :
      chmod u+x ex1.py

      将目前目录下的所有档案与子目录皆设为任何人可读取 :
      chmod -R a+r *

      此外chmod也可以用数字来表示权限如 chmod 777 file

      语法为:chmod abc file

      其中a,b,c各为一个数字,分别表示User、Group、及Other的权限。

      r=4,w=2,x=1

      若要rwx属性则4+2+1=7;
      若要rw-属性则4+2=6;
      若要r-x属性则4+1=7。

      范例:
      chmod a=rwx file 和chmod 777 file效果相同

      chmod ug=rwx,o=x file和chmod 771 file效果相同

      若用chmod 4755 filename可使此程式具有root的权限
    回复

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    QQ|手机版|Java学习者论坛 ( 声明:本站资料整理自互联网,用于Java学习者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

    GMT+8, 2024-4-30 10:15 , Processed in 0.340458 second(s), 37 queries .

    Powered by Discuz! X3.4

    © 2001-2017 Comsenz Inc.

    快速回复 返回顶部 返回列表