• Linux中的权限管理命令-chmod


    命令名称:chmod

    英文原意:change the permissions mode of a file

    执行权限:所有用户

    语法:chmod [{ugoa}{+-=}{rwx}][文件或目录]

           [mode=421][文件或目录]

           -R 递归修改

    功能:修改目录或文件的权限

    u:user(所有者)  g:group(所属组)  o:other(其他人)  a:all(所有人)  r:read(读)  w:write(写)  x:execute(执行)

     

    如上图所示,对于文件test.txt,文件所有者有读写权限,文件所属组和其他人就很只有读的权限。

    假如现在修改文件的权限,修改为所有者只有读的权限,所属组有读和写的权限,其他人什么权限都没有。

    一般写法:输入chmod u-w,g+x,o-r test.txt

    日常写法:chmod 460 test.txt

    在linux权限管理中,r对应4,w对应2,x对应1,所以460=r-- + rw- + --- =4+(4+2)+0=460

    假如现在再次修改权限,让所有用人都有执行权限

    chmod a+x test.txt 或 chmod 571 test.txt

    选项-R实际上是递归修改权限,如:我们用mkdir -p /tmp/a/b 在目录/tmp下递归创建a目录,并在a目录下创建b目录,然后再目录b下创建目录c和文件c.txt,那么这个时候来查看目录a,b的权限,两个目录的权限是一样的

    那么现在将目录a的权限设为777,然后观察目录a,b的权限情况,可以看出目录a的权限改为777了,不过目录b并没有改变,想要在同时修改目录a和目录a下的所有目录和文件的权限是,就得用到-R来递归修改权限。

    输入:chmod -R 777 /tmp/a  ,结果可以看到,目录a包括目录a下的所有文件或目录的权限都变为777了。

    注意点:rwx对于文件和目录来说有不同的含义

    举个例子:验证root用户创建的普通文件,普通用户能不能删除?答案是肯定的

     

    之所以普通用户能删除root用户创建的文件,是因为文件test.txt所在的目录的权限为777,也就是说目录/temp对于用户grid来说,是可写的,所以能删除掉文件test.txt.

    切记:删除一个权限的前提条件是对文件所在的目录有写权限。删除一个文件的前提条件不是对这个文件有写权限,对文件有写权限只能修改文件的内容。

  • 相关阅读:
    Lazarus中system.length说明
    Lazarus中TScreen类使用介绍
    Delphi深度探索-CodeSite应用指南
    Lazarus如何变成XE的界面
    Lazarus IDE的几个小技术
    Delphi结构体数组指针的问题
    delphi动态数组指针问题
    delphi 数组类型与数组指针的巧妙利用
    Delphi Form的释放和隐藏:free,hide,close
    Delphi 记录类型- 结构指针
  • 原文地址:https://www.cnblogs.com/linyuhuan/p/4129684.html
Copyright © 2020-2023  润新知