linux下文件属性和权限

在Test目录下 输入 上面的命令,列出如上:

第一列X-XXX-XXX-XXX,这里显示的就是文件的权限。

w : 可写    r : 可读   x : 可执行

第二列的数字

连接着文件系统的i-node

第三列的firefox是文件持有的用户

第四列的firefox是文件持有的用户组

第五列是文件大小,单位是B

后面的比较简单,不介绍了。

对于第一列的第一个X (字符)代表这个文件是目录或者是文件或者是链接文件

[d]:目录  [-] : 文件  [l] : 链接文件

紧接着的XXX代表的是用户对文件操作的权限,接下来的XXX代表用户组对文件操作的权限,最后三个XXX是 others对文件操作的权限。

拿第一个 hello文件来说,第一个[-]代表是文件,用户的权限是rwx,表示用户可读可写可执行,而用户组也是rwx,但是对于others权限是可读可执行,不能写。

改变文件的持有者


chown命令将 File 参数指定的文件的所有者更改为 Owner 参数指定的用户。Owner 参数的值可以是可在 /etc/passwd 文件中找到的用户标识或登录名。还可以选择性地指定组。

-R : 改变目录下所有子目录用户持有者

只有 root 用户可以更改文件的所有者。只在您是 root 用户或拥有该文件的情况下才可以更改文件的组。如果拥有文件但不是 root 用户,则只可以将组更改为您是其成员的组。

输入以上命令后,看test.cpp文件的用户栏目(第三行),变成了root账户。

改变文件的用户组


chgrp 命令将与指定文件或目录相关联的组更改为指定组名或组标识号。Group 参数的值可以是可在 /etc/group 文件中找到的组标识或组名。

-R : 改变目录下所有子目录用户组

输入以上命令后,看main.cpp文件的用户组(第四行),变成了root账户。

修改文件的属性和权限


chmod命令来修改文件的读写执行属性。

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

上面的图就是表示 chmod命令的组合,比如

chmod u=rwx main.cpp //将 main.cpp文件的持有者权限设置成rwx

chmod a=rwx main.cpp //将 main.cpp文件所有用户权限设置成rwx

chmod g-w main.cpp  // //将 main.cpp文件的用户组权限的 w 取消

chmod u=r main.cpp  //将main.cpp文件的持有者权限设置成r--,不能读和执行

还有另一种改变权限的办法,在linux文件系统中规定

r : 4  w : 2 x : 1

rwx就是[4+2+1],rw-就是[4+2+0],-wx就是[0+2+1]

这样出现了下面的命令

chmod 707 main.cpp  //将main.cpp文件持有者设置成rwx,用户组为---,others设置成rwx

标签:Linux