linux chmod修改文件权限权限代码的含义是什么?

一、chmod命令chmod(change mode)命令是用于控制用户对文件的权限的命令。Linux/Unix 的文件调用权限分为三级 : 文件所有者(Owner)、用户组(Group)、其它用户(Other Users)如下:只有文件所有者和超级用户可以修改文件或目录的权限。可以使用绝对模式(八进制数字模式),符号模式指定文件的权限,而使用权限则为所有使用者。符号模式与绝对模式的关系如下:二、命令的使用1.命令语法通过man chmod可知:NAME
chmod - change file mode bits
SYNOPSIS
chmod [OPTION]... MODE[,MODE]... FILE...
chmod [OPTION]... OCTAL-MODE FILE...
chmod [OPTION]... --reference=RFILE FILE...
2.符号模式使用符号模式可以设置多个项目:who(用户类型),operator(操作符)和 permission(权限),每个项目的设置可以用逗号隔开。 命令 chmod 将修改 who 指定的用户类型对文件的访问权限,用户类型由一个或者多个字母在 who 的位置来说明:用户类型参数:who用户类型说明uuser文件所有者ggroup文件所有者所在组oothers所有其他用户aall所有用户,和ugo使用一样操作符参数:Operator说明+为指定的用户类型增加权限-为指定的用户类型去除权限=直接重置用户类型的所有权限符号模式参数:Permission名字说明r读设置为可读权限w写设置为可写权限x执行权限设置为可执行权限X特殊执行权限只有当文件为目录文件,或者其他类型的用户有可执行权限时,才将文件权限设置可执行ssetuid/gid当文件被执行时,根据who参数指定的用户类型设置文件的setuid或者setgid权限t粘贴位设置粘贴位,只有超级用户可以设置该位,只有文件所有者u可以使用该位举例:chmod a=rwx file//表示所有用户都可读写执行
chmod a+r file//表示给所有用户加上可读权限
chmod ugo+r file//与a+r的相同
chmod u+x file//表示给文件所有者加上执行权限
3.八进制语法chmod命令可以使用八进制数来指定权限。文件或目录的权限位是由9个权限位来控制,每三位为一组,它们分别是文件所有者(User)的读、写、执行,用户组(Group)的读、写、执行以及其它用户(Other)的读、写、执行。历史上,文件权限被放在一个比特掩码中,掩码中指定的比特位设为1,用来说明一个类具有相应的优先级。num权限对应符号二进制7读 + 写 + 执行rwx1116读 + 写rw-1105读 + 执行r-x1014只读r–1003写 + 执行-wx0112只写-w-0101只执行–x0010无—000举例:语法为:chmod abc file
其中a,b,c各为一个数字,分别表示User、Group、及Other的权限,然后rwx分别对应421,若要rwx属性则为4+2+1=7,rw-则为4+2=6等等。chmod 777 file//表示User、Group、及Other的权限都设为rwx
chmod 764 file//表示User、Group、及Other的权限分别为rwx、rw-、r--
4.其他参数man手册中可见:OPTIONS
Change the mode of each FILE to MODE.
With --reference, change the mode of each FILE to that of RFILE.
-c, --changes
like verbose but report only when a change is made
-f, --silent, --quiet
suppress most error messages
-v, --verbose
output a diagnostic for every file processed
--no-preserve-root
do not treat '/' specially (the default)
--preserve-root
fail to operate recursively on '/'
--reference=RFILE
use RFILE's mode instead of MODE values
-R, --recursive
change files and directories recursively
--help display this help and exit
--version
output version information and exit
-c : 若该文件权限确实已经更改,才显示其更改动作-f : 若该文件权限无法被更改也不要显示错误讯息-v : 显示权限变更的详细资料-R : 对目前目录下的所有文件与子目录进行相同的权限变更(即以递归的方式逐个变更)–help : 显示辅助说明–version : 显示版本三、命令实例交叉编译时赋予可执行代码执行的权限的实例:交叉编译后的hello可执行文件如下:然后我们通过tftp服务器下载到开发板中,赋予所有用户可执行的指令,执行我们交叉编译好的文件即可:tftp服务器搭建可见:TFTP服务器搭建与使用

我要回帖

更多关于 chmod修改文件权限 的文章