系统基础之权限管理作业题

1.问题:

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

[root@wen-7 testdir]# mkdir -p /data/testdir
[root@wen-7 testdir]# ll -d /data/testdir
drwxr-xr-x 2 root root 6 8月   4 10:58 /data/testdir
[root@wen-7 testdir]# chmod g+s /data/testdir
[root@wen-7 testdir]# groupadd g1
[root@wen-7 testdir]# groupadd g2
[root@wen-7 testdir]# groupadd g3
[root@wen-7 testdir]# chown :g1 /data/testdir/
[root@wen-7 testdir]# touch /data/testdir/f1
[root@wen-7 testdir]# ll /data/testdir/f1
-rw-r--r-- 1 root g1 0 8月   4 10:59 /data/testdir/f1
[root@wen-7 testdir]# setfacl -m d:g:g2:rw /data/testdir/
root@wen-7 testdir]# setfacl -m d:g:g3:r /data/testdir/
[root@wen-7 testdir]# getfacl /data/testdir/
getfacl: Removing leading '/' from absolute path names
# file: data/testdir/
# owner: root
# group: g1
# flags: -s-
user::rwx
group::r-x
other::r-x
default:user::rwx
default:group::r-x
default:group:g2:rw-
default:group:g3:r--
default:mask::rwx
default:other::r-x
[root@wen-7 testdir]# chmod o=  /data/testdir/
[root@wen-7 testdir]# ll -d /data/testdir/
drwxr-s---+ 2 root g1 15 8月   4 10:59 /data/testdir/

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

   文件:

     r:可获取文件的数据

     w:可修改文件的数据 (不可删除文件)

     x:可将此文件运行为进程(针对二进制程序或脚本)

      X:不会增加X(前提本身无X权限)

   目录:

     r:可使用ls命令获取其下的所有的文件列表

     w:可修改此目录下的文件列表:即创建或删除文件      不看文件权限  

     x:可cd至此目录中,且可使用ls -l来获取所有文件的详细属性信息

     X:不会增加X(前提本身无X权限)

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

区别:

 1.本质不同.umake是文件权限的反向掩码,屏蔽最大权限位,反向得出文件的默认权限,而make是直接定义文件权限的最大值.某些用户不能超过mask权限.

 2.对象不同,umake针对的是属主,属组和other,但mask针对的对象是排除属主和other的所有人

 3.标识不同.umake只是单纯的对比数值,没有相对的权限表达位.而mask会替代属组的权限位

 4计算方式不同.umake是用最大权限减去umake值得到文件实际权限,而mask是直接用mask的权限与指定用户权限最对比,屏蔽最大权限.  

联系:

  1.都是文件的默认权限.

  2.都能针对某个对象实现权限控制

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

 SUID:  

   应用场景:默认情况下,用户发起的进程,进程的属主是其发起者,因此,其以发起者的身份在运行,想使用更大的权限运行程序

   功用: 用户运行某程序时,如果此程序拥有SUID权限,那些二进制程序运行为进程时,其属主不是发起者,而是程序文件自己的属主

 SGID:

   应用场景:同一属组的用户,可以更改或删除组内其他用户的文件

   功用:当某目录属组有写权限,且有SGID权限时,那么所有属于此目录的属组的用户,且以属组身份再此目录中新建文件或目录时,新文件的属组不是用户的基本组,而是此目录是属组;

 STICKY:

   应用场景:同一属组的用户,可以更改或阅读组内其他用户的文件,但不可删除

      功用:对于属组或全局可写的目录,组内所有用户或系统上的所有用户对在此目录中都能创建新文件或删除所有的已有文件;如果为此类目录设置Sticky权限,则每个用户都能创建新文件,且只能删除自已的文件

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

[user1@wen-7 ~]$ umask
0002
[user1@wen-7 ~]$ touch asd
[user1@wen-7 ~]$ ll asd
-rw-rw-r-- 1 user1 user1 0 8月   4 13:50 asd
[user1@wen-7 ~]$ umask 066
[user1@wen-7 ~]$ umask
0066
[user1@wen-7 ~]$ touch asdf
[user1@wen-7 ~]$ ll asdf
-rw------- 1 user1 user1 0 8月   4 13:51 asdf

6、设置/testdir/f1的权限,使user1用户不可以读写执行,g1组可以读写

/testdir/dir的权限,使新建文件自动具有acl权限:user1:rw,g1:—

备份/testdir目录中所有文件的ACL,清除/testdir的所有ACL权限,并利用备份还原

