Homework Week-3 用户管理

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

 who | cut -f 1 -d \ | uniq

“\”后跟一个空格字符

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

 who | tail -n 1

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

 cut -d: -f7 /etc/passwd |sort|uniq -c|sort|tail -n 1

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

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

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

 ifconfig|grep -A 1 "eno16777736" | grep -E -o "inet \<([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>.
                                                    \<([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>.
                                                    \<([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>.
                                                    \<([1-9]|[1-9][0-9]|1[0-9]{2}|2[0-4][0-9]|25[0-5])\>"

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

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

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

 ll /var | wc -l

结果包含隐藏文件和目录,不包含上级目录和目录本身

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

 sort -k 3 -t: /etc/group | head -n 10 |cut -f 1 -d:

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

 cat /etc/fstab /etc/issue | tee /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
或
 passwd mageia
New password: mageedu
Retype new password: mageedu

(5)、删除mandriva,但保留其家目录;

 userdel mandriva

(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 -G admins slackware

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

 passwd -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 -r -s /sbin/nologin mysql

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

 echo "mageedu" | passwd --stdin openstack

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

(0)
N22_ElephantN22_Elephant
上一篇 2016-08-24
下一篇 2016-08-24

相关推荐

  • lvm逻辑卷

    创建逻辑卷

    2017-12-17
  • 计算机的组成及其功能

    硬件部分     运算器:对数据进行处理,如基本四则运算和逻辑运算     控制器:协调整个计算机资源的运行,调试各个命令的执行顺序     存储器:数据的保存位置,可分为内存和其它各种非断电丢失的硬盘    …

    Linux干货 2016-10-30
  • 例图分析软、硬链接

    在linux系统中存在两种链接方式硬链接和软连接,两种链接方式在系统中是完全不同的模式,本文主要详述两种的区别并给与图示; 创建guo ,lin两个文件,两个文件分别用于演示软连接和硬链接     图一:创建文件   创建软连接guo.ruan1     图二:创建软连…

    Linux干货 2016-10-29
  • Hadoop实战实例

     Hadoop 是Google MapReduce的一个Java实现。MapReduce是一种简化的分布式编程模式,让程序自动分布到一个由普通机器组成的超大集群上并发执行。就如同java程序员可以不考虑内存泄露一样, MapReduce的run-time系统会解决输入数据的分布细节,跨越机器集群的程序执行调度,处理机器…

    Linux干货 2015-04-13
  • Linux基础知识之GUN awk

    awk:报告生成器,格式化文本输出    基本用法:    gawk [options] 'program' FILE …    options:     &…

    Linux干货 2016-09-20
  • Linux shell之bash特性大全详解(持续更新ing)

    一、shell是什么?     Shell本身是一个用C语言编写的程序,它是用户使用Unix/Linux的桥梁,用户的大部分工作都是通过Shell完成的。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中…

    Linux干货 2016-03-09

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-30 09:19

    除了作业上要求,更加入了自己的理解,大赞