8.3_Linux习题和作业

课堂习题

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

答:不能cd进该目录

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

答:不能查看目录内的文件列表,不能cd,也不能查看目录里面文件的元数据

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

答:不能修改不能删除

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

[root@centos6 ~]# cp -r /etc/fstab /var/tmp/
[root@centos6 ~]# chown wangcai:sysadmins /var/tmp/fstab
[root@centos6 ~]# chmod g=rw,o= /var/tmp/fsta

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

[root@centos6 ~]# rm -rf /home/wangcai
[root@centos6 ~]# mkdir /home/wangcai
[root@centos6 ~]# cp -r /etc/skel/. /home/wangcai/
[root@centos6 ~]# chown -R wangcai: /home/wangcai/
[root@centos6 ~]# chmod 700 /home/wangcai/

6.创建sysadmins组,将用户user1,user2,user3加入sysadmins组中,将user3设置为sysadmins的管理员,用user3 登录,将user2从组中移除,设置 sysadmins的密码centos,设置user1 在创建新文件时,文件的所属组为sysadmins,删除user1…3,删除sysadmins

[root@centos ~]# groupadd sysadmins
[root@centos ~]# useradd -G sysadmins user1
[root@centos ~]# useradd -G sysadmins user2
[root@centos ~]# useradd -G sysadmins user3
[root@centos ~]# gpasswd -A user3 sysadmins
[user3@centos ~]$ gpasswd -d user2 sysadmins
Removing user user2 from group sysadmins
 
[user3@centos ~]$ gpasswd sysadmins
Changing the password for group sysadmins
New Password: 
Re-enter new password:
 
[root@centos ~]# usermod -g sysadmins user1
 
[user1@centos ~]$ touch a
[user1@centos ~]$ ll a
-rw-r--r--. 1 user1 sysadmins 0 Aug  4 12:31 a
 
[root@centos ~]# userdel -r user1
userdel: group user1 not removed because it is not the primary group of user user1.
[root@centos ~]# userdel -r user2
[root@centos ~]# userdel -r user3
[root@centos ~]# groupdel sysadmins

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

[root@centos ~]# useradd alice
[root@centos ~]# mkdir /data/testdir
[root@centos ~]# groupadd g1
[root@centos ~]# groupadd g2
[root@centos ~]# groupadd g3
[root@centos ~]# chgrp g1 /data/testdir
[root@centos ~]# chmod 2770 /data/testdir
[root@centos ~]# setfacl -m g:g2:rw /data/testdir
[root@centos ~]# setfacl -m g:g3:rw /data/testdir
[root@centos ~]# setfacl -m d:g:g2:rw /data/testdir
[root@centos ~]# setfacl -m d:g:g3:r /data/testdir
[root@centos ~]# gpasswd -a tom g2
[tom@centos ~]$  touch f /data/testdir
[root@centos ~]# ll /data/testdir

作业

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


权限对于文件的意义:

r: 可使用文件查看类工具获取其内容

w: 可修改内容,可破坏内容,但不能删除文件本身

x: 针对二进制可执行的程序或脚本,可以把此文件提请内核启动为一个进程,普通文件不需要执行权限

权限对于目录的意义:

r: 可以使用ls命令查看目录内容的文件信息

w: 可以创建、删除文件

x: 可以使用ls -l命令来查看目录内容的文件信息,并且可以使用cd命令切换此目录为工作目录

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

区别:

(1)umask备份数据的时候,权限不会丢失,facl就会丢失

(2)umask对于批量对其他用户和组的设置比较方便,但是对个人设置权限就不行

     facl对于批量设置对其他用户设置比较麻烦,但是对个人或者个别人设置就很灵活

(3)umask能通过augo的模型、rwx模型、和八进制的模型来设置权限,facl只能通过rwx模型来设置权限

联系:

(1)都能通过一定的规则来限制其他用户的默认权限

(2)都能限制用户和组的权限

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

SUID:

当一个用户去运行该程序的时候,该用户继承所有者的权限。SUID只能应用在二进制程序里面,不能作用在目录上面

SGID:

