第三周作业

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

相关推荐

  • bash的一些特性

    bash的字符串处理工具 字符串切片: ${var:offset:number} 取字符串的子串; 取字符串的最右侧的几个字符:${var: -length} 注意:冒号后必须有一个空白字符; 基于模式取子串; ${var#*word}: 其中word是指定的分隔符;功能:自左而右,查找var变量中所存储的字符串中,第一次出现word分隔符,删除字符串开头至…

    Linux干货 2016-08-24
  • 如何解决生产机上php代码连接mysql报错的故障

    大家好: 今天分享一则当生产机上的网站php代码不能连接Mysql服务器时怎么办? 当LNMP的网站建立好后,我们需要测试网站中的php代码。但发现如下报错怎么办? 解决方法如下:  mysql> show databases; +——————–+ | Dat…

    Linux干货 2016-12-18
  • 22期第十三周课堂练习

    1、建立samba共享,共享目录为/data,要求:(描述完整的过程)   1)共享名为shared,工作组为magedu;   2)添加组develop,添加用户gentoo,centos和ubuntu,其中gentoo和centos以develop为附加组,ubuntu不属于develop组;密码均为用户名;   3)添加s…

    Linux干货 2017-01-09
  • jackcui0804作业

    (1)显示/proc/meminfo 文件中以大小s 开头的行;( 要求:使用两种方式) [root@centos7 ~]# cat /proc/meminfo | grep -e "^s.*" -e "^S.*" SwapCac…

    Linux干货 2016-08-08
  • 关于find命令的实际应用

    1、查找/var目录下属主为root,且属组为mail的所有文件 2、查找/var目录下不属于root、lp、gdm的所有文件 3、查找/var目录下最近一周内其内容修改过,同时属主不为root,也不是postfix的文件 4、查找当前系统上没有属主或属组,且最近一个周内曾被访问过的文件 5、查找/etc目录下大于1M且类型为普通文件的所有文件 6、查找/e…

    Linux干货 2016-08-16
  • 第六周课程作业

    1、复制/etc/rc.d/init.d/functions文件至/tmp目录,将/tmp/functions文件中 的以至少一个空白字符开头的行的行首加# ~]# cp /etc/rc.d/init.d/functions /tmp~]# vim /tmp/functions %s@^[[:space:]]\+@#@g 2、复制/boot/gru…

    Linux干货 2016-12-12

评论列表(2条)

  • luoweiro
    luoweiro 2016-11-30 23:48

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

    • N24_shishen
      N24_shishen 2016-12-06 22:48

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