网络班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

相关推荐

  • ansible运维自动化工具

      ansible简介 运维工具分类:         agent:基于专用的agent程序完成管理功能,puppet, func, zabbix, …        agent…

    Linux干货 2016-11-11
  • 几个正则表达式和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
  • N26-上海-莫言

    持续更新…

    Linux干货 2016-12-26
  • N25第六周作业

    vim编辑器 基本模式: 编辑模式,命令模式 输入模式 末行模式: 内置的命令行接口;   打开文件: # vim [options] [file ..] +#:打开文件后,直接让光标处于第#行的行首; +/PATTERN:打开文件后,直接让光标处于第一个被PATTERN匹配到的行的行首;   模式转换: 编辑模式:默认模式 编辑模式 &…

    Linux干货 2017-02-15
  • nginx的模块应用

    1.location的定义 (1)当location中午定义时,默认使用server中的相关定义。 (2)当locating中有了相关定义,此时则启用location中的定义的内容。 nginx -t检查配置文件是否有语法错误 nginx -s reload重载nginx (3)即使server中的root中的目录下有了/admin的目录,但是同时又在loc…

    Linux干货 2016-10-30
  • 马哥教育网络班20期+第五周博客作业

    1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; ]# grep  "^[[:space:]]\+" /boot/grub/grub.conf 2、显示/etc/rc.d/rc.sysinit文件中以#开头,后面跟至少一个空白字符,而后又有至少一个非空白字符的行; ]#…

    Linux干货 2016-07-12

评论列表(1条)

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

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