马哥教育网络班22期+第3周课程练习

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

    who | cut -d' ' -f1 | uniq

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

    last -1 | cut -d' ' -f1 | id #取出最后一条登录记录,并获取该用户的基本信息
    或
    last -1 #取出最后一个登录用户的登录信息

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

    cat /etc/passwd | cut -d: -f7 | uniq -c | sort | head -1

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

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

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

    ifconfig | grep "\<inet\>" | grep -v "127.0.0.1" | awk '{ print $2}'

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

    ls /etc/*.conf | cut -d\/ -f3 | tr a-z A-Z > /tmp/etc.conf

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

    ls -lR /var | grep "^-" | wc -l #文件的个数
    ls -lR /var | grep "^d" | wc -l #文件夹的个数
    let sum=$(ls -lR /var | grep "^d" | wc -l)+$(ls -lR /var | grep "^-" | wc -l);echo $sum
    #计算总个数

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

    sort  -t  ':' -k3n /etc/group | head -10 | cut -d: -f1

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

    cat /etc/fstab /etc/issue > /tmp/etc.test

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)删除用户mangriva,保留其家目录;
    userdel mangriva
(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 -aG admins slackware
(9)为slackware添加密码,且要求密码最短使用期限为3天,最长使用期限为180天,警告为3天;
    echo "slackware" | passwd --stdin -n 3 -x 180 -w 3 slackware
(10)添加用户openstack,其ID号为3003,基本组为clouds,附加组为peguin和nova。
    groupadd clouds
    groupadd nova
    useradd -u 3003 -g clouds -G peguin,nova openstack
(11)添加系统用户mysql,要求其shell为/sbin/nologin.
    useradd -s '/sbin/nologin' -r mysql
(12)使用echo命令,非交互式为openstack添加密码。
    echo "openstack" | passwd --stdin openstack

原创文章,作者:N22-江西-H随风,如若转载,请注明出处:http://www.178linux.com/48607

(0)
N22-江西-H随风N22-江西-H随风
上一篇 2016-09-26
下一篇 2016-09-26

相关推荐

  • 源码编译安装http

    为什么需要编译安装软件?   1、软件在编译期间需要配置:比如需要指定安装路径,定制模块等功能;   2、软件需要统一安装路径:在编译安装时可以方便指定这些路径;   3、需要最新的版本:对于某些软件来说可能需要最新的版本。 编译前的准备工作:     1、安装开发工具:make、gcc等…

    Linux干货 2016-08-24
  • bash功能特性五 重定向和管道

    一、管道     使用“|”符号来实现管道功能;管道可以实现在一行中处理使用管道符号连接的多个命令,后面的命令使用前面命令的输出结果做为处理对象。 二、数据流重定向     数据输入和输出的类型:         标准输入(std…

    Linux干货 2015-04-21
  • LVS介绍及工作原理图解

    一、LVS简介 LVS是Linux Virtual Server的简称,也就是Linux虚拟服务器,是一个由章文嵩博士发起的自由软件项目,官方站点是:http://www.linuxvirtualserver.org。现在LVS已经是Linux标准内核的一部分,在Linux2.4内核以前,使用LVS时必须重新编译内核以支持LVS功能模块,但是从Linux2.…

    2017-12-06
  • 基于rsync+inotify实现数据实时同步传输

    前言 与传统的cp、tar备份方式相比,rsync具有安全性高、备份迅速、支持增量备份等优点,通过rsync可以解决对实时性要求不高的数据备份需求,但随着文件数量的增大和实时同步的要求,rsync已不能满足需求,随之rsync+inotify便应运而生。本文将讲解rsync的基础知识和如何基于rsync+inotify实现数据实时同步传输。 rsync相关介…

    Linux干货 2015-04-27
  • N26 第八周作业

    1、请描述网桥、集线器、二层交换机、三层交换机、路由器的功能、使用场景与区别。 网桥(network bridge) 网桥工作于物理层与数据链路层,在终端设备较多的局域网中可以用网桥设备将局域网分离为不同的冲突域(collision domain),减少网络冲突,提升网络传输效率 集线器(network hub) 集线器具有多个I/O端口,一个端口的输入信号…

    2017-02-25
  • linux基础2

    linux基础2

    Linux干货 2018-03-18

评论列表(1条)

  • luoweiro
    luoweiro 2016-10-11 22:32

    第五题取得的是addr:x.x.x.x,如果单独显示IP还需要再截取一下