马哥教育网络班21期-第3周课程练习

3周课程练习

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

# who | cut -d' ' -f1 |uniq

blob.png

blob.png

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

# who | tail -1

blob.png

# who | tail -1 | cut -d' ' -f1 | id

blob.png

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

# cat /etc/passwd | cut -d':' -f7 | uniq -c | sort -n | tail -1

blob.png

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

# sort -n -t: -k3 /etc/passwd | tail -10 | tr 'a-z' 'A-Z' > /tmp/maxusers.txt

blob.png

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

# ifconfig | grep "inet addr" | head -1 | cut -d':' -f2 | cut -d' ' -f1

blob.png

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

# ls /etc/*.conf | tr 'a-z' 'A-Z' > /tmp/etc.conf

blob.png

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

# ls /var | wc -l

blob.png

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

# sort -t: -k3 -n  /etc/group | head -n 10 | cut -d':' -f1

blob.png

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

# cat /etc/fstab /etc/issue > /tmp/etc.test

blob.png

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

10.1、useradd用户创建

格式:useradd [options] LOGIN

选项:

-u:指定用户的UID号,要求未被使用

-d:指定用户的宿主目录位置

-e:指定用户的账户失效时间

-g:指定用户的基本组名(或使用GID号)

-G:指定用户的附加组名(或使用GID号)

-M:不建立使用者目录,即使/etc/login.defs系统档设定要建立使用者目录

-s:指定用户的登陆shell

-r: 创建系统用户

CentOS 6: ID<500

CentOS 7: ID<1000

10.2groupadd创建组

格式: groupadd [OPTION]… group_name

选项:

-g GID: 指明GID号;[GID_MIN, GID_MAX]

-r: 创建系统组;

CentOS 6: ID<500

CentOS 7: ID<1000

10.3、usermod用户属性修改

格式:   usermod [OPTION] login

选项:

-u UID: 新UID

-g GID: 新基本组

-G GROUP1[,GROUP2,…[,GROUPN]]]:新附加组,原来的附加组将会被覆盖;若保留原有,则要同时使用-a选项,表示append;

-s SHELL:新的默认SHELL;

-c 'COMMENT':新的注释信息;

-d HOME: 新的家目录;原有家目录中的文件不会同时移动至新的家目录;若要移动,则同时使用-m选项;

-l login_name: 新的名字;

-L: lock指定用户

-U: unlock指定用户

-e YYYY-MM-DD: 指明用户账号过期日期;

-f INACTIVE: 设定非活动期限;

10.4、userdel用户删除

格式:userdel [-r] login

选项:

    -r: 删除用户家目录

10.5、groupmod组属性修改

格式: groupmod [OPTION] group

选项:

    -n group_name: 新名字

-g GID: 新的GID

10.6、groupdel组删除

    格式:groupdel group

10.7、passwd给用户添加密码

格式:passwd [OPTIONS] UserName—修改指定用户的密码,仅root用户权限

      passwd–修改自己的密码

选项:

-l: 锁定指定用户

-u: 解锁指定用户

-n mindays: 指定最短使用期限

-x maxdays:最大使用期限

-w warndays:提前多少天开始警告

-i inactivedays:非活动期限;

–stdin:从标准输入接收用户密码;

          echo "PASSWORD" | passwd –stdin USERNAME

10.8、gpasswd组密码修改

格式: gpasswd [OPTION] GROUP

选项:

-a user: 将user添加至指定组中;

      -d user: 删除用户user的以当前组为组名的附加组

      -A user1,user2,…: 设置有管理权限的用户列表

newgrp命令:临时切换基本组;如果用户本不属于此组,则需要组密码;

10.9、id查看用户相关的ID信息

格式:id [OPTION]… [USER]

选项:

-g USERNAME:查看用户的gid 

-u USERNAME:查看用户的uid 

-G USERNAME:查看用户的所有组 

-un:显示当前用户的用户名 

-gn:显示当前用户的组名

10.10、su切换用户或以其他用户身份执行命令

格式:su [options…] [-] [user [args…]]

切换用户的方式:

su UserName:非登录式切换,即不会读取目标用户的配置文件;

su – UserName:登录式切换,会读取目标用户的配置文件;完全切换;

Note:root su至其他用户无须密码;非root用户切换时需要密码;

换个身份执行命令:

su [-] UserName -c 'COMMAND'

选项:

-l:“su -l UserName”相当于“su – UserName”

10.11、chage修改用户属性

格式: chage [OPTION]… LOGIN

选项:

-d:LAST_DAY最后一次修改时间 

       -E –expiredate EXPIRE_DATE:过期时间 

