第三周作业

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

[root@app02 ~]# who |grep -o -E '^\<[a-zA-Z]+\>'|sort -u
root
XIAOXIN

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

[root@app02 ~]# who -u   
root     tty1         2016-07-20 10:21  旧的        1239
root     pts/1        2016-08-26 10:32 00:11       31817 (192.168.2.22)
root     pts/2        2016-08-26 13:27   .         31752 (192.168.2.54)
root     pts/3        2016-08-26 13:43 00:12       13300 (192.168.2.51)
XIAOXIN  pts/4        2016-08-26 13:44 00:12       13806 (app02)

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

[root@app02 ~]# awk -F: '{print $NF}' /etc/passwd|sort|uniq -c|sort  -n -r|head -1|awk '{print $2}'
/sbin/nologin

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

[root@golet ~]# sort  -t ':' -k 3 /etc/passwd|head -10|tr [a-z] [A-Z] > /tmp/maxusers.txt
[root@golet ~]# cat /tmp/maxusers.txt 
ROOT:X:0:0:ROOT:/ROOT:/BIN/BASH
UUCP:X:10:14:UUCP:/VAR/SPOOL/UUCP:/SBIN/NOLOGIN
QEMU:X:107:107:QEMU USER:/:/SBIN/NOLOGIN
OPERATOR:X:11:0:OPERATOR:/ROOT:/SBIN/NOLOGIN
BIN:X:1:1:BIN:/BIN:/SBIN/NOLOGIN
GAMES:X:12:100:GAMES:/USR/GAMES:/SBIN/NOLOGIN
GOPHER:X:13:30:GOPHER:/VAR/GOPHER:/SBIN/NOLOGIN
FTP:X:14:50:FTP USER:/VAR/FTP:/SBIN/NOLOGIN
ABRT:X:173:173::/ETC/ABRT:/SBIN/NOLOGIN
DAEMON:X:2:2:DAEMON:/SBIN:/SBIN/NOLOGIN

5. 取出当前主机的IP地址

[root@golet ~]# ifconfig seth0|grep -o 'inet .*'|awk -F '[ :]' '{print $3}'
118.193.244.142

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

[root@golet etc]# ls *.conf|tr [a-z] [A-Z] > /tmp/etc.conf
[root@golet etc]# head -5 /tmp/etc.conf 
ASOUND.CONF
CGCONFIG.CONF
CGRULES.CONF
CGSNAPSHOT_BLACKLIST.CONF
DNSMASQ.CONF

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

[root@golet etc]# ll /var/|wc -l
23

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

[root@golet etc]# sort  -t ':' -k3 -n /etc/group|head -10|grep -o -E '^[a-z]+\>'
root
bin
daemon
sys
adm
tty
disk
lp
mem
kmem

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

[root@golet etc]# cat /etc/fstab  /etc/issue > /tmp/etc.test

10.请总结描述用户和组管理类命令的使用方法并完成以下练习:

  (1)、创建组distro,其GID为2016

[root@golet ~]# groupadd  -g 2016 distor

  (2)、创建用户mandriva, 其ID号为:1005,基本组为distro

[root@golet ~]# useradd -g distro -u 1005 mandriva

  (3)、创建用户mageia, 其ID号为:1100, 家目录为/home/linux

[root@golet ~]# useradd -d /home/linux -u 1100 mageia

  (4)、给用户mageia添加密码, 密码为mageedu

[root@golet ~]# echo 'mageedu'|passwd mageia --stdin
Changing password for user mageia.
passwd: all authentication tokens updated successfully.

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

[root@golet ~]# userdel mandriva

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

[root@golet ~]# useradd -u 2002 -g distro -G peguin slackware

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

[root@golet ~]# usermod -s /bin/tcsh slackware

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

[root@golet ~]# usermod -G admins slckware

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

[root@golet ~]# echo 'mageedu'|passwd -n 3 -x 180 -w 3  slackware --stdin

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

[root@golet ~]# useradd -u 3003 -g clouds -G peguin,nova openstack

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

[root@golet ~]# useradd -r mysql -s /sbin/nologin

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

echo 'mageedu'|passwd openstack --stdin

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

(0)
xiaoxinxiaoxin
上一篇 2016-08-29 09:01
下一篇 2016-08-29 09:01

相关推荐

  • Python 课堂笔记

    第二天

    Linux干货 2018-03-21
  • 马哥教育网络班22期+第二周课程练习

    week2作业: 1.linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 (1)touch 功能:创建文件 示例:  [root@director1 example]# touch file1 file2 [root@director1 example]# ll to…

    Linux干货 2016-08-22
  • Linux发行版之间的联系与区别及其哲学思想。

    一、Linux发行版之间的联系与区别。 随着Linux不断发展,Linux所支持的文件系统类型也在迅速扩充。很多的数据中心服务器上都运行着Linux,可以节省大量的许可证费用及维护费用。但伴随着Linux新版本的发行,其中每一个不同版本的Linux所支持的文件系统类型都有所不同。Linux的发行版有数百种之多。 1、Debian:是指一个致力于创建自由操作系…

    Linux干货 2016-10-30
  • Linux常见小知识点

    什么是Linux? Linux是一款支持多任务,多线程,多用户的类Unix系统 Linux常见的发行版本 Redhat  Linux   Linux发行版中比较重要的一个版本,多用于企业,由Redhat公司提供收费技术支持和更新,其衍生版本有centos为免费版本 Debain linux      系统分为…

    Linux干货 2017-03-26
  • 自制 mini linux

    思路 先装载一块硬盘,按照上面两个实验的部分结果,创建各个目录 在/boot 里面添加内核 ,添加initramfs.img文件添加grub组件  ,创建grub.conf   然后复制bash  ,ls  ,cp  等,命令和响应的库文件,并在启动的时候指定第一个进程为/bin/bash 顺便加载一个网卡驱…

    2017-05-14
  • awk

    awk是一种编程语言,用于在linux/unix下对文本和数据进行处理。数据可以来自标准输入(stdin)、一个或多个文件,或其它命令的输出。它支持用户自定义函数和动态正则表达式等先进功能,是linux/unix下的一个强大编程工具。它在命令行中使用,但更多是作为脚本来使用。awk有很多内建的功能,比如数组、函数等,这是它和C语言的相同之处,灵活性是awk最大的优势。

    Linux干货 2018-01-02

评论列表(1条)

  • 马哥教育
    马哥教育 2016-08-30 12:26

    有命令,有输出,很好