网络班N22期第三周博客作业

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

[root@bogon ~]# w
 15:17:44 up 15:28,  2 users,  load average: 0.00, 0.00, 0.00
USER     TTY      FROM              LOGIN@   IDLE   JCPU   PCPU WHAT
root     pts/0    192.168.1.188    03:44    7:45m  0.43s  0.08s vim /etc/init.d/functions
root     pts/1    192.168.1.188    07:33    0.00s  6.75s  0.00s w
[root@bogon ~]# who | awk '{print $1}' | uniq
root
[root@bogon ~]#


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

[root@bogon ~]# last | head -1
root     pts/1        192.168.1.188    Sat Nov 21 07:33   still logged in   
[root@bogon ~]#

 

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

[root@bogon ~]# cat /etc/passwd | cut -d: -f7 | sort | uniq -cd | sort | head -1
     27 /bin/bash
[root@bogon ~]#

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

[root@bogon ~]# cat /etc/passwd | sort -nr -t : -k 3 | head -10 | tr [a-z] [A-Z] | tee /tmp/maxusers.txt
NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN
USER2:X:5037:5038::/HOME/USER2:/SBIN/HALT
KOURONG:X:5036:5036::/HOME/KOURONG:/BIN/BASH
HADOOP10:X:5035:5035::/HOME/HADOOP10:/BIN/BASH
HADOOP9:X:5034:5034::/HOME/HADOOP9:/BIN/BASH
HADOOP8:X:5033:5033::/HOME/HADOOP8:/BIN/BASH
HADOOP7:X:5032:5032::/HOME/HADOOP7:/BIN/BASH
HADOOP6:X:5031:5031::/HOME/HADOOP6:/BIN/BASH
HADOOP5:X:5030:5030::/HOME/HADOOP5:/BIN/BASH
HADOOP4:X:5029:5029::/HOME/HADOOP4:/BIN/BASH
[root@bogon ~]# cat /tmp/maxusers.txt 
NFSNOBODY:X:65534:65534:ANONYMOUS NFS USER:/VAR/LIB/NFS:/SBIN/NOLOGIN
USER2:X:5037:5038::/HOME/USER2:/SBIN/HALT
KOURONG:X:5036:5036::/HOME/KOURONG:/BIN/BASH
HADOOP10:X:5035:5035::/HOME/HADOOP10:/BIN/BASH
HADOOP9:X:5034:5034::/HOME/HADOOP9:/BIN/BASH
HADOOP8:X:5033:5033::/HOME/HADOOP8:/BIN/BASH
HADOOP7:X:5032:5032::/HOME/HADOOP7:/BIN/BASH
HADOOP6:X:5031:5031::/HOME/HADOOP6:/BIN/BASH
HADOOP5:X:5030:5030::/HOME/HADOOP5:/BIN/BASH
HADOOP4:X:5029:5029::/HOME/HADOOP4:/BIN/BASH
[root@bogon ~]#

五、取出当前主机的IP地址

[root@bogon ~]# ifconfig eth0 | grep "inet addr" | awk '{print $2}' | awk -F: '{print $2}'
192.168.1.140
[root@bogon ~]#

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

[root@bogon ~]# find /etc -type f -name *.conf | tr [a-z] [A-Z] | tee /tmp/etc.test
/ETC/SUDO.CONF
/ETC/SASL2/SMTPD.CONF
/ETC/SASL2/LIBVIRT.CONF
/ETC/ODDJOBD.CONF
/ETC/READAHEAD.CONF
..................


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

[root@bogon ~]# ls /var | wc -l
20
[root@bogon ~]#

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

[root@bogon ~]# cat /etc/group | sort -n -t: -k 3 | head -10 | cut -d: -f 1
root
bin
daemon
sys
adm
tty
disk
lp
mem
kmem
[root@bogon ~]#

 

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

[root@bogon ~]# cat /etc/fstab /etc/issue >> /tmp/etc.test
[root@bogon ~]# cat /tmp/etc.test 
# /etc/fstab
# Created by anaconda on Wed Sep 30 06:46:38 2015
#
# Accessible filesystems, by reference, are maintained under '/dev/disk'
# See man pages fstab(5), findfs(8), mount(8) and/or blkid(8) for more info
#
/dev/mapper/VolGroup-lv_root /                       ext4    defaults        1 1
UUID=9d1e60cd-bf15-4e70-a76e-385354cc864f /boot                   ext4    defaults        1 2
/dev/mapper/VolGroup-lv_swap swap                    swap    defaults        0 0
tmpfs                   /dev/shm                tmpfs   defaults        0 0
devpts                  /dev/pts                devpts  gid=5,mode=620  0 0
sysfs                   /sys                    sysfs   defaults        0 0
proc                    /proc                   proc    defaults        0 0
/dev/sdd1               /backup                 ext3    defaults        0 0
/dev/sdd1               /backup                 ext3    defaults        0 0
CentOS release 6.5 (Final)
Kernel \r on an \m

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

(1)用户管理类命令:useradd、usermod、userdel、w、who、whoami

    useradd:添加用户

       useradd [options] LOGIN
       useradd -D
       useradd -D [options]

    options:

       -b:设置基本路径作为用户的登录目录

       -c:指定注释信息

       -d:指定用户家目录

       -D:更改默认设置

       -e:设置用户的有效期

       -f:用户过期后,让密码无效

       -g:使用户只属于某个组

       -G:为用户指定附加组

       -r:建立系统账号

       -s:为用户指定shell

       -u:为用户指定UID

    usermod:修改用户

          usermod [options] LOGIN

     options:

       -a:为用户添加附加组

       -c:修改注释信息

       -d:修改用户家目录

       -e:修改用户过期期限

       -L:锁定用户

       -U:解锁

       -s:修改用户shell

    userdel:删除用户

        userdel [options] LOGIN

     options:

       -r:删除用户时删除其家目录

    w、who:查看当前系统上登录的所有用户

    whoami:查看当前登录用户名

