• Linux chmod命令


    chmod命令用来变更文件或目录的权限。在UNIX系统家族里,文件或目录权限的控制分别以读取、写入、执行3种一般权限来区分,另有3种特殊权限可供运用。用户可以使用chmod指令去变更文件与目录的权限,设置方式采用文字或数字代号皆可。符号连接的权限无法变更,如果用户对符号连接修改权限,其改变会作用在被连接的原始文件。

    权限范围的表示法如下:

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

    将文件 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 -a+rwx dir命令,会让所有用户拥有dir目录的最高权限,但dir目录内的文件权限不会改变。


    此外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=5。
    chmod a=rwx file

    =

    chmod 777 file


    chmod ug=rwx,o=x file

    =

    chmod 771 file 

    若用chmod 4755 filename可使此程序具有root的权限,chmod 4755chmod 755 的区别在于开头多了一位,这个4表示其他用户执行文件时,具有与所有者相当的权限。

    例如:root用户创建了一个上网认证程序netlogin,如果其他用户要上网也要用到这个程序,那就需要root用户运行chmod 755 netlogin命令使其他用户也能运行netlogin。

    但是netlogin执行时可能需要访问一些只有root用户才有权访问的文件,那么其他用户执行netlogin时可能因为权限不够还是不能上网。

    这种情况下,就可以用 chmod 4755 netlogin 设置其他用户在执行netlogin也有root用户的权限,从而顺利上网。

  • 相关阅读:
    没有功能需求文档就拒绝开发吗?
    用Spring cloud Stream来开发基于MQ消息驱动的微服务
    在Linux上讲Java命令行的作为服务运行
    EF提供的三种查询方式
    C#中sealed关键字
    winform Chart控件 获取鼠标处坐标值方法
    Linq to Entity中连接两个数据库时要注意的问题
    linq中查询列表的使用及iqueryable和list集合之间的转换
    C语言关键字register、extern、static
    DllImport的具体用法
  • 原文地址:https://www.cnblogs.com/doit8791/p/11495398.html
Copyright © 2020-2023  润新知