chmod命令及其用法

来源:互联网 发布:手机直播平台系统源码 编辑:程序博客网 时间:2024/04/28 02:36

在linux中,chmod命令是用来改变文件或目录的访问权限。该函数原型如下

#include<sys/stat.h>

int chmod(const char *path,mode_t mode);

path参数指定的文件被修改为具有mode参数给出的访问权限。参数mode的定义类似于open系统调用中的用法,也是对所要示的访问权限进行按位OR操作。除非给予程序适当的特权,否则只有文件的属主或超级用户可以修改它的权限。权限范围的表示法如下:

      u:User,即文件或目录的拥有者。

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

刚开始使用chmod这个命令时,凡是遇到没有执行权限或读写权限的的文件,我全用chmod 777 sample.sh(读、写、执行权限的数字代号加起来和为7,意思是给ugo,三个属主都赋予了读写执行权限),其实这个习惯不好,权限应该只分配给需要的用户。比如当前用户为kxc,要将sample.sh文件放入/usr/local/bin/文件夹中,而这个文件夹的拥有者是root用户,对这个文件夹只有读权限,没有写的权限,那么先将用户切换为root,然后chmod u+w /usr/local/bin/即可。若要剥夺其它用户的执行权限,chmod o-x sample.py即可。“+”代表增加某个权限,“-”代表去掉某个权限。也可以同时用如:chmod o-x,u+x sample.py,还可以这样以赋值的方式:chmod u = wrw sample.py.比起数字,这样的用法更加清晰明了。

限,

原创粉丝点击