第三周作业

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

答:who | cut -f 1 -d " " | sort -u

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

答:who | tail -n 1

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

答:cut -f7 -d: /etc/passwd | sort | uniq -c | sort -n | tail -n 1

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

答:sort -t: -k3 -n /etc/passwd | tail -n 10 | tr 'a-z' 'A-Z' > /tmp/maxusers.txt

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

答:ifconfig | grep "inet.*" | cut -d " " -f 10

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

答:find /etc -name "*.conf" | tr 'a-z' 'A-Z' > /tmp/etc.conf

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

答:ls -R /var | wc -l

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

答:sort -t: -k3 -n /etc/group | head -n 10 | cut -d: -f1

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

答:cat /etc/fstab /etc/issue > /tmp/etc/test

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

答:用户与组管理有“创建”,”编辑“,”查询“,”删除“等命令,分别表述如下:

  创建命令

         useradd:创建新用户

               -u:指定uid

               -g:指定gid

               -s:指定登录的shell

               -G:指定附加组

               -d:指定home目录

               -c:用户注释说明

               -r:指定新建用户属于系统用户

         groupadd:创建新组

               -g:指定gid

               -r:指定为系统组

   编辑命令

          usermod:编辑已有用户

               -a:添加进附加组(与-G一同使用)

               -G:指定附加组

               -c:修改注释信息

               -u:修改uid

               -g:修改gid

               -d:修改变更为新的home目录

               -L:锁定用户

               -U:解锁用户

               -l login_name:指定新的用户登录名

          groupmod:编辑已有组

               -g:修改gid

               -n group_name:指定新的组名

      查询命令

             id:查询当前用户信息

             id username:查询指定用户名信息

             cat /etc/group:显示系统下所有组以及组内用户列表信息

       删除命令

              userdel:删除用户

                   -f  –force:强制删除,即使用户当前属于登录状态

                   -r  –remove:删除用户时,其home目录一并删除

              groupdel:删除组

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

答:groupadd -g 2016 distro

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

答:useradd -u 1005 -g 2016 mandriva

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

答:useradd -u 1100 -d /home/linux mageia

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

答:echo ‘mageedu' | passwd –stdin mageia

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

答:userdel mandriva

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

答:useradd -u 2002 -g 2016 -G peguin slackware

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

答:usermod -s /bin/tcsh slackware

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

答:groupadd admins

       usermod -G admins slackware

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

答:passwd -n 3 -x 180 -w 3 slackware

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

答:groupadd clouds;groupadd peguin;groupadd nova

       useradd -u 3003 -g clouds_gid  -G peguin openstack

       useradd -u 3003 -g clouds_gid  -G nova openstack

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

答:useradd -r -s /sbin/nologin mysql

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

答:echo 'password' | passwd –stdin openstack

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

(0)
N24_shishenN24_shishen
上一篇 2016-11-25
下一篇 2016-11-26

相关推荐

  • shell脚本之测试命令(test、[])

    话不多说,直接开车 在编写shell脚本中,我们经常需要判断命令执行的正确与否,从而进行不同的操作。首先我们来介绍下条件性的执行操作符:根据退出状态而定,命令可以有条件地运行。其中,利用echo的话方便我们对测试结果的查看。 (1)&& 代表条件性的AND THEN 可以理解为短路与:当&&前面命令为真时,执行&am…

    Linux干货 2017-08-05
  • 马哥教育网络班21期-第六周课程练习

    第六周作业 请详细总结vim编辑器的使用并完成以下练习题 1、复制/etc/rc.d/rc.sysinit文件至/tmp目录,将/tmp/rc.sysinit文件中的以至少一个空白字符开头的行的行首加#; [root@qq tmp]# cp /etc/rc.d/rc.sysinit /tmp [root@qq&nbsp…

    Linux干货 2016-08-02
  • sed 相关概念总结

    文件查看命令:cat, tac,rev cat [OPTION]… [FILE]… -E: 显示行结束符$ -n: 对显示出的每一行进行编号 -A:显示所有控制符 -b:非空行编号 -s:压缩连续的空行成一行 [root@CentOS7 ~]# cat yyy [root@CentOS7 ~]# cat -A yyy $ tac: 把…

    Linux干货 2016-08-12
  • 系统基础之Btrfs文件系统详解

    btrfs文件系统:技术预览版(centos7) 描述: Btrfs(B-tree,Butter FS,Better fs),GPL授权,Orale,2007 写实复制特性(Cow)     cp –reflink (只能在btrfs文件系统中使用) 想取代ext系统系统, 支…

    Linux干货 2016-09-21
  • 磁盘管理

    磁盘设备 一切皆文件 所有的Linux中的设备都可以使用下面命令进行操作:open(), read(), write(), close()(这些是C的函数) 块设备:随机访问 字符设备:线性访问 设备号码: 主设备号:major number,标识设备类型 8是主要设备编号,代表类型 次设备号:minor number…

    Linux干货 2016-09-01
  • 系统自动化安装

    系统自动化安装:实现同时部署多台操作系统,批量进行安装linux系统 CentOS系统安装     系统启动流程:       bootloader–>kernel(initaramfs)–>rootfs–>/sbi…

    Linux干货 2016-09-22

评论列表(2条)

  • luoweiro
    luoweiro 2016-11-30 23:48

    作业完成的很仔细,不过如果能排版注意一些会更好,第5题答案需要多方验证,请自行下去再去考虑一下。

    • N24_shishen
      N24_shishen 2016-12-06 22:48

      @luoweiro第5题多方验证是啥含义,没有看懂,是指回答不正确吗?还是指有更合理的答案?