马哥教育网络班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

相关推荐

  • find查找命令及压缩

    文件查找     在文件系统上查找符合条件的文件;     文件查找: locate, find         非实时查找(数据库查找): locate    &nbs…

    Linux干货 2016-08-18
  • mysql主从架构/模式

    MySQL Replication: Master/Slave Master: write/read Slaves: read 为什么? 冗余:promte(提升为主),异地灾备 人工 工具程序 负载均衡:转移一部分“读”请求; 支援安全的备份操作: … 主/从架构: 异步复制:master只需要完成自己的数据库操作即可。至于slaves是否收到…

    2016-11-27
  • RPM与YUM命令异同详解

    RPM和YUM都是用来安装程序的工具,但是它们有太多相似的用法以至于有事很难分清应该哪个那就来一起详细的了解一下他们的功能及用法,以及他们的相同以及不同之处。 RPM 软件包管理器功能:安装,卸载,升级,查询,校验,打包,数据库管理RPM在安装时不能处理程序之间复杂的依赖关系RPM可以验证软件包来源的合法性、完整性。常用选项: -i:表示安装。(常用:-iv…

    2017-06-18
  • 操作系统概述

                                 操作系统概述 对于一个真正的计算机系统来说,我们可以说它是由硬件+软件组成。没有软件的计算机,我们称它为裸机。当然,它也干不成什么事。所以,要想使得计算…

    Linux干货 2016-10-27
  • ​ 基于Sentinel实现redis主从自动切换

    Sentinel(哨兵)是用于监控redis集群中Master状态的工具,它可以实现对redis的监控、通知、自动故障转移。 Sentinel作用: Master状态检测 当被监控的某个 Redis Master异常无法连接时 Sentinel 可以向系统管理员发送通知, 也可以通过 API 向其他程序发送通知,并且进行Master-Slave切换,将其中一…

    Linux干货 2016-02-14
  • 第四周

    第四周 1.复制/etc/skel目录为/home/tuser1,要求/home/tuser1及其内部文件的属组和其他用户均没有任何访问权限。 [root@node1 ~]# cp -r /etc/skel/ /home/tuser1 [root@node1 ~]# chmod -R go= /home/tuser1 [root@node1 ~]# ls -…

    Linux干货 2017-07-26

评论列表(1条)

  • luoweiro
    luoweiro 2016-10-11 22:32

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