Linux-档案属性

Linux为人熟知的多人多任务环境得益于其合理而且优秀的档案权限管理。

权限:read/write/execute(可读r/可写w/可执行x)

档案属性:owner/group/others(档案拥有者/所属群组/其他所有)

ls -al

第一個字元代表这个档案是『目录、档案或链接档等等』:

  • 当为[ d ]则是目录;
  • 当为[ - ]则是目录;
  • 若是[ l ]则表示为链接档(link file);
  • 若是[ b ]则表示为装置档里面的可供存储的周边设备(可随机存取裝置);
  • 若是[ c ]则表示为装置档里面的序列外设备,例如键盘、鼠标(一次性读取装置)。

  接下來,以三個为一組,且均为『rwx』 的三個参数的組合。其中,[ r ]代表可读(read)、[ w ]代表可写(write)、[ x ]代表可执行(execute)。 要注意的是,這三個权限的位置不會改变,如果沒有权限,就會出現减号[ - ]而已。

  • 第一组为『档案拥有者可具备的权限』,以『initial-setup-ks.cfg』那个档案为例,改档案拥有者可以读写,但不能执行;
  • 第二组为『加入此群组的档案权限』;
  • 第三组为『非本人且沒有加入本群组之其他账号的权限』。

    注意 :目录的X属性

如:drwxr--r-- 3 root root 4096 Jun 25 08:35 .ssh

非 root 这个账号的其它使用者均不可进入 .ssh 这个目录,为什么呢? 因为 x 与 目录 的关系相当的重要, 如果您在该目录底下不能执行任何指令的话,那么自然也就无法进入了,因此, 请特别留意的是,如果您想要
开放某个目录让一些人进来的话, 请记得将该目录的 x 属性给开放呦!至于目录的权限相关说明, 我们会在底下继续介绍的。 

另外,你也必须要更加的小心的是, 在 Windows 底下一个档案是否具有执行的能力是藉由『 附
名 』来判断的, 例如:.exe, .bat, .com 等等,但是在 Linux 底下, 我们的档案是否能执
行,则是藉由是否具有 x 这个属性来决定的!所以,跟档名是没有绝对的关系的! 这点还请特
别留意呢!稍后我们还会针对目录来稍作说明的

 

第二栏表示为连结占用的节点 (i-node): 这个跟连结档 (link file) 比较有关系。 如果是目录的话,那么就与该目录下还有多少目录有关。 

第三栏表示这个档案(或目录)的『拥有人』。 

 

第四栏表示拥有人的群组。 

第五栏为这个档案的容量大小。 

第六栏为这个档案的建档日期或是最近的修改日期, 分别为月份、日期及时间。 

第七栏为这个档案的档名, 如果档名之前多一个『 . 』,则代表这个档案为『隐藏档案』

 

 如何改变档案权限

chgrp :改变档案所属群组、等等的特性(要改变成为的群组名称必须要在 /etc/group 里面存在的名称才行,否则就会显示错误!) 如:chgrp users install.log

chown :改变档案所属人(使用者必须是已经存在系统中的,也就是在 /etc/passwd 这个档案中有纪录的使用者名称才行改变 )(如果要连目录下的所有次目录或档 案同时更改档案拥有者的话,直接加上 -R 的参数即可) 
chmod :改变档案的属性、
SUID(属性的设定方法有两种, 分别可以使用数字或者是符 号来进行属性的变更) 
  数字类型改变档案权限 :r:4  w:2  x:1  例如:owner = rwx = 4+2+1 = 7  group = rwx = 4+2+1 = 7  others= --- = 0+0+0 = 0    如:chmod 770 .bash
  符号类型改变档案权限 :u, g, o 来代表三群的属性!此外, a 则代表 all 

  

  『 chmod u=rwx,g=rx,o=r(中间没有空格) filename 』 『 chmod u-x filename 』 『 chmod u+x filename 』


参考资料:鸟哥的Linux私房菜。


posted on 2017-10-21 15:54  幼儿猿  阅读(388)  评论(0)    收藏  举报

导航