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

    文件查找命令find Find:在文件上查找符合条件的文件,是个实时的查找工具,通过遍历指定路径完成文件查找 工作特点: l  查找速度慢 l  精度查找 l  实时查找 l  可能只搜索用户具有读取和执行权限的目录   语法: find [option]…[查找路径][查找条件][处理动作]   …

    Linux干货 2016-08-16
  • 任务计划和本地系统的默认邮件

    一、前言 二、本地mail的使用方法 三、at /batch 四、cron 五、小结   一、前言 linux 中执行任务计划有三种命令:at ,batch ,cron.其中,at,batch 是一次性执行,而crontab,则是周期性执行; 作业执行完成后,会通过邮件通知给作业提交者;因此,以下就从邮件说起。 二、邮件服务 Centos ,默认会…

    Linux干货 2015-05-13
  • Linux文件管理相关及命令别名、执行状态等

    Linux文件管理相关命令有:cp,mv,rm         文件查看类命令有:cat,tac,head,tail,more,less         接下来,逐个介绍:   &…

    Linux干货 2016-11-04
  • Linux bash中的命令行展开介绍及应用示例

    Linux bash中的命令行展开介绍及应用示例 在Linux bash中可以使用命令行展开特性一步完成需要分开成多步完成的操作,达到事半功倍的效果。在Linux指令参数位置使用"{}" 将相应的参数括起来,括号中的参数以逗号分隔,然后bash在执行这一指令时会自动将括号中的内容进行展开。 相关示例如下: 同时创建多个目录,在/tmp目录…

    Linux干货 2016-11-07
  • grep的用法(CentOS7)及有关正则表达式的使用

    http://www.cnblogs.com/wzhuo/p/6659352.html

    Linux干货 2017-04-08
  • 网卡名称更改

    网卡是计算机进行网络通信的必须的设备。在CentOS6及其更早的系统中,网卡设备在系统中的名称命名为eth#(#为0,1,2…之类的数字)。在内核版本为3.0.0及其以后的Linux发行版中,网卡设备在系统中名称变得很长,变得不好识别以及不利于管理。为了更好的管理,我们将新的网络设备命名改为传统的命名。 网卡名称更改 在CentOS系统中操作 在RHEL7系…

    Linux干货 2016-11-23

评论列表(1条)

  • luoweiro
    luoweiro 2016-10-11 22:32

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