学习记录linux命令,参考自菜鸟教程。


命令:chmod

	Linux/Unix 的文件调用权限分为三级 : 文件拥有者、群组、其他。利用 chmod 可以藉以控制文件如何被他人所调用。

使用权限 :

	所有使用者

语法格式

	chmod [-cfvR] [--help] [--version] mode file...

参数说明:

mode : 权限设定字串,格式如下 :

    [ugoa...][[+-=][rwxX]...][,...]

其中:

	u 表示该文件的拥有者,g 表示与该文件的拥有者属于同一个群体(group)者,o 表示其他以外的人,a 表示这三者皆是。
	+ 表示增加权限、- 表示取消权限、= 表示唯一设定权限。
	r 表示可读取,w 表示可写入,x 表示可执行,X 表示只有当该文件是个子目录或者该文件已经被设定过为可执行。

其他参数说明:

	-c : 若该文件权限确实已经更改,才显示其更改动作
	-f : 若该文件权限无法被更改也不要显示错误讯息
	-v : 显示权限变更的详细资料
	-R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递回的方式逐个变更)
	--help : 显示辅助说明
	--version : 显示版本

实例:

将文件 file1.txt 设为所有人皆可读取 :

	chmod a+r file1.txt

此外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 filechmod 777 file 效果相同
chmod ug=rwx,o=x filechmod 771 file效果相同
若用chmod 4755 file可使此程序具有root的权限

*注:

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

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

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

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

Logo

更多推荐