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
下一篇 2016-08-05

相关推荐

  • Nginx工作原理和优化、漏洞。

    1.  Nginx的模块与工作原理 Nginx由内核和模块组成,其中,内核的设计非常微小和简洁,完成的工作也非常简单,仅仅通过查找配置文件将客户端请求映射到一个location block(location是Nginx配置中的一个指令,用于URL匹配),而在这个location中所配置的每个指令将会启动不同的模块去完成相应的工作。 Nginx的模块…

    Linux干货 2015-04-04
  • 磁盘管理

    磁盘,分区,文件系统

    Linux干货 2017-12-02
  • linux用户和组的配置文件

    1./etc/passwd:用户及其属性信息(用户名,密码,uid,gid,gecos注释性描述信息,家目录,登录shell)在/etc/passwd文件中每个用户都有一个对应的记录行,它记录了这个用户的一些基本属性。系统管理员经常会接触到这个文件的修改以完成对用户的管理工作。这个文件对所有用户都是可读的。      …

    2017-07-22
  • ​Bash2

    字串比较时变量最好使用"" 这样就不会报错了,只是退出码不为0 组合条件:     与:[ condition1 -a condition2 ]或condition1 && condition2     或:[ condition1 -o co…

    Linux干货 2016-09-25
  • 文件系统初步了解

    Linux文件系统的基础特性: 1文件名严格区分大小写 2所有文件都们于根目录下,FHS 3路径以/做为分隔符 4每个文件的名称可使用除/以外任意字符,单个名称最长不能超出255个字 FHS:Filesystem Hierarchy Standard(文件系统目录标准)的缩写 多数Linux版本采用这种文件组织形式,类似于Windows操作系统中c盘的文件目…

    Linux干货 2015-04-27
  • Linux程序包管理

    Linux程序包管理 RPM包基础 RPM YUM 编译安装 概述 Linux上的程序包管理,是我们的必备技能,本文将从三个视角:rpm、yum、源码编译来浅析Linux的程序包管理。首先,我们来看下本文的主要内容: – 程序包的命名- RPM: 程序包管理器    安装、卸载、升级、查询…

    Linux干货 2016-08-29