N22-第三周作业

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

[root@localhost ~]# w |cut -d ' ' -f1 |sort -u

lucy

root

USER

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

[root@localhost ~]# last -1

root     pts/1        192.168.1.112    Fri Aug 26 07:28   still logged in   

用户名   接口         ip地址             日期时间           状态

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

[root@localhost ~]# cut -d : -f 7 /etc/passwd |uniq -c |sort -rn |head -n 1

17 /sbin/nologin  

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

[root@localhost ~]# sort -t : -k3 -n /etc/passwd |tail -n 10 |tr a-z A-Z > /tmp/maxusers.txt

[root@localhost ~]# cat /tmp/maxusers.txt

FTP:X:14:50:FTP USER:/VAR/FTP:/SBIN/NOLOGIN

TSS:X:59:59:ACCOUNT USED BY THE TROUSERS PACKAGE TO SANDBOX THE TCSD DAEMON:/DEV/NULL:/SBIN/NOLOGIN

SSHD:X:74:74:PRIVILEGE-SEPARATED SSH:/VAR/EMPTY/SSHD:/SBIN/NOLOGIN

DBUS:X:81:81:SYSTEM MESSAGE BUS:/:/SBIN/NOLOGIN

POSTFIX:X:89:89::/VAR/SPOOL/POSTFIX:/SBIN/NOLOGIN

NOBODY:X:99:99:NOBODY:/:/SBIN/NOLOGIN

AVAHI-AUTOIPD:X:170:170:AVAHI IPV4LL STACK:/VAR/LIB/AVAHI-AUTOIPD:/SBIN/NOLOGIN

POLKITD:X:997:995:USER FOR POLKITD:/:/SBIN/NOLOGIN

SYSTEMD-NETWORK:X:998:996:SYSTEMD NETWORK MANAGEMENT:/:/SBIN/NOLOGIN

SYSTEMD-BUS-PROXY:X:999:997:SYSTEMD BUS PROXY:/:/SBIN/NOLOGIN

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

[root@localhost ~]# ifconfig |head -2 |tail -1 |cut -d : -f2 |cut -d ' ' -f1

192.168.1.130

 

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

[root@localhost ~]# ls /etc/*.conf |tr a-z A-Z > /tmp/etc.conf

[root@localhost ~]# cat /tmp/etc.conf

/ETC/ASOUND.CONF            (部分截图)

/ETC/DNSMASQ.CONF

/ETC/DRACUT.CONF

/ETC/E2FSCK.CONF

/ETC/HOST.CONF

/ETC/KDUMP.CONF

/ETC/KRB5.CONF

/ETC/LD.SO.CONF

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

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

20

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

[root@localhost ~]# sort -t : -k 3 -n < /etc/group |head -n 10 |cut -d : -f1

root

bin

daemon

sys

adm

tty

disk

lp

mem

kmem

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

[root@localhost ~]# cat /etc/{fstab,issue} >/tmp/etc.test

[root@localhost ~]# cat /tmp/etc.test

#

# /etc/fstab

# Created by anaconda on Thu Aug 25 18:05:14 2016

#

# 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

#

UUID=fcf2a715-a00a-4193-97b4-7ead5614ce7c /                       xfs     defaults        0 0

UUID=d8ccbbf6-8fc4-4dd1-9448-8238564cce7f /boot                   xfs     defaults        0 0

UUID=e4f79c29-1201-457b-b364-2ad4c7adb517 /home                   xfs     defaults        0 0

UUID=17677f39-6b53-4e77-a4a4-69429fefcf87 /usr                    xfs     defaults        0 0

UUID=21b4d037-9c04-4d6e-ba2e-334564c522c1 /var                    xfs     defaults        0 0

UUID=8fa28b1a-0a7d-4878-8a4d-b2fbe2264333 swap                    swap    defaults        0 0

\S

Kernel \r on an \m

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

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

[root@localhost ~]# groupadd -g 2016 distro

[root@localhost ~]# grep "distro" /etc/group

distro:x:2016:

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

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

[root@localhost ~]# grep "mandriva" /etc/passwd

mandriva:x:1005:2016::/home/mandriva:/bin/bash

(3).创建用户mageia,其ID号为1000,家目录为/home/linux

[root@localhost ~]# useradd -u 1000 -d /home/linux mageia

[root@localhost ~]# grep "mageia" /etc/passwd

mageia:x:1000:1000::/home/linux:/bin/bash

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

[root@localhost ~]# echo "mageedu" |passwd –stdin mageia

Changing password for user mageia.

passwd: all authentication tokens updated successfully.

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

[root@localhost ~]# userdel mandriva

[root@localhost ~]# ls /home

linux  mandriva

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

[root@localhost ~]# groupadd peguin        (先创建组peguin)

[root@localhost ~]# grep "peguin" /etc/group    (查看一下创建的组peguin是否存在)

peguin:x:2017:

[root@localhost ~]# useradd -u 2002 -g distro -G peguin slackware (创建用户slackware)