(1)如果应用在二进制程序里面,启动为进程之后,其进程的属主为原程序文件的属组,这种情况跟SUID功能类似(2)如果应用在目录里面,所有用户在此目录下面创建的文件(包括子目录)的时候的属组跟目录的属组一致。此作用通常用于创建一个协作目录。

STICKY 粘滞位:

具有写权限的目录通常用户可以删除该目录中的任何文件,无论该文件的权限或拥有权,在目录设置Sticky位,只有文件的所有者或root可以删除该文件。STICKY位作用在文件上面的话没有用。

SUID,SGID,和STICKY都必须要配合有x的权限的。

4.设置user1,使之新建文件权限为rw – – – – – – –

[user1@centos ~]$ echo 'umask 0266' >> .bashrc
[user1@centos ~]$ exit

[user1@centos ~]$ touch b
[user1@centos ~]$ ll
total 0
-rw-------. 1 user1 user1 0 Aug  4 23:53 b

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

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

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

[root@centos testdir]# setfacl -m u:user1:r f1
[root@centos testdir]# setfacl -m g:g1:rw f1
[root@centos testdir]# getfacl f1
# file: f1
# owner: root
# group: root
user::rw-
user:user1:r--
group::r--
group:g1:rw-
mask::rw-
other::r--
[root@centos testdir]# setfacl -m d:u:user1:rw /testdir/dir/
[root@centos testdir]# setfacl -m d:g:g1:--- /testdir/dir
[root@centos testdir]# getfacl /testdir/dir
getfacl: Removing leading '/' from absolute path names
# file: testdir/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@centos testdir]# getfacl -R * > /root/acl.bak
[root@centos testdir]# setfacl -Rb *
[root@centos testdir]# setfacl -R --set-file=/root/acl.bak *

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

(0)
~微风~~微风~
上一篇 2016-08-05 10:17
下一篇 2016-08-05 10:17

相关推荐

  • 标准I/O和管道

    程序包含指令和数据,经常需要读入数据和输出数据 打开的文件都有一个fd:file descriptor(文件描述符) 用nano打开一个文件,查看其PID  0,1,2就是所谓的文件描述符。 在Linux里输入输出和错误都由这三个描述符来表示 标准输入(STDIN) -0 默认接受来自键盘的输入 标准输出(STDOUT)-1 默认输出到终端窗口 标…

    Linux干货 2016-08-08
  • 加密解密基础、PKI以及自建私有CA

    加密解密基础、PKI以及自建私有CA 加密是以某种特殊的算法改变原有的信息数据,使得未授权的用户即使获得了已加密的信息,但因不知解密的方法,仍然无法了解信息的内容。 解密就是加密的逆向操作,将加密过的不可读的数据经过处理,能够是之前不可读的信息还原成可读信息。 PKI是Public Key Infrastructure的首字母缩写,翻译过来就是公钥基础设施;…

    Linux干货 2016-12-07
  • Tomcat性能优化-2

    修改Connector运行模式 启用NIO 或 APR bio介绍 bio(blocking I/O,阻塞式I/O操作),表示Tomcat使用的是传统的Java I/O操作 默认模式,性能最差,没有经过任何优化处理和支持 nio模式 nio(non-blocking I/O),Java SE 1.4…

    Linux干货 2016-09-19
  • keepalive高可用haproxy实现URL资源的动静分离

    keepalive高可用haproxy实现动静分离URL资源 实现要点: (1) 动静分离discuzx,动静都要基于负载均衡实现; (2) 进一步测试在haproxy和后端主机之间添加varnish缓存; (3) 给出拓扑设计; (4) haproxy的设定要求:     (a…

    Linux干货 2016-11-12
  • 逻辑卷

    一、作业 1、创建一个2G的文件系统,块大小为2048byte,预留1%可用空间,文件系统ext4,卷标为TEST,要求此分区开机后自动挂载至/test目录,且默认有acl挂载选项 2、写一个脚本,完成如下功能: (1) 列出当前系统识别到的所有磁盘设备 (2) 如磁盘数量为1,则显示其空间使用信息 否则,则显示最后一个磁盘上的空间使用信息 3、创建一个可用…

    Linux干货 2016-08-30
  • bash基础 if elif 多条件判断 for循环

    bash基础 if elif 多条件判断 for循环

    Linux干货 2017-10-31