作业权限管理

一、在/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
下一篇 2016-08-03

相关推荐

  • 创建及管理KVM工具之virsh

    一、什么是虚拟化 虚拟化是一个广义的术语,在计算机方面通常是指计算元件在虚拟的基础上而不是真实的基础上运行。虚拟化技术可以扩大硬件的容量,简化软件的重新配置过程。 二、虚拟化能做什么 CPU的虚拟化技术可以单CPU模拟多CPU并行,允许一个平台同时运行多个操作系统,并且应用程序都可以在相互独立的空间内运行而互不影响,从而显著提高计算机的工作效率。 三、虚拟化…

    Linux干货 2017-01-19
  • LVM: Logical Volume Manager 逻辑卷管理

      一、LVM介绍         LVM: Logical Volume Manager, Version: 2             …

    Linux干货 2016-09-19
  • 18-系统启动故障修复-实践

    说明:重启时可以选择性在vmlinuz所在行末尾添加 selinux=0;或者直接编辑/etc/selinus/config文件,更改 SELINUX=disabled 关闭SELINUX。可以避免打标签,节省启动时间 以下操作都需要进入bootloader引导加载项修改内核启动参数,在vmlinuz所在行末尾添加一个启动选项 如何进入bootloader引…

    2017-04-02
  • shell脚本编程基础(1)

    一.位置变量相关知识     1.位置变量定义:在脚本代码中调用通过命令行传递给脚本的的参数     2.位置变量种类:              &…

    Linux干货 2016-08-15
  • 实验:配额、RAID、LVM

    实验:在centos7实现光盘yum源 1yum install autofs 2现在启动systemctl start autofs 3开机启动systemctl enable autofs 4 cat /etc/yum.repos.d/base.repo[centos7]name=centos7 repobaseurl=file:///misc/cdgp…

    Linux干货 2017-04-25
  • iptables基本知识

    1)Linux下的防火墙概念 a、一般谈到Linux下的防火墙,我们都会首先想到iptables,其实更确切的叫法应该是Netfilter/iptables,iptables和Netfilter其实是存在差别的。 b、尽管它们经常被用来相互替换使用,Netfilter是用来实现Linux内核中防火墙的Linux内核空间程序代码段,它要么被直接编译进内核,要么…

    Linux干货 2016-07-16