(2)组管理类命令:groups、groupadd、groupdel、groupmod

    goupadd:添加组

        groupadd [options] group

     options:

       -g:指定组的GID

       -r:创建为系统组

    groupmod:修改组信息

        groupmod [options] GROUP

    options:

       -g:修改组的GID

    groupdel:删除组

                groupdel group

练习:

1、创建组distro,其GID为2016

[root@bogon ~]# groupadd -g 2016 distro
[root@bogon ~]# cat /etc/group | tail -1
distro:x:2016:

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

[root@bogon ~]# useradd -g distro -u 1005 mandriva
[root@bogon ~]# id mandriva
uid=1005(mandriva) gid=2016(distro) groups=2016(distro)

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

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

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

[root@bogon ~]# passwd mageia
Changing password for user mageia.
New password:

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

[root@bogon ~]# userdel mandriva     #userdel删除默认不删除其家目录

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

[root@bogon ~]# useradd slackware -g distro -u 2002 -G peguin
[root@bogon ~]# id slackware
uid=2002(slackware) gid=2016(distro) groups=2016(distro),5039(peguin)

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

[root@bogon ~]# usermod -s /bin/tcsh slackware
[root@bogon ~]# cat /etc/passwd | tail -1
slackware:x:2002:2016::/home/slackware:/bin/tcsh

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

[root@bogon ~]# usermod -G admins slackware
[root@bogon ~]# id slackware
uid=2002(slackware) gid=2016(distro) groups=2016(distro),5040(admins)

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

[root@bogon ~]# echo "magedu" | passwd -n 3 -x 180 -w 3  --stdin slackware 
Adjusting aging data for user slackware.
passwd: Success
[root@bogon ~]# cat /etc/shadow | tail -1
slackware:!!:16761:3:180:3:::

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

[root@bogon ~]# id openstack
uid=3003(openstack) gid=5041(clouds) groups=5041(clouds),5039(peguin),5042(nova)

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

[root@bogon ~]# useradd -r -s /sbin/nologin mysql
[root@bogon ~]# id mysql
uid=496(mysql) gid=493(mysql) groups=493(mysql)
[root@bogon ~]# cat /etc/passwd | tail -1
mysql:x:496:493::/home/mysql:/sbin/nologin

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

[root@bogon ~]# echo "magedu" | passwd --stdin openstack
Changing password for user openstack.
passwd: all authentication tokens updated successfully

原创文章,作者:凸b男波万,如若转载,请注明出处:http://www.178linux.com/41164

(0)
凸b男波万凸b男波万
上一篇 2016-08-29 08:52
下一篇 2016-08-29 08:52

相关推荐

  • N25-第二周作业

    ①Linux文件管理命令常用方法 Linux常见文件类型 -:files,常规文件 d: directory,目录文件 b: block device,块设备文件 c:character device,字符设备文件 l:symbolic link,符号链接文件 p: pipe,命名管道 s: socket,套接字文件 命令管理工具指南:cp、rm、mv 1.…

    Linux干货 2016-12-13
  • 方便实用的文件查找与压缩

    在平时的运维工作当中通常会编辑某些文件,但时间久了,突然一下子记不起文件的名字,遇到的事情又很紧急,需要立马去处理,而自己只知道那个文件部分的特征信息,我们需要在系统中去搜索自己想要的文件,那么有没有办法去实现呢,当然有,在我们的系统中,文件查找的工具有两个,locate和find。那么下面来介绍这两个工具的用法以及两个工具之间的差别。 在我们linux系统…

    Linux干货 2016-08-13
  • 进程和计划任务

    一、进程概念    内核的功用:进程管理、文件系统、网络功能、内存管理、驱动程序、 安全功能等 v Process:  运行中的程序的一个副本(文件),是被载入内存的一个指令集合,在内存中运行,系统指定一个内存空间和PID编号;进程ID(Process ID ,PID )号码被用来标记各个进程;存在生命周期 &nbsp…

    Linux干货 2016-11-27
  • Linux系统的软链接和硬链接

    Linux的链接是一种共享文件和访问它的用户的若干目录项之间建立联系的一种方法。一共分为两种链接,分别是软链接和硬链接。 一、硬链接 1、硬链接的本质上是一个文件,它们除了名字不一样,其他都一样,占用的空间是一个。硬链接会增加文件的链接数。如下图 (1)建立硬链集之前     (2)建立硬链接之后 2、删去一个链接名,链接数减一…

    Linux干货 2016-10-22
  • N26-第二周作业-邢岩(2)

     马哥门徒-N26-邢岩   我们接着说今天的分享,接着,我们来看看bash的工作特性之命令执行状态返回值和命令行展开所涉及的内容好了。    1.bash的基础特性之:命令的执行状态结果      bash通过状态返回值来输出此结果:       成功:0 …

    Linux干货 2017-02-10
  • 脚本编程之变量

    简单跟大家介绍一下脚本编程中的变量。 大家都知道,脚本编程,主要由三个部分组成,一是命令,二是变量,三是控制语句。 变量的使用,可以让脚本变得更加简洁,高效。 我们主要简单讲一下变量的概念,变量的类型,变量的种类,不同种类的变量是如何定义的,变量的基本操作,以及变量的配置文件。 了解了这些,我们还可以聊一聊变量的高级操作。 首先,什么是变量? 通俗一点讲:变…

    Linux干货 2017-04-17

评论列表(1条)

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

    每一个命令的输出结果都展示出来,很好。