8月3日作业

文件权限相关的课堂练习:

1)当用户xiaoming对/testdir 目录无执行权限时,意味着无法做哪些操作?

    用户小明不能进入/testdir,不能删除,不能创建。使用ll能看到有哪些文件,但是看不到具体信息

2)当用户xiaoqiang对/testdir 目录无读权限时,意味着无法做哪些操作?

不能查看文件夹内部有哪些文件,如果知道文件夹内有哪些,则可以删除,也可以在里面创建

3)当用户wangcai 对/testdir 目录无写权限时,该目录下的只读文件file1是否可修改和删除?

    不能删除,对目录无写权限,说明不能删除目录中包含的file1的文件名和inode的对用关系;因为文件只读,所以也不会有修改权限

    如果wangcai对目录有写权限,则能够删除文件,但是还是不能修改文件

4)复制/etc/fstab文件到/var/tmp下,设置文件所有者为wangcai读写权限,所属组为sysadmins组有读写权限,其他人无权限

         ]# cp /etc/fstab /var/tmp/
	 ]# groupadd sysadmins
	 ]# chmod 660 fstab
	 ]# ll
         total 4
	-rw-rw---- 1 ci sysadmins 921 Aug  4 20:52 fstab

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

        ]# mkdir -p /data/testdir
	]# groupadd g1; groupadd g2; groupadd g3
	]# useradd alice;useradd tom
	以上为创建目录、用户、组的初始化准备工作
	]# gpasswd -a alice g2;gpasswd -a tom g3
	]# setfacl -m d:alice:rw  ../testdir #
	]# setfacl -m d:tom:r  ../testdir
	]# setfacl -m d:o:0  ../testdir
	]# getfacl ../testdir
	# file: ../testdir
	# owner: root
	# group: root
	user::rwx
	group::r-x
	other::r-x
	default:user::rwx
	default:user:alice:rw-
	default:user:tom:r--
	default:group::r-x
	default:mask::rwx
	default:other::---
	]# touch f1
	]# getfacl f1
	# file: f1
	# owner: root
	# group: root
	user::rw-
	user:alice:rw-
	user:tom:r--

课后作业:

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

        ]# setfacl -m u:user1:0,g:g1:rw f1
	]# getfacl f1
	# file: f1
	# owner: root
	# group: root
	user::rw-
	user:user1:---
	group::r--
	group:g1:rw-
	mask::rw-
	other::r--

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

        ]# setfacl -m d:user1:rw,d:g:g1:0 dir
	[root@CentOS6 testdir]# getfacl dir
	# file: dir
	# owner: root
	# group: root
	user::rwx
	group::r-x
	group:g1:---
	mask::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@CentOS6 testdir]#

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

    [root@CentOS6 data]# getfacl -R testdir > acl.txt
    [root@CentOS6 data]# setfacl -R -b /data/testdir
    [root@CentOS6 data]# cd testdir/
    [root@CentOS6 testdir]# getfacl ../testdir/
    # file: ../testdir/
    # owner: root
    # group: root
    user::rwx
    group::r-x
    other::r-x
    
    [root@CentOS6 testdir]# getfacl ../testdir/*
    # file: ../testdir/acl.txt
    # owner: root
    # group: root
    user::rw-
    group::r--
    other::r--
    
    # file: ../testdir/dir
    # owner: root
    # group: root
    user::rwx
    group::r-x
    other::r-x

    # file: ../testdir/f1
    # owner: root
    # group: root
    user::rw-
    group::r--
    other::r--

    [root@CentOS6 testdir]# setfacl -R --set-file=acl.txt /data/testdir/
    [root@CentOS6 testdir]# getfacl ../testdir/*
    # file: ../testdir/acl.txt
    # owner: root
    # group: root
    user::rw-
    user:user1:---
    group::r--
    group:g1:---
    mask::r-x
    other::r--

    # file: ../testdir/dir
    # owner: root
    # group: root
    user::rw-
    user:user1:---
    group::r--
    group:g1:---
    mask::r-x
    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/f1
    # owner: root
    # group: root
    user::rw-
    user:user1:---
    group::r--
    group:g1:---
    mask::r-x
    other::r--

    [root@CentOS6 testdir]#

原创文章,作者:提着酱油瓶打醋,如若转载,请注明出处:http://www.178linux.com/29977

(0)
提着酱油瓶打醋提着酱油瓶打醋
上一篇 2016-08-07 22:07
下一篇 2016-08-07 22:07

相关推荐

  • sed命令使用

    一、sed简介    sed是一种在线编辑器,一次处理一行内容。处理时,把当前处理的行存储在历史缓冲区,传给“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾。文件内容并没有改变,除非使用重定向存储输出。sed主要用来自动编辑一个或…

    Linux干货 2016-08-12
  • shell脚本语言中的选择执行

    shell脚本语言中的选择执行 概述 程序执行过程分为顺序执行、选择执行和循环执行。顺序执行是指程序按照步骤一步一步地运行。选择执行是指程序根据特定条件选择两项或者多项中的一项运行。循环执行是指程序根据特定条件重复执行直到某个节点结束,继续运行其他步骤。本篇文章从判断条件和条件判断式简要说明shell脚本语言中程序选择执行的用法。 shell脚本中的判断条件…

    Linux干货 2017-04-17
  • shell脚本编程 4

    Shell脚本编程4 一、杂项知识整理 1、数组赋值方法: declare -a files files=(/var/log/*.log)通配所有文件也可 2、创建临时文件: mktemp命令:创建的临时文件可避免冲突 mktemp  NAME.XXXX(x至少要出现三个) -d 创建临时目录 –tmpdir=/DIR 指明临时文件所存…

    Linux干货 2016-08-24
  • Linux命令格式、获取帮助、文件系统

    一、Linux的命令     (一)、概念和意义:             发起一个命令:请求内核将某个二进制程序运行为一个进程;      &nbs…

    Linux干货 2016-08-15
  • 笔记四、Linux基础入门-上半部

    前言 直接已经教大家如何创建虚拟机和安装CentOS 操作系统了,那么今天就来开始入门吧。linux对于新手来说并不难,linux的构造 http://www.178linux.com/68853 这篇博客里我已经讲解了,有兴趣最好看一下llinux下每个目录的作用。还有Linux的哲学思想。 这里我就开始介绍了。 一、用户登陆   &n…

    2017-02-23
  • mongodb 分片集群搭建

    集群架构 本次实验部署3台主机node1、node2、node3,2个副本集db1、db2作为分片,3台主机均有1个配置库实例 操作步骤 安装 node1上执行如下命令,完成后拷贝/mongodb目录到node2、node3 useradd mongodb   mkdir -p /mongodb/data/{…

    Linux干货 2016-11-06