马哥教育网络班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 08:56
下一篇 2016-09-26 08:57

相关推荐

  • Linux基础操作-week5

    1、显示当前系统上root、fedora或user1用户的默认shell; 方式一: # whoami root # echo $SHELL /bin/bash 方式二: #grep user1 /etc/passwd|awk -F “:” ‘{print $7}’ /bin/bash 2、找出/etc/rc.…

    Linux干货 2016-11-27
  • Nginx常用配置详解

    Nginx常用配置详解(一) 本文依照nginx官方站点文档介绍常用的nginx各种常用配置,未经过校对,如有错误还望海涵。 Nginx配置通用语法 Nginx最基本的配置语法 配置项名 配置项值1 [配置项值2 ….]; 配置项名位于行首,配置项值与配置项名之间用空格隔开,多个配置项值之间也用空格隔开,每行配置结尾必须加上分号。 #配置项名 配置项值1…

    Linux干货 2017-06-20
  • 互联网安全之sudo使用指南

    一、前言 sudo是什么? sudo是系统管理指令;由于root用户权限过大,在实际生产过程中很少使用root用户直接登录系统,而是使用普通用户登录系统;但是如果普通用户要对系统进行日常维护操作时需要su到root用户,为了提高安全性,可以使用sudo授权某一用户在某一主机以某一用户身份运行某些命令;从而减少root用户密码知晓人,提高系统安全性。 &nbs…

    2015-06-23
  • Linux程序包编译安装

    程序包编译安装:      Application-VERSION-release.src.rpm–> 安装后,使用rpmbuild命令制作成二进制格式的rpm包,而后再安装      源代码–>预处理–>编译–>汇编–>链接–>执行      源代码…

    2017-04-25
  • DNS 的搭建 子域授权及转发(正向解析)

           dns(名称解析服务).它的作用就是将主机名解析成ip地址的过程,同时它是一个分布式,分层次的主机名管理架构。为了我们能更好的了解与理解,实验才是更好的。     安装部署DNS服务: 一.首先安装DNS服务器软件 bind,还有其他相关的软件包,有bind-libs(库文件),bin…

    2017-07-31
  • CentOS7常用网络管理命令总结

    一、CentOS7网络接口命名策略(systemd)二、CentOS7的基础网络管理命令2.1 NetworkManager服务2.2 nmtui文本交互式工具2.3 nmcli命令行接口工具nmcli的语法说明NetworkManager整体状态显示显示所有连接或仅活动的连接显示所有设备的状态显示指定设备的所有连接属性添加动态的以太网连接(DHCP)添加静…

    Linux干货 2016-06-09

评论列表(1条)

  • luoweiro
    luoweiro 2016-10-11 22:32

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