Welcome 微信登录

首页 / 操作系统 / Linux / Linux档案和目录管理的一道例题

假设系统中有两个账号,分别是 alex 和 arod ,这两个人除了自己群组之外还共同支持一个名为 project 的群组。假设这两个用户需要共同拥有 /srv/ahome/ 目录的开发权,而该目录禁止其他人进入查阅。 请问该目录的权限设定应为何?请先以传统权限说明,再以 SGID 的功能解析。目标:了解到为何项目开发时,目录最好需要设定 SGID 的权限!
前提:多个账号支持同一群组,且共同拥有目录的使用权!
需求:需要使用 root 的身份来进行 chmod, chgrp 等帮用户设定好他们的开发环境才行! 这也是管理员的重要任务之一(1)准备工作。groupadd  project        --------建立群组projectuseradd  -G project  alex     --------建立用户alex,并且此用户支持群组projectuseradd  -G project  arod     --------建立用户arod,并且此用户支持群组projectid  alex  ----查看alex的账户属性id  alex  ----查看alex的账户属性mkdir /srv/ahome    ----  建立工作目录(2)使用传统权限。chmod  770 /srv/ahome   -----该目录禁止其他人进入查阅,而同组的人却可以互相修改档案,所以修改权限为770chgrp project /srv/ahome   -----将/srv/ahome目录的支持群组修改为project此时工作目录的权限已经设好,支持群组也设定为project了,是不是已经可以了呢?我们试一下看:使用alex用户登录tty2cd /srv/ahome    ----  进入工作目录touch  123.txt     -----建立档案123.txtls  -l  123.txt     -----查看123.txt的档案属性-rw-rw-r-- 1 alex alex 0 Sep 29 22:46 123.txt   我们发现alex建立的档案本身所属的群组为alex。但对于arod来讲,他并不支持alex这个群组,所以arod对应此档案就是other,不过other有r权限,所以理论上arod是可以查看档案内容的。我们下边验证一下。使用arod用户登录tty3cd /srv/ahome    ----  进入工作目录cat -n 123.txt  xxxxxxxxx         ----123.txt的内容nano   123.txt    -----使用编辑器编辑123.txt,此时你会发现,当你想要保存的时候,系统提示你“不允许”(3)使用SGID 权限chmod  g+s  /srv/ahome  使用root用户修改目录/srv/ahome的权限,使之具有SGID权限。换arod用户登录,使用nano编辑器修改内容试一下:nano  123.txt   -------???什么?还是不行?呵呵,当然不行了。。。。因为你的档案的支持群组并没有改变啊。切换root    rm  123.txt再使用alex用户登录,touch  123.txt     -----建立档案123.txtls  -l  123.txt     -----查看123.txt的档案属性-rw-rw-r-- 1 alex project 0 Sep 29 22:48 123.txt    ----可以发现123.txt这样档案已经归属于project群组了。此时再使用arod用户就可以修改内容了,不信可以试一下哦。Ubuntu系统无线Wi-Fi等不能使用问题Linux 档案与目录管理相关资讯      Linux知识 
  • 时光总是太匆匆!Linux已经诞生23  (08/29/2014 14:12:03)
  • Linux虚拟文件系统之文件打开(sys  (02/14/2012 11:41:54)
  • 2012 年 Linux 峰会时间表  (02/14/2012 06:47:27)
  • 报告称当前 Linux 人才抢手 高薪也  (02/15/2012 06:35:56)
  • 解析企业为何选择Linux及其特别之  (02/14/2012 08:17:59)
  • Linux禁用字符闪烁的方法  (11/02/2011 10:28:25)
本文评论 查看全部评论 (0)
表情: 姓名: 字数