M20 – 1- 第三周(2):课堂练习与作业

课堂练习:

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

[root@centos6 ~]# groupadd g1
[root@centos6 ~]# groupadd g2
[root@centos6 ~]# groupadd g3
[root@centos6 ~]# useradd -G g2 alice
[root@centos6 ~]# useradd -G g3 tom
[root@centos6 ~]# id alice
uid=501(alice) gid=504(alice) groups=504(alice),502(g2)
[root@centos6 ~]# id tom
uid=502(tom) gid=505(tom) groups=505(tom),503(g3)
[root@centos6 ~]# mkdir -p /data/testdir
[root@centos6 ~]# cd /data/
[root@centos6 data]# ll
total 4
drwxr-xr-x. 2 root root 4096 Aug  6 19:06 testdir
[root@centos6 data]# chgrp g1 testdir/
[root@centos6 data]# chmod g+sw,o= testdir/
[root@centos6 data]# ll
total 4
drwxrws---. 2 root g1 4096 Aug  6 19:06 testdir
[root@centos6 data]# setfacl -m g:g2:rwx,g:g3:rwx testdir/
[root@centos6 data]# setfacl -m d:g:g2:rw,d:g:g3:r testdir/
[root@centos6 data]# getfacl testdir/
# file: testdir/
# owner: root
# group: g1
# flags: -s-
user::rwx
group::rwx
group:g2:rwx
group:g3:rwx
mask::rwx
other::---
default:user::rwx
default:group::rwx
default:group:g2:rw-
default:group:g3:r--
default:mask::rwx
default:other::---

[root@centos6 data]#

作业:

1、设置user1,使之新建文件权限为rw——-

[user1@centos6 ~]$ echo "umask 0066" >> .bashrc 
[user1@centos6 ~]$ . .bashrc
[user1@centos6 ~]$ umask
0066
[user1@centos6 ~]$ touch file1
[user1@centos6 ~]$ ls -l file1 
-rw-------. 1 user1 user1 0 Aug  6 19:16 file1
[user1@centos6 ~]$

2、设置/testdir/f1的权限,使user1用户不可以读写执行,g1组可以读写/testdir/dir的权限,使新建文件自动具有acl权限:user1:rw,g1:—,备份/testdir目录中所有文件的ACL,清除/testdir的所有ACL权限,并利用备份还原

[root@centos6 testdir]# ls -ld .
drwxr-xr-x. 2 root root 4096 Aug  6 20:25 .
[root@centos6 testdir]# mkdir -p /testdir/dir/
[root@centos6 testdir]# touch f1
[root@centos6 testdir]# setfacl -m u:user1:0,g:g1:rw /testdir/f1
[root@centos6 testdir]# setfacl -m d:u:user1:rw,d:g:g1:0 /testdir/dir/
[root@centos6 testdir]# getfacl -R * > /root/acl.txt
[root@centos6 testdir]# setfacl -R --set-file=/root/acl.txt /testdir/dir

3、三种权限rwx对文件和目录的不同意义

文件的权限意义

r: 可使用文件查看类工具获取其内容;
w: 可修改其内容;
x: 可以把此文件提请内核启动为一个进程

目录的权限意义

r: 可以使用ls查看此目录中文件列表;
w: 可在此目录中创建文件,也可删除此目录中的文件;
x: 可以使用ls -l查看此目录中文件列表,可以cd进入此目录;

4、umask和acl mask 的区别和联系

umask:从目录或文件上屏蔽掉最大权限相应的位,从而得出默认权限
acl:为指定用户或用户组添加权限
mask:控制acl列表中用户的最高权限

5、三种特殊权限的应用场景和作用

SUID

作用:任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限,启动为进程之后,其进程的属主为原程序文件的属主
场景:启动为进程之后,其进程的属主为原程序文件的属主,SUID只对二进制可执行程序有效,SUID设置在目录上无意义

SGID

作用:任何一个可执行程序文件能不能启动为进程:取决发起者对程序文件是否拥有执行权限;启动为进程之后,其进程的属主为原程序文件的属组
场景:默认情况下,用户创建文件时,其属组为此用户所属的主组;一旦某目录被设定了SGID,则对此目录有写权限的用户在此目录中创建的文件所属的组为此目录的属组;通常用于创建一个
协作目录

SGID

作用:具有写权限的目录通常用户可以删除该目录中的任何文件,无论该文件的权限或拥有权
场景:在目录设置Sticky 位,只有文件的所有者或root可以删除该文件;sticky 设置在文件上无意义

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

(0)
上一篇 2016-08-08 16:15
下一篇 2016-08-08 16:15

相关推荐

  • 马哥教育网络20期+第五周练习博客

    作业要求: 1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行; 3、打出netstat -tan命令执行结果中以‘LISTEN’,后或跟空白字符结尾的行; 4、添加用户bash, testbash, bashe…

    2016-07-09
  • 马哥教育网络20期+第8周练习博客

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 网桥:链接层设备,基于MAC地址过滤。 集线器:物理层设备,基本都属于半双工模式。集线器与网桥在现在的局域网中基本都不用了。 二层交换机:基本MAC转发数据,功能齐全的可支持VLAN等功能。常见的有100/1000M、16口/24口/48口。 三层交换机:功能齐全的交换机,具备都…

    Linux干货 2016-08-01
  • 源码编译nginx和Nginx的特性,配置文件指令说明

    nginx的官方站点 www.nginx.org Nginx:engine X Tenginx:Taobao enginx libevent:高性能的网络库 epoll(); Nginx特性  模块化设计,较好扩展性:但不支持模块的动态装卸载;Tenginx支持;  高可靠性   master –> …

    Linux干货 2017-04-30
  • linux根下的文件

    /boot:系统启动时要加载引导的静态文件,内核和ramdisk及grub等 /bin:系统自身启动和运行时可能用到的核心二进制程序,不能关联至独立分区。 /sbin:管理类基本命令,不能关联至独立分区,系统启动便会用到的程序。 /lib:基本共享库文件,以及内核模块文件 /lib64:专用于x86_64系统上的辅助共享库文件存放位置 /etc:大多数应用程…

    Linux干货 2017-03-30
  • 马哥教育网络班21期+第14周课程练习

    iptables关键点 表:filter(过滤,防火墙);nat(网络地址转换);mangle(拆解报文,做出修改,封装报文);raw(关闭nat表启用的链接追踪机制);上述是根据功能来区分的,写规则要明白要实现的功能 链:PREROUTING,INPUT,FORWARD,OUTPUT,POSTROUTING 数据流向:流入PREROUTING–…

    Linux干货 2016-08-26
  • CentOS下命令基础练习

    马哥教育网络班23期+第五周课堂作业 CentOS下命令基础练习 1、显示当前系统上root、fdeora或user1用户的默认shell 2、找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如:hello() 3、使用echo命令输出一个绝对路径 使用grep取出其基名 扩展:取出其路径名 (…

    Linux干货 2016-10-24