8.3号,第6天

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

权限对于目录的意义:

1,r权限:拥有此权限表示可以读取目录结构列表,也就是说可以查看目录下的文件名和子目录名,注意:仅仅指的是名字。

2、w权限:拥有此权限表示具有更改该目录结构列表的权限,总之,目录的w权限与该目录下的文件名或子目录名的变动有关,注意:指的是名字。具体如下:

                  1)在该目录下新建新的文件或子目录。

                  2)删除该目录下已经存在的文件或子目录(不论该文件或子目录的权限如何),注意:这点很重要,用户能否删除一个文件或目录,看的是该用户是否具有该文件或目录所在的目录的w权限。

                  3)将该目录下已经存在的文件或子目录进行重命名。

                  4)转移该目录内的文件或子目录的位置。

 

3、x权限:拥有目录的x权限表示用户可以进入该目录成为工作目录,能不能进入一个目录,只与该目录的x权限有关,如果用户对于某个目录不具有x权限,则无法切换到该目录下,也就无法执行该目录下的任何命令,即使具有该目录的r权限。且如果用户对于某目录不具有x权限,则该用户不能查询该目录下的文件的内容,注意:指的是内容,如果有r 权限是可以查看该目录下的文件名列表或子目录列表的。所以要开放目录给任何人浏览时,应该至少要给与r及x权限。

 

权限对于文件的意义:

1、也应该明白的是文件是实际含有数据的地方,所以r、w、x权限对文件来说是与其内容有关的。

2、r权限:用于此权限表示可以读取此文件的实际内容。

 

3、w权限:拥有此权限表示可以编辑、添加或者是修改该文件的内容。但是不包含删除该文件,因为由上面权限对于目录的意义得知删除文件或目录的条件是什么。

4、x权限:表示该文件具有可以被系统执行的权限。文件是否能被执行就是由该权限来决定的,跟文件名没有绝对的关系。



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

 

SUID
应用场景: 只能作用在二进制的可执行文件,也就是说它本身运行起来就是一个进程
效果: 没有suid权限的二进制文件,能否执行取决于当前用户有无对该文件执行权限,
执行之后,进程的拥有者也是当前系统用户。 被服务suid后,当文件被运行后,进程的拥有者不是系统当前的用户,而是文件的所属者
作用: chmod u+s 文件

 

SGID
SGID权限分为两种情况
作用在文件上,文件被赋予SGID的权限,无论当前的用户有无执行权限,用户运行该程序,会自动继承该程序所属组的权限
命令:chmod g+s 文件
作用在目录上,作用效果完全不同于文件,该目录内新建的文件或则目录的所属组会自动继承该目录的所属组
命令:chmod g+s 目录

 

Sticky  

 一个文件一旦被赋予Sticky位的话,只有文件的所有者或root才可以删除该文件
Sticky为是作用在目录下,当目录设置为Sticky位的话,目录下只能被root用户和文件所有者删除
命令格式:
chmod o+t DIR ..
chmod o-t DIR ..





作业:

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

 

系统默认的新建文件的权限为644 ,可设置新建文件的最高权限为666,如果想设置user1的新建文件权限为rw——-,8进制数为600,得到umask066时的新建文件权限为rw——-

1470323312358123.png

 

 

 

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

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

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

 

1,在testdir目录下新建f1文件,现在的权限是-rw–r–r–user1用户权限是可读。

使用setfacl-m命令修改权限,setfacl-m u:user1:0 f1    u:选择要设置的用户名,  :0代表要设置的权限,可以选择rwx等权限。

利用setfacl -m 命令进行修改

[root@localhost testdir]# setfacl -m u:user1:0  /testdir/f1

[root@localhost testdir]# setfacl -m g:g1:rw  /testdir/f1

1470323329972385.png 

 

 

 

[root@localhost testdir]# setfacl -m d:u:user1:rw,g:g1:0 dir

1470323364705228.png 

 

 

[root@localhost dir]# getfacl -R * >/testdir/aclback

[root@localhost dir]# setfacl -R -b *

[root@localhost dir]# setfacl -R –set-file=/testdir/aclback *1470323377882310.png 


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

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

相关推荐

  • 端口转发实例

    什么是端口转发?      端口转发(Port forwarding),有时被叫做隧道,是安全壳(SSH) 为网络安全通信使用的一种方法。端口转发是转发一个网络端口从一个网络节点到另一个网络节点的行为,其使一个外部用户从外部经过一个被激活的NAT路由器到达一个在私有内部IP地址(局域网内部)上的一个端口。 为什么需要端口转发? …

    2017-04-13
  • http://www.jianshu.com/p/f1d0739b141f

    Linux干货 2017-07-30
  • 组管理与grep匹配

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

    Linux干货 2016-10-17
  • 虚拟机配置网卡别名及centos 6 之bonding

    1、虚拟网卡实现一个网卡多个地址(测试环境为虚拟机),此处使用eth1网卡,并且将eth1的IP设置成固定的,其实还可以设置成DHCP自动获取,这就是Linux强大之处。但是由eth1虚拟出来的两张网卡不能使用DHCP自动获取。具体步骤如下(设置的IP看个人喜欢) [root@localhost network-scripts]# cat…

    Linux干货 2016-09-05
  • 第六周作业

    请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; %s@^[[:space:]]\+@#&@g 2、复制/boot/grub/grub.conf至/tmp目录中,删除/tmp/grub.conf文件中的行首的…

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

    1、创建一个10G分区,并格式为ext4文件系统;    (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl;    (2) 挂载至/data/mydata目录,要求挂载时禁止程序自动运行,且不更新文件的访问时间戳; [root@6 ~]# …

    Linux干货 2016-08-29

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-05 11:30

    对命令总结的很好,排版需要用点心哦