[root@localhost ~]# grep "slackware" /etc/passwd    (查看刚创建的slackware用户信息)

slackware:x:2002:2016::/home/slackware:/bin/bash

[root@localhost ~]# grep "slackware" /etc/group    (查看slackware用户的附加组是否为peguin)

peguin:x:2017:slackware

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

[root@localhost ~]# grep "slackware" /etc/passwd

slackware:x:2002:2016::/home/slackware:/bin/tcsh

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

[root@localhost ~]# groupadd admins    (创建admins组)

[root@localhost ~]# usermod -a -G admins slackware    (为slackware用户添加附加组admins)

[root@localhost ~]# grep "slackware" /etc/group    (查看一下添加是否成功)

peguin:x:2017:slackware

admins:x:2018:slackware

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

[root@localhost ~]# passwd -n 3 -x 180 -w 3 slackware;echo "slackware" |passwd –stdin slackware

Adjusting aging data for user slackware.

passwd: Success

Changing password for user slackware.

passwd: all authentication tokens updated successfully.

[root@localhost ~]# grep "slackware" /etc/shadow

slackware:$6$Ml.5YQi.$ciCuXjuYRgUOVQwLpq4xzPqHXITmKnA0LNUtK42iYwjfNiqgToTGiSWmZ/1cF4EVMrHCq7e1chSi3wYqlWXdl.:17039:3:180:3:::

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

[root@localhost ~]# groupadd clouds;groupadd nova        (添加用户组clouds,nova,peguin之前已经创建过了)

[root@localhost ~]# grep  -E "clouds|nova" /etc/group        (查看刚创建的两个组是否存在)

clouds:x:2019:

nova:x:2020:

[root@localhost ~]# useradd -u 3003 -g clouds -G peguin,nova openstack     (根据要求,创建用户openstack)

[root@localhost ~]# grep "openstack" /etc/{passwd,group}        (查看openstack用户的信息和所属组的信息)

/etc/passwd:openstack:x:3003:2019::/home/openstack:/bin/bash      (第四字段的'2019'是用户组clouds的组ID)      

/etc/group:peguin:x:2017:slackware,openstack

/etc/group:nova:x:2020:openstack

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

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

[root@localhost ~]# grep "mysql" /etc/passwd

mysql:x:996:994::/home/mysql:/sbin/nologin    (第三字段UID和第四字段GID都小于1000,系统账户的UID和GID都小于1000)

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

[root@localhost ~]# echo "openstack" |passwd –stdin openstack    (设置用户openstack的密码为自己的用户名)

Changing password for user openstack.

passwd: all authentication tokens updated successfully.

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

(0)
上一篇 2016-08-27 21:39
下一篇 2016-08-28 15:17

相关推荐

  • OSI和TCP/IP

            我们生活中各方面都离不开网络,那网络究竟是什么东西呢?它是怎么做到让在不同地点的人无视空间距离完成通信的呢?首先我们来了解一下网络的基本概念。网络是由节点和连线构成,表示诸多对象及其相互联系。在数学上,网络是一种图,一般认为专指加权图。网络除了数学定义外,还有具体…

    2017-09-02
  • linux文本处理三剑客-sed

    sed 是什么? sed是一种流编辑器,它是文本处理中非常中的工具,在linux中被称为linux文本处理三剑客之一,能够完美的配合正则表达式使用,功能不同凡响。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文…

    Linux干货 2017-03-15
  • 网络相关命令

    网络相关命令 常用命令 ifcfg家族:   ifconfig:配置IP,NETMASK   route :路由   netstat : 状态及统计数据查看 iproute2家族     ip  系列 &nbs…

    Linux干货 2016-09-07
  • 马哥教育网络20期第七周课程练习

    1、创建一个10G分区,并格式为ext4文件系统; (1) 要求其block大小为2048, 预留空间百分比为2, 卷标为MYDATA, 默认挂载属性包含acl; fdisk /dev/sdb ; mke2fs -t ext4 -b 2048 -L MYDATA -m 2 –O acl /dev/sdb1 (2) 挂载至/data/mydata目录,要求挂载…

    Linux干货 2016-08-15
  • 用shell脚本打等腰三角新

       *   ***  ***** *******   预览图形 发现图形由三个变量组成 行数n 每行的空格数a 和每行的符号数b 关系是    a=n-当前行数    b=2xn-1   并且空格都在符号前 根据关系编写脚本 #!/bin/bash read…

    Linux干货 2016-08-22
  • Linux文件权限管理-2016-8-04

    Linux文件权限管理 学习大纲 一 关于文件和目录的权限基本概述(rwx); 二 针对文件或目录权限管理的命令: a) 相关命令:chown , chgrp ,chmod chown修改文件属主 和 属组 语法:chown  [OPTION]…  [OWNER][:[GROUP]]  FILE&#8230…

    Linux干货 2016-08-04

评论列表(1条)

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

    将每一条命令都标注上具体完成的功能,很好,请继续努力