作业权限管理

一、在/data/testdir里创建的新文件自动属于g1组,组g2的成员如:alice能对这些新文件有读写权限,组g3的成员如:tom只能对新文件有读权限,其它用户(不属于g1,g2,g3)不能访问这个文件夹。

首先创建三个组g1,g2,g3,题目要求在/data/testdir目录里创建的文件自动属于g1组那么首先要将这个目录的属组改为g1,然后通过更改SGID的方式来实现在目录里创建文件自动属于g1组,要求g2的组对新文件进行读写权限,在目录里边能写必须要配合x执行权限才能实现写(创建文件,删除文件,更改文件内容),g2组里的成员未必都是这个目录属组的成员,所以这时要用到访问控制列表来设置g2组的成员对目录里的文件有读写权限,最后g3组的成员也未必是属组的成员,要想实现对文件有读权限也需要设置访问控制列表,最后一类用户就是什么权限也没有,我们可以把目录的其他人的权限设为空,这样一来,其他人就没有权限来访问这个文件夹了。

groupadd g1

groupadd g2

groupadd g3

chgrp -R  g1  /data/testdir

chmod -R  g+s  /data/testdir

更改之后,使用root账号在/data/testdir目录下创建一个文件发现属组改成了g1

23.jpg

useradd alice

usermod -G g2 alice

setfacl -Rm d:g:g2:rwx  /data/testdir

QQ截图20160804095635.jpg

QQ截图20160804095722.jpg

setfacl -Rm g:g3:r  /data/testdir 设置了只读权限只能列出目录下的文件

QQ截图20160804095946.jpg

作业权限管理

chmod -R  o=   /data/testdir,更改权限之后我使用hadoop用户来测试,hadoop不属于他们三个组当中的任何一个,属于其他人

6.jpg

二、创建组sales,gid 3000,passwd:centos,sales设置组的管理员为user2,将用户user1,user2,user3加入到sales辅助组
希望user1 创建新文件 默认的所属组为sales,user2将用户user3从sales组移除,删除sales,user1,user2

创建一个组名为sales使用-g选项指定组的gid为3000,并且给组添加密码centos,可以使用gpasswd跟上组名来添加,user2设置成为sales组的管理,组管理命令gpasswd 使用-A选项添加组的管理员,新建三个用户分别将三个用户加入到组里,user1在创建文件时默认是sales组,并且将user1的主组改为sales,那么之后user1创建文件时它的属组就是sales了,之前将user2设置成为了sales组的管理员,那么user2可以管理sales组里的用户,之后随即删除user3

groupadd -g 3000 sales

gpasswd sales

gpasswd -A  user2  sales

usermod    -g  sales  user1

su – user2

gpasswd -d user3 sales

exit

groupdel sales

userdel -r user1

userdel -r user2

6.jpg

三种权限,三种特殊,acl,chattr 总结

三种权限分别是r,w,x

对文件而言

        r:可以查看文件

        w:可以删除修改创建文件

        x:可执行,可在命令提示符下当做命令交给内核运行

对目录而言

        r:仅能列出目录下的文件

        w:需要配置x权限一直使用,能删除创建修改目录里的内容

        x:能进入到目录里面

SUID:运行某程序时,相应进程的文件自身的属主,而不是启动者,加了这项权限后,就以这个文件的属主的权限来执行,一般加到文件上

SGID:运行某程序时,相应进程的文件自身的属组,而不是所启动着的属组,一般这个权限是加到目录上,一旦某目录被设定了SGID,则对此目录有写权限的用户在此目录中创建的文件所属的组为此目录的属组,通常用在公共目录里。

sticky:在目录设置Sticky 位,只有文件的所有者或root可以删除该文件,通常也是运用到目录上。

acl访问控制列表

    访问控制列表能灵活的实现权限管理,除了文件的属主属组,还可以为其他人来设置权限,方便权限的控制

chattr设置文件特定的属性

        +i 给文件附上这个权限,文件不能删除,重名,更改,就连root也不行

        +a(append)只能想文件里面追加内容

原创文章,作者:fszxxxks,如若转载,请注明出处:http://www.178linux.com/27810

(0)
上一篇 2016-08-03 16:56
下一篇 2016-08-03 19:01

相关推荐

  • Linux之计划任务

    Linux 之计划任务    任务计划Linux任务计划、周期性任务执行未来的某时间点执行一次任务:atbatch:系统自行选择空闲时间去执行此处指定的任务周期性运行某任务:cron   at任务at命令:at [option] TIME常用选项:-V 显示版本信息:-l: 列出指定队列中等待运行的作业;相当于atq-d: 删除…

    Linux干货 2016-09-11
  • 显示历史命令时间

        历史命令中默认是不显示时间的,如果我们想要在使用history命令时显示时间可以通过设置环境变量来实现。     HISTTIMEFORMAT变量的具体参数与date命令中的类似,可以参数date命令的对日期时间格式时行修改。    &nbs…

    Linux干货 2015-05-02
  • 磁盘管理(二)之swap、dd工具使用

    磁盘管理(二)之swap、dd工具使用   一、挂载点和/etc/fstab   (1)配置文件/etc/fstab,当系统启动时,自动加载该文件,会把写在配置文件里面的所有挂载点全部自动挂载上去,只要按照格式写,就不会丢失。   (2)文件挂载配置文件,如下图:    &nbs…

    Linux干货 2016-08-29
  • 计算机基础及Linux基础

    计算机基础与Linux入门 计算机组成及功能 Linux常见发行版 Linux重要哲学思想 Linux文件系统层级结构及文件命名规则 如何获取Linux命令的使用帮助 Linux常用命令及示例 1.1 计算机组成及功能 1.1.1 计算机的五大部件 计算机的主要组成部分有: 1、CPU:运算器 2、控制器、寄存器(内部存储)、缓存; 3、存储器:内存,RAM…

    Linux干货 2016-12-04
  • 第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 [root@centos7 ~]# who|cut -d' ' -f1|sort -u fedora gentoo root 2、取出最后登录到当前系统的用户的相关信息。 [root@ce…

    Linux干货 2017-01-16
  • 16个很有用的在线工具

    1. ExplainShell.com 命令解释 对于Linux用户来说每天都会写各种命令和脚本,那么你可以使用这个网站工具来查看命令式如何工作的,这样可以避免不必要的错误出现;也是一个很好的学习命令的方式 2. BashrcGenerator.com 定制个性命令提示符 简单说就是个性化生成命令提示符,可将生成的代码…

    Linux干货 2015-03-13