本文共 4220 字,大约阅读时间需要 14 分钟。
1234
作业6:
注意:此作业内容最好在CentOS7系统中操作实现;
一、简答:
背景描述:xiaoqiang、wangcai和tangbohu三个用户的基本组都是与用户名相同的组,但是他们都以qiuxiang组为附属组;
1.当用户xiaoqiang对/testdir目录无执行权限时和无读权限时,分别意味着小强无法完成哪些操作?
[root@centos-64-72a ~]# groupadd qiuxiang(创建qiuxiang组)
[root@centos-64-72a ~]# tail -1 /etc/group(查询qiuxiang的GID)
qiuxiang:x:1005:
[root@centos-64-72a ~]# useradd xiaoqiang -G 1005 ;useradd wangcai -G 1005;useradd tangbohu -G 1005
(同时创建xiaoqiang、wangcai和tangbohu三个用户,同时指定他们的附属组为qiuxiang)
[root@centos-64-72a ~]# tail -4 /etc/group
(查询刚刚创建三个用户的组状态)
qiuxiang:x:1005:xiaoqiang,wangcai,tangbohu
xiaoqiang:x:1006:
wangcai:x:1007:
tangbohu:x:1004:
如果xiaoqiang用户只有写入权限的话,xiaoqiang用户将无法
对/testdir目录进行任何的操作,因为对目录来讲执行权限是最基础的权限如果没有执行权限,将无法进行任何操作;
2.当用户wangcai对/testfile文件只有写权限时,是否可修改和删除该文件?如果不能,那么wangcai能够对该文件做哪些操作?
如果wangcai只有写入权限的话,wangcai用户将可对/testdir文件进行定向输出,因为文件没有执行和读取权限,所以无法对该文件进行删除和修改;
3.如果用户tangbohu在/tmp目录中建立了一个目录mydir,他想要让wangcai和xiaoqiang这两个用户能够在该目录中创建、修改和删除文件,你能想到哪些办法来实现这个目的?
[tangbohu@centos-64-72a ~]$ mkdir -pv /tmp/mydir(创建/tmp/mydir目录)
mkdir: 已创建目录 "/tmp/mydir"
第一种方法:
[tangbohu@centos-64-72a ~]$ chmod 757 /tmp/mydir(修改mydir目录的其他组权限)
第二种方法:
[tangbohu@centos-64-72a ~]$ id(查看用户组ID)
uid=1004(tangbohu) gid=1004(tangbohu) 组=1004(tangbohu),1005(qiuxiang) 环境=unconfined_u:unconfined_r:unconfined_t:s0-s0:c0.c1023
[tangbohu@centos-64-72a ~]$ chgrp 1005 /tmp/mydir(修改目录属组为1005(qiuxiang),因为xiaoqiang、wangcai和tangbohu三个用户同时在该组)
[tangbohu@centos-64-72a ~]$ chmod 775 /tmp/mydir/(修改mydir目录的属组的权限)
第三种方法:
[tangbohu@centos-64-72a ~]$ su root(切换到root用户)
密码:
[root@centos-64-72a tangbohu]# usermod -g 1004 wangcai;usermod -g 1004 xiaoqiang(修改xiaoqiang、wangcai的属主)
[root@centos-64-72a tangbohu]# exit(退出root用户)
第四种方法:
[root@centos-64-72a xiaoqiang]#su - root(切换root用户)
[root@centos-64-72a wangcai]#su - root
二、操作:
1.复制/etc/fstab文件到/var/tmp下,同时设置文件属主为wangcai有读写权限,属组为xiaoqiang组有只读权限,其他人无权限,请写出命令;
[root@centos-64-72a tmp]# install -o wangcai -g xiaoqiang -m 740 /etc/fstab /var/tmp
(用install命令在复制文件的同时还能修改文件的权限)
2.不使用useradd命令创建用户xiaoming,该用户有如下属性:
1) UID为8089;
[root@centos-64-72a ~]# echo "xiaoming:x:8089:8089:Wang Xiaoming:/home/xiaoming:/bin/bash" >>/etc/passwd
(直接在etc/passwd文件里追加也可以创建用户)
[root@centos-64-72a ~]# echo "xiaoming:x:8089:">>/etc/group(追加小明的组信息)
[root@centos-64-72a ~]# cp -a /etc/skel /home/xiaoming(复制家目录模板给小明)
[root@centos-64-72a ~]# chmod 700 /home/xiaoming(更改家目录权限为700)
[root@centos-64-72a ~]# chown -R 8089:8089 /home/xiaoming(把创建的家目录属主给xiaoming用户)
[root@centos-64-72a ~]# echo "xiaoming::17262:5:30:3:7::" >>/etc/shadow
[root@centos-64-72a ~]# passwd xiaoming
更改用户 xiaoming 的密码 。
2) 主要组为xiaoming,gid为8089;
3) 其用户全名为"Wang Xiaoming";
4) 家目录在/home/xiaoming;
5) 默认登录shell为/bin/bash;
6) 密码修改之后5天内不能再次修改密码;
7) 密码最多使用30天;
8) 密码过期前3天开始提醒用户修改密码;
9) 密码过期后,7天之内不会禁止用户登录;
3.用户xiaoming在他自己的家目录中创建了一个文件project.plan,为了想要让wangcai用户能够读取到该文件的内容,xiaoming将/bin/cat文件复制到/tmp/xmcat,/tmp/xmcat只有属主xiaoming和wangcai用户能够执行;每次wangcai执行"[wangcai@localhost ~]$ /tmp/xmcat /home/xiaoming/project.plan"命令就能看到该文件的内容;
[xiaoming@centos-64-72a ~]$ touch project.plan(创建project.plan)
[xiaoming@centos-64-72a ~]$ install -m 770 /home/xiaoming/project.plan /tmp/xmcat
(复制xiaoming将/bin/cat文件复制到/tmp/xmcat同时修改权限)
[xiaoming@centos-64-72a ~]$ su -c "usermod -g 8089 wangcai"
密码:
[wangcai@centos-64-72a ~]$ /tmp/xmcat /home/xiaoming/project.plan
/tmp/xmcat:行1: 123: 未找到命令
三、逻辑关系练习:
1.如果在文件系统中有/backup目录就显示这个目录已经存在,否则就创建之;
[root@centos-64-72a ~]# ! ll backup && mkdir -pv backup(如果没有backup则建立)
ls: 无法访问backup: 没有那个文件或目录
mkdir: 已创建目录 "backup"
2.如果在文件系统中有/backup目录就将/etc目录中所有.conf结尾的一级非目录文件(不包含.conf结尾的子目录中的文件)备份到该目录中;
[root@centos-64-72a ~]# ll backup&&cp -a /etc/*.conf ./backup(如果有/backup目录,就复制/etc下.conf结尾的文件)
[root@centos-64-72a ~]# ! ll backup||cp -a /etc/*.conf ./backup(取反义,相当于ll backup&&cp -a /etc/*.conf ./backup)
3.请尝试说明下列命令的意义:
(! id qhdlink &> /dev/null || ! ls -d /home/qhdlink &> /dev/null) && echo "An error ocurs." || userdel -r qhdlink
! (id qhdlink &> /dev/null && ls -d /home/qhdlink &> /dev/null) && useradd -md /home/qhdlink qhdlink || echo "An error ocurs."
如果用户qhdlink不存在且家目录也不存在,则显示“发生一个错误”,否则就删除该用户,连同其家目录;
如果用户qhdlink不存在并且用户qhdlink的家目录也不存在,则创建用户并强制创建其家目录于/home/qhdlink qhdlink,否则就显示“发生一个错误”
本文转自谁等了谁 51CTO博客,原文链接:http://blog.51cto.com/12486569/1913694
转载地址:http://titil.baihongyu.com/