N26第三周博客作业

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

   who | cut -d' ' -f1 | sort -u

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

   last | head -1
   
3、取出当前系统上被用户当作其默认shell的最多的那个shell。
   cut -d: -f7 /etc/passwd|sort|uniq -c|sort -n|tail -1

4、将/etc/passwd中的第三个字段数值最大的后10个用户的信息全部改为大写后保存至/tmp/maxusers.txt文件中。
   cat /etc/passwd | sort -n -t: -k3|tail -10|tr 'a-z' 'A-Z' > /tmp/maxusers.txt

5、取出当前主机的IP地址,提示:对ifconfig命令的结果进行切分。
   ifconfig|grep inet|grep -v 127.0.0.1|grep -v inet6|awk '{print $2}'|tr -d "addr:"

6、列出/etc目录下所有以.conf结尾的文件的文件名,并将其名字转换为大写后保存至/tmp/etc.conf文件中。
   ls /etc/*.conf | tr 'a-z' 'A-Z' > /tmp/etc.conf

7、显示/var目录下一级子目录或文件的总个数。
   ls -ld /var/* | wc -l

8、取出/etc/group文件中第三个字段数值最小的10个组的名字。
   sort -n -t: -k3 /etc/group| head -10 |cut -d: -f1

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

10、请总结描述用户和组管理类命令的使用方法并完成以下练习:
   (1)、创建组distro,其GID为2016;
      groupadd -g 2016 distro

   (2)、创建用户mandriva, 其ID号为1005;基本组为distro;
      useradd -u 1005 -g distro 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;
         groupadd peguin ; useradd -u 2002 -g distro -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天;
         echo "password" | passwd –stdin slackware ; chage -m 3 -M 180 -W 3 slackware

   (10)、添加用户openstack,其ID号为3003, 基本组为clouds,附加组为peguin和nova;
         groupadd clouds;groupadd nova;useradd oepnstack -u 3003 -g clouds -G peguin,nova

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

   (12)、使用echo命令,非交互式为openstack添加密码。
         echo "password" | passwd –stdin openstack

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

(0)
天空天空
上一篇 2017-02-03 14:48
下一篇 2017-02-03 23:55

相关推荐

  • 网卡路由配置信息及偷懒用法

            对于初学Linux的人来说,配置网卡无疑是比较晕的,各种的配置文件,字段、命令等让人眼花撩乱。所以这一章主要给大多数还在网卡配置路由配置的同学们解惑一、网卡配置基本概念        …

    Linux干货 2017-05-08
  • Shell脚本编程中的if、case、for、while、until命令

    为何要学编程中的if、case、for、while、until命令?        作为一个运维工程师,总会听到自动化,实际自动化离不开编写shell脚本,而shell脚本中却又离不开编程中的if、case、for、while、until, 这些关键字。 了解编程中的if、case、for、while、until命令,…

    Linux干货 2016-08-19
  • Linux网络协议命令介绍(3)

      在上一章中,我们谈到了网络协议以及TCP传输层说明,下面我们来介绍一下序列号和确认好有什么区别之外,以及基本的网络命令。 1、序列号和确认号有什么区别? 2、网络功能 3、网络命令 4、配置文件 1、序列号和确认号有什么区别?   发送方与接收方的发送请求,把SYN设置为1,TCP报文出去都有个号码,随机生成称为序…

    Linux干货 2016-11-29
  • rpm&yum

    软件包管理 软件运行环境 软件包基础 Rpm包管理 Yum管理 定制yum仓库 编译安装 ABI 应用程序的二进制接口,和操作系统相关,一个程序二进制编好了,想要在你的系统上跑,要符合你的操作系统的接口标准Windows:PE  linux:ELF WINDOWS和LINUX二进制程序是不兼容的 库级别的虚拟化 Linux:WINE 可以让Windows程序…

    Linux干货 2018-01-02
  • 三次握手,四次挥手

    TCP/IP协议的详细信息参看《TCP/IP协议详解》三卷本。 在谈及TCP建立连接和释放连接过程,先来简单认识一下TCP报文段首部格式的的几个名词(这里只是简单说明,具体请查看相关教程)下面是TCP报文格式图:     序列号seq:占4个字节,用来标记数据段的顺序,TCP把连接中发送的所有数据字节都编上一个序号,第一个字节的…

    2017-09-03
  • rpm和yum

     1、rpm的安装 rpm {-i|–install} [install-options] PACKAGE_FILE… -v: verbose -h: 以#显示程序包管理执行进度 rpm -ivh PACKAGE_FILE … [install-options] …

    Linux干货 2016-08-21

评论列表(1条)

  • 马哥教育
    马哥教育 2017-02-27 16:55

    写的很不错,但是如果能更多的使用注释来展示过程就更完美了,加油。