class-6 积累应用

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

    ## 读写执行对于文件的意义

        r:针对于文本文件

        w:可修改内容,但不能删除文件本身,需要x权限配合

        x:针对二进制程序或脚本

        X:-R递归时,目录会添加x权限,文件则不会添加x权限

    ##  读写执行对于目录的意义

        r:可以查看dir内文件列表,但不能访问文件,不能cd,也不能查看文件的元数据

        w:可以创建或删除文件  需要配合x权限

        x:可以进入目录,可以访问目录中的文件

        目录有写和执行权限,可以删除文件

        X: -R递归时,目录会添加x权限,文件则不会添加x权限

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

     相同点:umask和acl mask都是默认的权限值,通过它们来设定所需要的文件权限。

     不同点:1、触发条件不同:umask是linux系统的默认权限值,系统安装运行后就存在的;acl mask 是基于acl,在当前文件系统支持情况下,并且需要设置acl才存在

                  2、作用范围不同:umask作用于系统的所有文件;acl mask 作用于文件的属组,及在acl中定义的的用户、组,不对属主和其他用户、组起作用。

                  3、定义的变化:文件定义acl后,将无法再设置属组权限,设置属组权限将变成设置mask遮罩码。

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

   SUID:

      应用场景:二进制程序,目录,脚本无意义。通常为一些程序开发者根据需要设置的SUID,出于安全的考虑,一般不会做修改。

       作用:当执行者有执行权限时,将二进位制程序提交给内核,执行者将获得二进制程序属主的权限去执行。

   SGID:

     应用场景:可以是二进制程序 ,但权限很小,并且需要文件对该组授权。也可以作用于目录,通常用于创建一个协作目录

      作用:当执行者有执行权限时,将二进位制程序提交给内核,如果执行者在在文件的属组中,执行者将获得二进制程序的属组权限去执行。

  通过对目录设置SGID,对此目录有写权限的用户所创建的文件的属组为目录的属组。

  Sticky:

     应用场景:作用于目录,出于安全的考虑,通过设置防止文件被误删或恶意删除操作

      作用:在目录设置Sticky 位,只有文件的所有者或root才可以删除该文件

               

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

[user1@6 ~]$ vi .bashrc
# .bashrc
umask 066
# Source global definitions
if [ -f /etc/bashrc ]; then
        . /etc/bashrc
fi

# User specific aliases and functions

[user1@6 ~]$ exit
logout
[root@6 ~]# su - user1
[user1@6 ~]$ touch a
[user1@6 ~]$ ll a
-rw-------. 1 user1 user1 0 8月   5 07:53 a

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

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

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

[root@7 testdir]# groupadd g1
[root@7 testdir]# mkdir f1
[root@7 testdir]# setfacl -m u:user1:--- f1
[root@7 testdir]# mkdir dir
[root@7 testdir]# setfacl -m g:g1:rwx dir
[root@7 testdir]# setfacl -m d:g:g1:--- dir
[root@7 testdir]# setfacl -m d:u:user1:rw f1
[root@7 /]# getfacl -R testdir > acl.txt
[root@7 /]# cat acl.txt                           ##查看acl权限文档
# file: testdir
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
# file: testdir/f1
# owner: root
# group: root
user::rwx
user:user1:---
group::r-x
mask::r-x
other::r-x
default:user::rwx
default:user:user1:rw-
default:group::r-x
default:mask::rwx
default:other::r-x
# file: testdir/dir
# owner: root
# group: root
user::rwx
group::r-x
group:g1:rwx
mask::rwx
other::r-x
default:user::rwx
default:group::r-x
default:group:g1:---
default:mask::r-x
default:other::r-x
[root@7 /]# setfacl -R -b testdir
[root@7 /]# getfacl -R testdir       ##删除acl后查看权限文档
# file: testdir
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
# file: testdir/f1
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
# file: testdir/dir
# owner: root
# group: root
user::rwx
group::r-x
other::r-x
[root@7 /]# setfacl -R --set-file=acl.txt  testdir
[root@7 /]# getfacl -R testdir     ###恢复acl权限后查看
# file: testdir
# owner: root
# group: root
user::rwx
user:user1:---
group::r-x
group:g1:rwx
mask::rwx
other::r-x
default:user::rwx
default:user:user1:rw-	#effective:r--
default:group::r-x
default:group:g1:---
default:mask::r-x
default:other::r-x
# file: testdir/f1
# owner: root
# group: root
user::rwx
user:user1:---
group::r-x
group:g1:rwx
mask::rwx
other::r-x
default:user::rwx
default:user:user1:rw-	#effective:r--
default:group::r-x
default:group:g1:---
default:mask::r-x
default:other::r-x
# file: testdir/dir
# owner: root
# group: root
user::rwx
user:user1:---
group::r-x
group:g1:rwx
mask::rwx
other::r-x
default:user::rwx
default:user:user1:rw-	#effective:r--
default:group::r-x
default:group:g1:---
default:mask::r-x
default:other::r-x

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

赞 (0)
lvasulvasu
上一篇 2016-08-05 10:17
下一篇 2016-08-05 10:17

相关推荐

  • RAID( Blob3 )

    RAID各级别特性及使用

    2017-11-27
  • shell脚本编程之变量详解

    什么是变量     变量是计算机内存的单元,其中存放的值可以改变。当Shell脚本需要保存一些信息时,如一个文件名或是一个数字,就把它存放在一个变量中。每个变量有一个名字,所以很容易引用它。 使用变量可以保存有用信息,使系统获知用户相关设置,变量也可以用于保存暂时信息。 变量:变量类型 作用:  &…

    Linux干货 2016-08-15
  • 十个让你变成糟糕的程序员的行为

    之前本站发表过《优秀程序员的十个习惯》以及《程序员需要具备的基本技能》,那是我们需要去学习和培养的。这里,我们主要讨论十个糟糕程序员的特征,主要是需要让我们去避免和小心的。 1) 情绪化的思维 如果你开始使用不同颜色的眼光来看待这个世界的话,那么你可能会成为一个很糟糕的程序员。情绪化的思维或态度很有可能会把自己变成一个怪物。相信你经常可以看到很多很糟糕的程序…

    Linux资讯 2015-04-03
  • 基础命令。

    简单基础小命令 查看目录 ls 查看当前路径下的目录 ls -a 查看当前路径下的所有目录,包含隐藏目录(带.的就是隐藏) ls -A 跟-a一样,只是不显示上一路径和本身路径(就是.和..) ls -l 显示额外的信息 ls -R 进入每个文件夹查看(递归) ls -ld 查看元数据 ls -1(数字) 排列 ls -r 倒序 ls -t 按修改时间排序 …

    Linux干货 2017-05-29
  • 认识shell

    一、认识shell 什么是shell?shell为单词外壳的意思。那么这是谁的外壳?我们知道一个系统中实际工作的是那些硬件,cpu、内存、磁盘等。我们如何调用这些硬件为我们工作?实际上,硬件是由内核kernel控制的。我们可以通过kernel控制硬件,但我们不能直接和内核kernel交流。我们需要一个外壳,这个外壳就是shell来沟通kernel。何为she…

    Linux干货 2015-09-22
  • 第三次 练习

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 ~]# who | cut -d "" -f1 |uniq root     pts/0        2016-11-13 12:17 (172.16.220.14) 2、取出最后登录到…

    Linux干货 2016-11-16