root@wen-7 testdir]# touch f1
[root@wen-7 testdir]# setfacl -m u:user1:0 f1
[root@wen-7 testdir]# setfacl -m g:g1:rw f
[root@wen-7 testdir]# getfacl f1
# file: f1
# owner: root
# group: root
user::rw-
user:user1:---
group::r--
group:g1:rw-
mask::rw-
other::r--


[root@wen-7 testdir]# mkdir dir
[root@wen-7 testdir]# setfacl -m d:u:user1:rw dir/
[root@wen-7 testdir]# setfacl -m d:g:g1:0  dir/
[root@wen-7 testdir]# getfacl dir
# file: dir
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
default:user::rwx
default:user:user1:rw-
default:group::r-x
default:group:g1:---
default:mask::rwx
default:other::r-x

[root@wen-7 testdir]# touch dir/qwe 
[root@wen-7 testdir]# cd dir/
[root@wen-7 dir]# getfacl qwe
# file: qwe
# owner: root
# group: root
user::rw-
user:user1:rw-
group::r-x			#effective:r--
group:g1:---
mask::rw-
other::r--



[root@wen-7 testdir]# getfacl /testdir/* > acl.txt
getfacl: Removing leading '/' from absolute path names
[root@wen-7 testdir]# setfacl -R -b /testdir/*
[root@wen-7 testdir]# getfacl f1
# file: f1
# owner: root
# group: root
user::rw-
group::r--
other::r--

[root@wen-7 testdir]# getfacl dir
# file: dir
# owner: root
# group: root
user::rwx
group::r-x
other::r-x

[root@wen-7 testdir]# setfacl -R --set-file=acl.txt /testdir/* 
[root@wen-7 testdir]# getfacl -R /testdir/*
getfacl: Removing leading '/' from absolute path names
# file: testdir/acl.txt
# owner: root
# group: root
user::rw-
user:user1:---
group::r--
group:g1:rw-
mask::rw-
other::r--

# file: testdir/dir
# owner: root
# group: root
user::rw-
user:user1:---
group::r--
group:g1:rw-
mask::rw-
other::r--
default:user::rwx
default:user:user1:rw-
default:group::r-x
default:group:g1:---
default:mask::rwx
default:other::r-x

# file: testdir/dir/qwe
# owner: root
# group: root
user::rw-
user:user1:---
group::r--
group:g1:rw-
mask::rw-
other::r--

# file: testdir/f1
# owner: root
# group: root
user::rw-
user:user1:---
group::r--
group:g1:rw-
mask::rw-
other::r--

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

(0)
wencxwencx
上一篇 2016-08-04
下一篇 2016-08-04

相关推荐

  • Linux 基础入门(第一周)

    计算机组成,Linux发行版本,Linux基础命令

    Linux干货 2017-12-03
  • 学习宣言

    好好学习,天天向上。

    Linux干货 2016-10-24
  • 马哥教育网络班21期+第五周课程练习

    1. 显示/boot/grub/grub.conf中至少以一个空白字符开头的行 [root@hadoop ~]# grep "^[[:space:]]\+" /boot/grub/grub.conf 2. 显示/etc/rc.d/rc.sysinit文件中以#开头,后面至少一个空白字符,而后又有至少…

    Linux干货 2016-08-05
  • 文件、目录练习

    将/etc/issue文件的内容转换为大写保存到/tmp/issue.out文件中: 将当前系统登录用户信息转换为大写后保存至/tmp/who.out文件中: 将/root/下文件列表,显示成一行,文件名之间用空格隔开: file1文件的内容为“1 2 3 4 5 6 7 8 9 10”计算出所有数字的总和: 处理字符串“xt.,| 1 jr#!$mn 2 …

    Linux干货 2016-08-05
  • 记事本操作的小小小技巧

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://jeffyyko.blog.51cto.com/28563/140063       大家在查看文本文件的时候,如果内容很多,想快速到达某一位置可能比较麻烦,这时如果按住shift,再点击右侧…

    Linux干货 2015-03-26
  • Week6 Vim编辑器使用指南及练习

    vim编辑器 vim模式: 模式转换.png 编辑–>输入: i: 在当前光标所在字符的前面,转为输入模式; a: 在当前光标所在字符的后面,转为输入模式; o: 在当前光标所在行的下方,新建一行,并转为输入模式; I:在当前光标所在行的行首,转换为输入模式 A:在当前光标所在行的行尾,转换为输入模式 O:在当前光标所在行的上方,新建一行,…

    Linux干货 2017-02-17