-I –inactive INACTIVE:非活动时间 

       -m –mindays MIN_DAYS:最短期限 

       -M –maxdays MAX_DAYS :最长期限 

       -W  –warndays WARN_DAYS:警告时间 

10.12、chfn改变finger命令显示的信息

格式:chfn [OPTIONS] [username]

选项:

-f或–full-name:设置真实姓名;

-h或–home-phone:设置家中的电话号码;

-o或–office:设置办公室的地址;

-p或–office-phone:设置办公室的电话号码; –

u或–help:在线帮助;

-v或-version:显示版本信息。

10.13、chsh更换登录系统时使用的shell

格式:chsh [ OPTIONS] [ username ]

选项:

-s<shell 名称>或–shell<shell 名称>:更改系统预设的shell环境。;

-l或–list-shells:列出目前系统可用的shell清单;

-u或–help:在线帮助;

-v或-version:显示版本信息。

10.14、finger查看用户账户信息

格式:finger [OPTIONS] [username]

选项:

-s 显示用户的注册名、实际姓名、终端名称、写状态、停滞时间、登录时间等信息。

-l 除了用-s选项显示的信息外,还显示用户主目录、登录shell、邮件状态等信息,以及用户主目录下的.plan、.project和.forward文件的内容。

-p 除了不显示.plan文件和.project文件以外,与-l选项相同。

 

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

# groupadd -g 2016 distro

blob.png

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

  # useradd -u 1005 -g distro mandriva

blob.png

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

  # useradd -u 1100 -d /home/linux mageia

 blob.png

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

  # echo "mageedu" | passwd –stdin mageia

blob.png

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

  # userdel mandriva

  blob.png

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

   # groupadd peguin

# useradd -u 2002 -g distro -G peguin slackware

  blob.png

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

  # usermod -s /bin/tcsh slackware

  blob.png

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

  # groupadd admins

  # usermod -a -G admins slackware

blob.png

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

  # echo "slackware" | passwd –stdin slackware

 # passwd -n 3 -x 180 -w 3 slackware

blob.png

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

  # groupadd clouds

  # groupadd nova

  # useradd -u 3003 -g clouds -G peguin,nova openstack

blob.png

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

  # useradd -r -s /sbin/nologin mysql

blob.png

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

# echo "openstack" | passwd –stdin openstack

blob.png

原创文章,作者:N21_我爱罗,如若转载,请注明出处:http://www.178linux.com/24106

(0)
N21_我爱罗N21_我爱罗
上一篇 2016-07-16
下一篇 2016-07-16

相关推荐

  • shell入门 (一)

    Shell就是一个命令行解释器 ,它的作用是解释执行用户的命令,用户输入一条命令,Shell就解释执行一条,这种方式称为交互式(Interactive)。 Shell还有一种执行命令的方式称为批处理 (Batch),用户事先写一 个Shell脚本 (Script),其中有很多条命令,让Shell一次把这些命令执行完,而不必一条一…

    Linux干货 2017-08-26
  • vim文本编辑器

    Vim文本编辑器不能单独编写二进制文件,但是可以配合xxd命令编辑二进制文件 1、文本编辑种类: 行编辑器: sed 全屏编辑器:nano, vi、vim(其是改进的vi) 其他编辑器: Gedit,一个简单的图形编辑器 Gvim,一个Vim编辑器的图形版本 2、打开文件 用法#vim  [OPTION]… FILE… +#…

    Linux干货 2016-08-15
  • 加密的应用

    加密的应用 一、实现对称加密 1、openssl enc man enc 算法:3des, aes, blowfish, twofish 加密操作:openssl enc -e -des3 -a -salt -in testfile -out testfile.cipher 解密操作:openssl enc  -d -des3 -a  -…

    Linux干货 2016-09-26
  • Linux ansible 服务

                      Linux ansible 服务 Ansible:    运维工具的分类: agent:基于专用的agent程序完成管理功能,puppet, func, zabbix, … agentless:基于ss…

    系统运维 2016-11-19
  • Linux简介,计算机基础

    计算机系统   计算机系统分为:  硬件(Hardware)系统和软件(Software)系统  硬件系统:    主机、外部设备  软件系统:  系统软件、应用软件  主机:  中面处理器CPU、内存储器  外部设备:  外部存储器、输入…

    Linux干货 2017-02-14
  • lvs基础知识

    简介  Cluster是什么?    Cluster其实就是组织多个主机构建高实现性能、高可靠、多并发、大容量的同一功能的系统。  常见的集群类型:   (1) Load Balancing: 负载均衡集群   (2) High Avaiability: 高可用集群   (3) …

    Linux干货 2015-06-23

评论列表(1条)

  • 马哥教育
    马哥教育 2016-07-17 20:38

    写的很好,排版还可以在改进一下,加油