8.3上课练习及课下作业

练习


上课练习

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

能查看文件大小,不能进入此目录,不能在此目录创建文件
能看到目录中的内容,不能查看目录内的大小及属性,仅能查看目录的相关属性
[xiaoming@localhost ~]$ ll -d qin
drwxrwxrw-. 2 root root 6 8月   3 22:10 qin
[xiaoming@localhost ~]$ ll -a qin
ls: 无法访问qin/.: 权限不够
ls: 无法访问qin/..: 权限不够
总用量 0
d????????? ? ? ? ?            ? .
d????????? ? ? ? ?            ? ..
[root@localhost xiaoming]# su xiaoming
[xiaoming@localhost ~]$ cd qin
bash: cd: qin: 权限不够
[xiaoming@localhost ~]$ ll qin
总用量 0
[xiaoming@localhost ~]$ touch qin/asd
touch: 无法创建"qin/asd": 权限不够

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

可以进入目录,可以在目录中创建文件,无法查看目录里面的内容

[root@localhost qiuzhaoxian]# ll
总用量 2360
drwxrwx-wx. 3 xiaoming xiaoming      30 8月   4 19:15 123
[t1@localhost /]$ cd /123/
[t1@localhost 123]$ ll
ls: 无法打开目录.: 权限不够
[t1@localhost 123]$ touch asd
[t1@localhost 123]$ echo dsad > asd
[t1@localhost 123]$ ll -d /123
drwxrwx-wx. 3 xiaoming xiaoming 40 8月   4 19:19 /123

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

不能修改和删除

[wangcai@localhost ~]$ echo hello > /testdir/file1
-bash: /testdir/file1: Permission denied
[wangcai@localhost ~]$ echo hello >> /testdir/file1           不能修改
-bash: /testdir/file1: Permission denied
[wangcai@localhost ~]$ rm /testdir/file1
rm: cannot remove ‘/testdir/file1’: Permission denied         不能删除

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

[root@localhost /]# cp /etc/fstab  /var/tmp/
[root@localhost /]# chown wangcai:sysadmins /var/tmp/fstab 
[root@localhost /]# ll /var/tmp/fstab
-rw-r--r--. 1 wangcai sysadmins 501 8月   4 19:32 /var/tmp/fstab
[root@localhost /]# chmod 660 /var/tmp/fstab
[root@localhost /]# ll /var/tmp/fstab
-rw-rw----. 1 wangcai sysadmins 501 8月   4 19:32 /var/tmp/fstab

5、 误删除了用户wangcai的家目录,请重建并恢复该用户家目录及相应的权限属性

mkdir /home/wangcai
cp -r /etc/skel/. /home/wangcai
chmod 700 /home/wangcai/

作业

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

[root@localhost ~]# mkdir -p /data/testdir 
[root@localhost ~]# groupadd g1
[root@localhost ~]# groupadd g2
[root@localhost ~]# groupadd g3
[root@localhost ~]# cd /data
[root@localhost data]# chgrp g1 testdir/
[root@localhost data]# chmod 2770 testdir/
[root@localhost data]# ll -d testdir/     
drwxrws---. 2 root g1 6 Aug  3 19:15 testdir/
[root@localhost data]# setfacl -m g:g2:rwx testdir/    //设置g2组用户对testdir目录有权限
[root@localhost data]# setfacl -m g:g3:rwx testdir/    //设置g3组对testdir目录有权限
[root@localhost data]# setfacl -m d:g:g2:rw testdir/ 设置默认g2组内成员对目录内操作的权限
[root@localhost data]# setfacl -m d:g:g3:r testdir/
[root@localhost data]# gpasswd -a alice g2
Adding user alice to group g2
[root@localhost data]# gpasswd -a tom g3
Adding user tom to group g3
[root@localhost data]# su alice
[alice@localhost data]$ cd testdir/
[alice@localhost testdir]$ touch f
[alice@localhost testdir]$ getfacl f
# file: f
# owner: alice
# group: g1
user::rw-
group::rwx                      #effective:rw-
group:g2:rw-
group:g3:r--
mask::rw-
other::---

设置/testdir/f1的权限,使user1用户不可以读写执行,g1组可以读写/testdir/dir的权限,
使新建文件自动具有acl权限:user1:rw,g1:—
备份/testdir目录中所有文件的ACL,清除/testdir的所有ACL权限,并利用备份还原

   touch f1
   setfacl -m u:user1:0 f1 
   setfacl -m g:g1:rw f1  
   setfacl -m g:g1:rwx /testdir
   setfacl -m u:user1:rwx /testdi
   setfacl -m d:u:user1:rw /testdir/
   setfacl -m d:g:g1:- /testdir/
   getfacl ../testdir/
   getfacl /testdir/f1 
   getfacl -R ../testdir/ >acl.sql
   setfacl -R -b /testdir
   setfacl -R --set-file=acl.sql /testdir/
   getfacl /testdir/

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

(0)
qzxqzx
上一篇 2016-08-05
下一篇 2016-08-05

相关推荐

  • LVS集群讲解

    目录 LVS介绍 LVS集群类型 LVS调度算法 ipvsadm/ipvs LVS-NAT模型演练 LVS-DR模型演练 LVS定义多集群 FWM实现多集群统一调度 LVS持久连接  每端口持久 每FWM持久 每客户端持久 LVS介绍 一般来说,LVS采用三层结构:负载调度器、服务器池、共享存储。工作在TCP/IP协议的四层,其转发是依赖于四层协议…

    Linux干货 2016-11-07
  • Shell编程之位置变量

           linux中命令可以接受参数,同样的,shell脚本也可以接受参数。这些参数用$1、$2、$3…$n表示。       $0  表示脚本本身       $1  传递给脚本的第1个参数 $2  传…

    Linux干货 2016-08-12
  • 源码包编译安装

    程序包编译安装:      Application-VERSION-release.src.rpm–> 安装后,使用rpmbuild命令制作成二进制格式的rpm包,而后再安装      源代码 –> 预处理 –> 编译 &#8…

    Linux干货 2016-08-23
  • 第三周作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 2、取出最后登录到当前系统的用户的相关信息。 3、取出当前系统上被用户当作其默认shell的最多的那个shell。 4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存 至/tmp/maxusers.txt文件中。 5、取出当前主机…

    Linux干货 2016-11-21
  • 配置LAMP (php-fpm模式)部署步骤

    配置LAMP (php-fpm模式)部署步骤 1.安装mariadb yum install maridb-server -y 1).配置server.cnf cp /etc/my.cnf.d/server.cnf{,.back} vim /etc/my.cnf.d/server.cnf ##mariadb服务器端配置文件 [mysqld] ##以下项是优化…

    Linux干货 2017-06-02
  • 磁盘管理

    设备类型分为字符设备和块设备 主设备号用来标识设备类型,次设备号标识同一类型下的不同设备 硬盘设备命名: scsi,sata,sas,usb:/dev/sd 不同设备/dev/sda  /dev/sdb 同一设备不同分区:/dev/sda1,/dev/sdb2…… 硬盘: 一片磁盘的一面叫做盘面,一张盘片有两个盘面 每个盘面有一个磁头,最多有256…

    Linux干货 2016-08-30