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

相关推荐

  • SSH协议详解

    OpenSSH 一、 前言 使用SSH可以在本地主机和远程服务器之间进行加密地传输数据,实现数据的安全。而OpenSSH是SSH协议的免费开源实现,它采用安全、加密的网络连接工具代替了telnet、ftp等古老明文传输工具。 SSH(Secure Shell)是建立在应用层和传输层基础上的安全协议。SSH是目前较可靠,专为远程登陆会话和其他网络服务提供安全性…

    Linux干货 2016-12-16
  • 网络管理之路由实现

    一.概述 跨网络通信:路由     路由分类:         主机路由         网络路由      …

    Linux干货 2016-09-19
  • 制作kickstart文件和引导镜像

    kickstart制作: (1)通过手动编辑,莫个kickstat模板进行修改:如根目录下的anaconda-ks.cfg (2)通过图形界面制作kickstart文件,可以安装system-config-kickstart, 通过kickstart配置程序打开某个模板,如anaconda-ks.cfg,在图片界面下的修改, 基本配置:默认语音,键盘类型,时…

    2017-11-14
  • 创建yum源及httpd源码编译

    创建yum源及源码编译httpd yum本身相比于rpm来说,能够将有依赖的包文件一次性的安装完成,是相当的方便的。 yum的服务器支持的几种格式: http、https、ftp、file 1、yum基础命令 1、yum命令 yum [options] [command] [package …] [options]: 基本不用 [command]: re…

    Linux干货 2017-08-08
  • Linux之Centos系统的启动流程详述

    概述 了解系统的启动流程,有助于我们了解Linux系统上的一些工作原理,有助于我们深入的理解一个系统的运作方式,那么本篇就以CentOS6系统为例,介绍一下有关Linux系统启动相关的内容,分为一下几个部分 1、Linux系统的一些基础概念 2、CentOS6上的启动流程概述 第一章 Linux系统的一些基础概念 Linux系统的组成部分:内核(kernel…

    Linux干货 2016-09-29
  • /etc/fstab及/boot分区文件恢复

    以centos6为例,/boot目录下有最为关键的开机启动所必须的内核文件、根文件系统驱动文件已经引导加载程序(bootloader)grub。当我们清空此文件夹之后关机,机器就不能正常启动了,这种情况下,可以借助光盘启动进入救援模式解决。具体步骤如下: 1. 开机进入救援模式 这里不像正常情况下,显示根文件系统挂载在/mnt/sysimage目录,而是提示…

    2017-07-09

评论列表(1条)

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

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