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

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

相关推荐

  • 救援模式安装RPM

    救援模式安装RPM 步骤如下: (1)先让RPM“自杀”掉,必须要使用忽略依赖选项—nodeps,否则卸载不了RPM程序。 (2)卸载完成后,将机器重启,按F2键进入机器的BIOS模式,如下图选择CD-ROM启动,最后按F10保存退出。 (3)机器将会从光驱上使用光盘文件做引导启动,如下图界面,相信大家都非常熟悉,该界面在我们安装新系统的时候,也会见到。啰嗦…

    Linux干货 2016-08-26
  • 马哥教育网络班21期+第4周课程练习

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 [root@itop ~]# cp -r /etc/skel /home/tuserl [root@itop ~]# chmod -R&nbsp…

    Linux干货 2016-08-01
  • 考试题目

    1、  简述TCP三次握手四次挥手过程及各过程中客户端和服务器端的状态。 TCP三次握手,四次断开通过以下图示说明: 2、说说进程和线程的区别 (1)一个线程只能输入某一个进程,一个进程可以有多个线程。一个程序至少有一个进程,一个进程至少有一个线程。 (2)进程有独立的地址空间,线程没有独立的地址空间,进程内的多个线程共享进程的地址空间。 (3)线…

    Linux干货 2016-06-19
  • 权限管理

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

    Linux干货 2017-07-30
  • Linux的哲学思想

    2018-03-03

    Linux干货 2018-03-03
  • 关于大型网站技术演进的思考(七):存储的瓶颈(7)

    原文出处: 夏天的森林  本文开篇提个问题给大家,关系数据库的瓶颈有哪些?我想有些朋友看到这个问题肯定会说出自己平时开发中碰到了一个跟数据库有关的什么什么问题,然后如何解决的等等,这样的答案没问题,但是却没有代表性,如果出现了一个新的存储瓶颈问题,你在那个场景的处理经验可以套用在这个新问题上吗?这个真的很难说。 其实不管什么样的问题场景最…

    2015-03-11