作业权限管理

一、在/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)
fszxxxksfszxxxks
上一篇 2016-08-03 16:56
下一篇 2016-08-03 19:01

相关推荐

  • MySQL应用管理

    这篇文章主要讲述基本的SQL语句,以供新手参考使用,不过最好的办法还是查阅官方文档和help命令。 进入正题 什么是SQL?        SQL结构化查询语言,是关系型数据库查询和管理语言,是一种数据库查询和程序设计语言,用于存取数据以及查询,更新和管理关系型数据库系统。 SQL的分类 &nbsp…

    Linux干货 2015-09-23
  • RHEL6.4 yum访问HTTPS源时出错

    在RHEL6.4上安装OpenStack时,使用epel的源,但源是https的,进行安装时,总报下面的错误。     https://repos.fedorapeople.org/repos/openstack/openstack-icehouse/epel-6/repodata/repomd.xml:  …

    Linux干货 2016-02-28
  • PHP高效率写法(详解原因)

    1.尽量静态化:    如果一个方法能被静态,那就声明它为静态的,速度可提高1/4,甚至我测试的时候,这个提高了近三倍。   当然了,这个测试方法需要在十万级以上次执行,效果才明显。   其实静态方法和非静态方法的效率主要区别在内存:静态方法在程序开始时生成内存,实例方法在程序运行中生成内存,所以静…

    Linux干货 2015-05-28
  • 第九周作业

    1、写一个脚本,判断当前系统上所有用户的shell是否为可登录shell(即用户的shell不是/sbin/nologin);分别这两类用户的个数;通过字符串比较来实现; #!/bin/bash LOGIN_USER=0 NOLOGIN_USER=0 for SHELLUSER in $(cat /etc/passwd | cut -d : -f 7);do…

    Linux干货 2017-07-03
  • 权限管理

    权限管理包括普通权限、特殊权限、默认权限、ACL权限。 这些权限都是针对u(owner)、g(group)、o(other)三类定义的。 设置权限时文件和目录不同(此处把文件和目录分开,一般说文件就包含目录(linux思想:一切皆文件))如下图所示, 分别用两个用户分别创建了一个目录一个文件,可以看到同是目录的liutest和test的权限不同,它俩同为目录…

    Linux干货 2017-07-30
  • N25_第六周作业

    1、复制/etc/rc.d/rc.sysinit文件至tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; :%s@^[[:space:]]\+@#&@g(CentOS7下并未看到这个文件) 2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的空白字符;…

    Linux干货 2017-02-15