1、列出当前系统上所有已经登录的用户的用户名,注意:同一个用户登录多次,则只显示一次即可。

答:

马哥2016全新Linux+Python高端运维班第三周作业_作业

2、取出最后登录到当前系统的用户的相关信息。

答:马哥2016全新Linux+Python高端运维班第三周作业_作业_02

3、取出当前系统上被用户当作其默认shell的最多的那个shell。

答:①  查看用户的shell信息可在/etc/passwd文件中查看,首先我们要查到被用户当做默认shell最多的有哪些,如下:

马哥2016全新Linux+Python高端运维班第三周作业_作业_03

       ②  虽然取出来了,但是我们只需要知道最多的一个,其他的并不想知道,那么我们再次对这个结果排序并取出被用户当做默认shell的最多的那个,如下:

马哥2016全新Linux+Python高端运维班第三周作业_linux_04

4、将/etc/passw d 中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。

答:该题的解题思路是先把/etc/passwd文件中的小写字母转换成大写,然后以第三个字段数值排序并取出最后10个用户信息,最后将信息保存至/tmp/maxusers.txt中;

马哥2016全新Linux+Python高端运维班第三周作业_第三周_05马哥2016全新Linux+Python高端运维班第三周作业_第三周_06

5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。

答:①  首先ifconfig查看结果;

马哥2016全新Linux+Python高端运维班第三周作业_第三周_07

      ②  筛选我们想要的信息,我们只需要IP地址,由于空格太多,使用cut命令还得计算空格数量,太耗时间,我们可以用grep命令来筛选;

马哥2016全新Linux+Python高端运维班第三周作业_作业_08       ③  第一行为我们需要的结果,取出即可;

马哥2016全新Linux+Python高端运维班第三周作业_第三周_09

6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。

答:由于我的/etc目录下.conf结尾的文件数量多,所以显示结果未截完全,效果已达到。马哥2016全新Linux+Python高端运维班第三周作业_第三周_10

7、显示/var目录下一级子目录或文件的总个数。

答:①  显示/var目录下一级子目录个数

马哥2016全新Linux+Python高端运维班第三周作业_作业_11

      ②  显示/var下文件的总个数,思路同上

马哥2016全新Linux+Python高端运维班第三周作业_第三周_12

8、取出/etc/group文件中第三个字段数值最小的10个组的名字。

答:马哥2016全新Linux+Python高端运维班第三周作业_第三周_13

9、将/etc/fstab和/etc/issue文件的内容合并为同一个内容后保存至/tmp/etc.test文件中。

答:①  分别查看两个文件中的内容

马哥2016全新Linux+Python高端运维班第三周作业_作业_14      ②  合并保存为一个文件中

马哥2016全新Linux+Python高端运维班第三周作业_第三周_15

10、请总结描述用户和组管理类命令的使用方法并完成以下练习:

答:用户管理类命令:useradd,userdel,id,who,passwd,usermod,finger,chsh,chage,chfn;

      组管理类命令:groupadd,groupdel,groupmod,gpasswd,newgrp;

  (1)、创建组distro,其GID为2016;

答:马哥2016全新Linux+Python高端运维班第三周作业_linux_16

  (2)、创建用户mandriva, 其ID号为1005;基本组为distro;

答:马哥2016全新Linux+Python高端运维班第三周作业_第三周_17

  (3)、创建用户mageia,其ID号为1100,家目录为/home/linux;

答:马哥2016全新Linux+Python高端运维班第三周作业_作业_18

  (4)、给用户mageia添加密码,密码为mageedu;

答:[root@csd ~]# passwd mageia 

   更改用户 mageia 的密码 。

   新的 密码:mageedu

   无效的密码: 它基于字典单词

   无效的密码: 过于简单

   重新输入新的 密码:mageedu

   passwd: 所有的身份验证令牌已经成功更新。

  (5)、删除mandriva,但保留其家目录;

答:马哥2016全新Linux+Python高端运维班第三周作业_linux_19

  (6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin;

答:马哥2016全新Linux+Python高端运维班第三周作业_linux_20

  (7)、修改slackware的默认shell为/bin/tcsh;

答:马哥2016全新Linux+Python高端运维班第三周作业_第三周_21

  (8)、为用户slackware新增附加组admins;

答:马哥2016全新Linux+Python高端运维班第三周作业_作业_22

  (9)、为slackware添加密码,且要求密码最短使用期限为3天,最长为180天,警告为3天;

答:马哥2016全新Linux+Python高端运维班第三周作业_第三周_23

  (10)、添加用户openstack,其ID号为3003, 基本组为clouds,附加组为peguin和nova;

答: [root@csd ~]# useradd openstack -u 3003

   [root@csd ~]# groupadd clouds

   [root@csd ~]# groupadd nova

   [root@csd ~]# usermod -g clouds -G peguin,nova openstack

   [root@csd ~]# id openstack

   uid=3003(openstack) gid=3004(clouds) 组=3004(clouds),2017(peguin),3005(nova)

  (11)、添加系统用户mysql,要求其shell为/sbin/nologin;

答: [root@localhost ~]# useradd -u 10 -s /bin/nologin  mysql

    [root@localhost ~]# cat /etc/passwd | tail -1

    mysql:x:10:10::/home/mysql:/bin/nologin

  (12)、使用echo命令,非交互式为openstack添加密码。

答: [root@csd ~]# cat /etc/passwd | grep "openstack"

   openstack:x:3003:3004::/home/openstack:/bin/bash

   [root@csd ~]# echo "mageedu" | passwd --stdin openstack

   更改用户 openstack 的密码 。

   passwd: 所有的身份验证令牌已经成功更新。