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

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

相关推荐

  • rsync+inotify实时同步备份数据

    rsync同步 rsync+inotify实时同步备份数据 软件简介: rsync命令简介: rsync命令是一个远程数据同步工具,可通过LAN/WAN快速同步多台主机间的文件。rsync使用所谓的“rsync算法”来使本地和远程两个主机之间的文件达到同步,这个算法只传送两个文件的不同部分,而不是每次都整份传送,因此速度相当快。 rsync是一个功能非常强大…

    Linux干货 2016-10-28
  • N22-第二周作业

    1、文件管理类命令有:cp,mv,rm    cp:复制命令      用法:cp [OPTION]… SOURCE… DEST        如果DEST不存在,则先创建此文件并复制源…

    Linux干货 2016-08-29
  • 请使用命令行展开功能来完成以下练习

    (1)、创建/tmp目录下的:ac, ad, bc, bd ]# mkdir -p /tmp/{a,b}_{c,d} 或者: ]# touch /tmp/{a,b}_{c,d} (2)、创建/tmp/mylinux目录下的: ]# mkdir -pv /tmp/mylinux/{bin,boot/gtub,dev,etc/{rc.d/init.d,sysco…

    Linux干货 2016-11-06
  • 正则表达式练习

    一: 1、找出ifconfig命令结果中本机的所有IPv4地址         2、查出分区空间使用率的最大百分比值 3、查出用户UID最大值的用户名、UID及shell类型 4、查出/tmp的权限,以数字方式显示 二: 1、显示/proc/meminfo文件中以大小s开头的行;(要求:使用两种方式) 2、显示/etc…

    Linux干货 2016-08-12
  • 马哥教育网络班20期+第四周博客作业

    1、复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其它用户均没有任何访问权限。 # cp -R /etc/skel /home/tuser1 # chmod -R go-x /home/tuser1 2、编辑/etc/gro…

    Linux干货 2016-06-29
  • Keepalived实现nginx双主

    一、架构描述与应用 1. 应用场景 大多数的互联网公司都会利用nginx的7层反向代理功能来实现后端web server的负载均衡和动静分离。这样做的好处是当单台后端server出现性能瓶颈时可以对其进行横向扩展从而提高整个系统的并发,同时也可以通过后端server提供的http或tcp监控接口对其进行健康检查实现自动Failover和Failback。&n…

    Linux干货 2016-07-16