马哥教育网络班20期+第三周课程练习

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

[oracle@ocp ~]$ who
root     pts/1        2016-06-26 15:22 (10.3.251.10)
root     pts/2        2016-06-26 15:33 (10.3.251.10)
root     pts/3        2016-06-26 15:33 (10.3.251.10)
[oracle@ocp ~]$ who | cut -d ' ' -f1|sort -u
root

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

[root@ocp ~]# last |head -1
root     pts/3        10.3.251.10      Sun Jun 26 15:33   still logged in   
[root@ocp ~]#

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

[root@ocp ~]# cut -d: -f7 /etc/passwd | uniq -c | sort -rn | head -n 1
     28 /sbin/nologin

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

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

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

ifconfig | head -n 2 | tail -n 1 | cut -d: -f2 | tr -d "Bcast"

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

ls /etc/*.conf | tr 'a-z' 'A-Z' > /tmp/etc.conf

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

ls /var/ | wc -w

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

sort -t: -k3n /etc/group | head -n 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)、删除mandriva,但保留其家目录; 

userdel mandriva

(6)、创建用户slackware,其ID号为2002,基本组为distro,附加组peguin; 

useradd -u 2002 -g 2016 -G peguin slackware

(7)、修改slackware的默认shell为/bin/tcsh;

usermod -s /bin/tcsh slackware

(8)、为用户slackware新增附加组admins; 

usermod -aG admins slackware

(9)、为slackware添加密码,且要求密码最短使用期限为3天,最长为180天,警告为3天;

passwd -n 3  -x 183 -w 3 slackware

(10)、添加用户openstack,其ID号为3003, 基本组为clouds,附加组为peguin和nova; 

useradd -u 3003 -g clouds -G peguin,nova openstack

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

useradd -s /sbin/nologin mysql

(12)、使用echo命令,非交互式为openstack添加密码。”

echo "openstack" | passwd --stdin openstack

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

(0)
liuyichenliuyichen
上一篇 2016-06-26
下一篇 2016-06-26

相关推荐

  • 几个正则表达式和find查找语句事例

    显示当前系统上root、fedora、或user1用户的默认shell; ~]# grep -E "^(root|bin|hadop)" /etc/passwd | cut -d: -f7 找出/etc/rc.d/init.d/functions文件中某单词后面跟一组小括号的行,形如: hello(); ~]#grep -E -o &qu…

    Linux干货 2016-10-30
  • 万能的AWK

    awk:文本三剑客之一 #报告生成器,主要用来实现格式化文本输出,它能够实现在处理文本文件时对文档中的某字段有条件显示并以非常美观的文本; 它是编程语言的解释器;它也是一种完整的编程语言,它支持条件判断、循环、变量、数组、函数等等各种各样的编程语言所能实现的功能。 用法:awk [options] ‘program’ FILE &#8…

    2017-04-22
  • Varnish的配置与部署

          Varnish与一般服务器软件类似,分为master(management)进程和child(worker,主要做cache的工作)进程。master进程读入命令,进行一些初始化,然后fork并监控child进程。child进程分配若干线程进行工作,主要包括一些管理线程和很多woker线程。 va…

    2017-07-27
  • M20-1正则表达式有话说

    1、找出ifconfig命令结果中本机的所有ipv4地址  [root@centos7 ~]# ifconfig |grep -E -o '(([0-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\.){3}([0-9]|[1-9][0-…

    Linux干货 2016-08-05
  • 正则表达式

    Regual Expression 由一类特殊字符及文本字符所编写的模式,其中有些字符不表示字面意义,而是用于控制或通配的功能 分类 REGEXP:由一类特殊字符及文本字符所编写的模式,其中有些字符(元字符)不表示字符字面意义,而表示控制或通配的功能 程序支持:grep, vim, less,nginx等 分两类: 基本正则表达式:BRE 扩展正则表达式:E…

    Linux干货 2016-08-07
  • bash脚本入门之变量、运算、条件测试

    概述     脚本编程能力是作为运维工程师不可或缺的一项基本技能,各种系统的运维,如果完全靠命令行一条一条命令来执行,工作效率可想而知,而脚本却可以将完成一定功能的各个命令依据一定的流程控制,逻辑判断去完成某种功能,提升工作效率。本章就简单介绍一些linux下的bash脚本编程的基础入门知识,具体内容分为以下几个方面:…

    Linux干货 2016-08-12

评论列表(1条)

  • 马哥教育
    马哥教育 2016-06-29 15:28

    写的很好,排版还可以在漂亮一些,加油