指令名称 :
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 : 显示版本
范例 : shell
将档案 file1.txt 设为全部人皆可读取 :
chmod ugo+r file1.txt spa
将档案 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的权限 io
chmod 4755和chmod 755的区别
chmod是Linux下设置文件权限的命令,后面的数字表示不一样用户或用户组的权限。
通常是三个数字:
第一个数字表示文件全部者的权限
第二个数字表示与文件全部者同属一个用户组的其余用户的权限
第三个数字表示其它用户组的权限。
权限分为三种:
读(r=4),写(w=2),执行(x=1)。综合起来还有可读可执行(rx=5=4+1)、可读可写(rw=6=4+2)、可读可写可执行(rwx=7=4+2+1)。
因此,chmod 755 设置用户的权限为:
1.文件全部者可读可写可执行
2.与文件全部者同属一个用户组的其余用户可读可执行
3.其它用户组可读可执行
chmod 4755与chmod 755 的区别在于开头多了一位,这个4表示其余用户执行文件时,具备与全部者至关的权限。
例如:root用户建立了一个上网认证程序netlogin,若是其余用户要上网也要用到这个程序,那就须要root用户运行chmod 755 netlogin命令使其余用户也能运行netlogin。
可是netlogin执行时可能须要访问一些只有root用户才有权访问的文件,那么其余用户执行netlogin时可能由于权限不够仍是不能上网。
这种状况下,就能够用 chmod 4755 netlogin 设置其余用户在执行netlogin也有root用户的权限,从而顺利上网。
ps:对shell脚本设置无效!只对应用程序有效! file