Linux 文件属性

Linux做最突出的地方之一是它的多用户、多任务环境。这一点的最重要的出发点就是安全机制。先看下例:

场景:公司里有两个项目组:小组A和小组B。为了保密起见,小组内的进度、文档、程序都有小组内公开。比如小组A中,小组内的成员可以相互查看彼此的文件,但是小组内成 员都有自己的抽屉,里面有自己的隐私文件,不允许是看不了的(抽屉锁着)。小组B里的人相对于小组A来说是其他人。如果没进过小组成员的同意,是看不到A、B或C的资料的。这里边有个执掌大权的boss,他拥有无所不能的权利(包括查看用户的抽屉)。

这就是Linux用户及用户组的现实写照。

用户:A、B、C、甲、乙都是用户,就是主体

用户组:有一个或多个用户组成的

其他人:小组B内的成员甲、乙相对于A组的成员就是其他人;反之亦是。

查看下文件的属性(7个):ls -al  

               1                  2         3           4                  5                      6                     7

         权限                        连接      拥有者         用户组        文件大小          文件最近修改时间          文件名

重点看下属性1:

   文件类型:-,文件     d,目录     l,链接文件    b,块设备文件(硬盘)  c,字符设备文件(键盘)

   示例:drwxr-xr-x文件名为目录(d),该目录拥有者具有读写执行权限,该组的其他成员具有读和执行的权限,其他用户具有读和执行权限

更改文件属性:

  • 更改文件所属用户组:chgrp [-R]  组名  文件名——-R(针对目录)是递归的把目录下的文件、目录全部改变为目标权限。change group
  • 更改文件所属拥有者:chown 拥有者 文件名——change owner
  • 更改属性(后9个):chmod 属性 文件名

  注意:参数 -R  递归的改变目录下的所有文件

   例如:

  1. 改变文件文件hello的所属组为hel:  chgrp hel hello
  2. 改变文件hello的拥有者为user1: chown hello user1
  3. 改变文件hello的属性为拥有者"可读可写可执行”,组内其他成员为“可读可写”,其他人为“可读”:chmod  rwxrwxrw-r-- helo

    (3中)此时的权限也可以用数字表示。具体为:

  • r:4
  • w:2
  • x:1

    这样上面(4+2+1 4+2 4)也可以这样表示:chmod 764 helo

可读可写可执行对于文件来说没有什么疑义,但是针对目录来说就有很大的不同。

目录属性的意义:

r——(read the contens of the directory)表示可以读取目录结构清单的权限

w——(modify the contents of the directory)表示可以改变目录清单的权限,包括

  • 建立新的文件&目录
  • 删除已存在的文件&目录
  • 将已存在的文件&目录改名
  • 移动目录内文件&目录的位置

x——(access the directory)表示可以进入该目录的权利,如果没有此权限,即使有“可读可写”的权利也白费,因为连进都进不去,何谈读与改写。

示例:     

       

 

 

posted @ 2013-03-26 23:56  jihite  阅读(2207)  评论(8编辑  收藏  举报