作业–权限管理

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

[root@liang testdir]# su wangcai
[wangcai@liang testdir]$ ll -a
总用量 8
drwxr-xr-x.  2 4322 root 4096 8月   5 06:17 .
dr-xr-xr-x. 26 root root 4096 8月   5 03:28 ..
-r--r--r--.  1 root root    0 8月   5 06:17 file1
[wangcai@liang testdir]$ echo aaaaaaaaa >> file1 
bash: file1: 权限不够
[wangcai@liang testdir]$ rm -f file1 
rm: 无法删除"file1": 权限不够

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

[root@liang tmp]# cp /etc/fstab /var/tmp/
[root@liang tmp]# ll
总用量 4
-rw-r--r--. 1 root root 805 8月   5 06:25 fstab
[root@liang tmp]# chown wangcai:sysadmins fstab 
[root@liang tmp]# chmod 660 fstab 
[root@liang tmp]# ll
总用量 4
-rw-rw----. 1 wangcai sysadmins 805 8月   5 06:25 fstab

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

[root@liang home]# mkdir wangcai
[root@liang home]# cp -r /etc/skel/. /home/wangcai/
[root@liang home]# chown -R wangcai:wangcai wangcai/
[root@liang home]# ll -a wangcai/
总用量 24
drwxr-xr-x.  3 wangcai wangcai 4096 8月   5 06:29 .
drwxr-xr-x. 18 root    root    4096 8月   5 06:29 ..
-rw-r--r--.  1 wangcai wangcai   18 8月   5 06:29 .bash_logout
-rw-r--r--.  1 wangcai wangcai  176 8月   5 06:29 .bash_profile
-rw-r--r--.  1 wangcai wangcai  124 8月   5 06:29 .bashrc
drwxr-xr-x.  2 wangcai wangcai 4096 8月   5 06:29 .gnome2

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

[root@liang /]# groupadd g1
[root@liang /]# groupadd g2
[root@liang /]# groupadd g3
[root@liang /]# useradd -G g2 alice
[root@liang /]# useradd -G g3 tom
[root@liang /]# id alice
uid=4327(alice) gid=4331(alice) 组=4331(alice),4329(g2)
[root@liang /]# id tom
uid=4328(tom) gid=4332(tom) 组=4332(tom),4330(g3)
[root@liang /]# mkdir -p /data/testdir
[root@liang /]# cd /data/
[root@liang data]# ll
总用量 4
drwxr-xr-x. 2 root root 4096 8月   5 06:39 testdir
[root@liang data]# chgrp g1 testdir/
[root@liang data]# chmod g+sw,o= testdir/
[root@liang data]# ll
总用量 4
drwxrws---. 2 root g1 4096 8月   5 06:48 testdir
[root@liang data]# setfacl -m g:g2:rwx,g:g3:rwx testdir/
[root@liang data]# setfacl -m d:g:g2:rw,d:g:g3:r testdir/
[root@liang data]# getfacl testdir/
# file: testdir/
# owner: root
# group: g1
# flags: -s-
user::rwx
group::rwx
group:g2:rwx
group:g3:rwx
mask::rwx
other::---
default:user::rwx
default:group::rwx
default:group:g2:rw-
default:group:g3:r--
default:mask::rwx
default:other::---

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

[root@liang /]# su - user1
[user1@liang ~]$ umask u=rw,g=,o=
[user1@liang ~]$ umask -p >> .bashrc 
[user1@liang ~]$ cat .bashrc 
# .bashrc

# Source global definitions
if [ -f /etc/bashrc ]; then
    . /etc/bashrc
fi

# User specific aliases and functions
umask 0177

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

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

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

[root@liang /]# ll testdir/
总用量 4
drwxr-xr-x. 2 root root 4096 8月   5 07:27 dir
-rw-r--r--. 1 root root    0 8月   5 07:27 f1
[root@liang /]# setfacl -m u:user1:0,g:g1:rw /testdir/f1
[root@liang /]# setfacl -m d:u:user1:rw,d:g:g1:0 /testdir/dir/
[root@liang /]# getfacl -R /testdir/ > acl.txt
[root@liang /]# setfacl -R -b /testdir/
[root@liang /]# setfacl -R --set-file=acl.txt /testdir/

原创文章,作者:苦涩咖啡,如若转载,请注明出处:http://www.178linux.com/29210

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

相关推荐

  • zabbix如何监控webserver

    1、模版 2、应用集 3、项目 4、触发器

    Linux干货 2016-02-19
  • 没有自动ip解决办法

    用虚拟机下载好centos6.9后,本来想查看ip地址,结果发现没有自动获取ip地址,在网上找了很多方法都不行,问题如下: 用命令ifconfig查看ip地址,发现没有,如下 查看eth0如下 解决办法如下: 1、关闭NetworkManager服务 2、关闭NetworkManager开机启动 3、添加 /etc/sysconfig/network-scr…

    2017-07-16
  • CentOS系统启动流程——深入了解linux

    CentOS系统启动流程 ·Linux系统的组成部分:内核+根文件系统      内核:进程管理、内存管理、网络协议栈、文件系统、驱动程序、安全功能              IPC:Inter Pr…

    Linux干货 2016-09-11
  • Linux man中文帮助安装

    虽然在CentOS操作系统中具有多语言包,但其man手册是英文的,对于新手来说能够使用中文man手册将加快学习速度

    CentOS系统安装中文man手册

    Linux干货 2017-11-26
  • 07程序包管理器简介

    源代码命名方式,name-version.tar.gz|bz2|xz,    –>version:major.minor.release 要将一个源代码程序安装到Linux系统上,一般有两个方法。 1、找到源代码,手动编译安装。解压,./configure  –> make –&g…

    Linux干货 2016-11-03
  • wk_03作业

    1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。 who |cut -d' ' -f1|uniq 2、取出最后登录到当前系统的用户的相关信息。 # who |tail -1 |cut -d &#03…

    Linux干货 2016-12-15