马哥教育网络班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

相关推荐

  • 网络班N22期第五周博客作业

    1、显示当前系统上root、fedora或user1用户的默认shell; [root@bogon ~]# cat /etc/passwd | grep -E "^(root|fedora|user1)\>" | cut -d:&nb…

    Linux干货 2016-09-15
  • Linux的基本介绍

    1、Linux的发行版分为:Debin,Slackware,Rhel,Redora,CentOS,Gentoo等,其中Rhel(Red Hat Enterprise Linux)使用的是版本比较老的内核,但它的系统比较稳定,一个发行周期是36个月,Fedora使用最新的应用和华丽的节目,但系统比较不稳定,一个发行周期是6个月。 2、Linux的哲学思想是一切…

    Linux干货 2016-02-14
  • 文本查找相关命令简单介绍

    文件查找命 在文件系统上查找符合条件的文件 非实时查找:基于索引查找 locate 实时查找:find locate介绍 依赖于事先构建的索引:索引的构建是在系统较为空闲时自动进行(周期性任务):手动更新数据库(updatedb) 索引构建过程需要遍历整个根文件系统,极消耗资源,生产中尽量避免手动更新。 语法: locate KEYWORD -i:忽略大小写…

    Linux干货 2017-04-10
  • FTP基于PAM和MySQL/MariaDB实现虚拟用户访问控制

    前言 vsftpd是一款在Linux发行版中最受推崇的FTP服务器程序,特点是小巧轻快,安全易用,目前在开源操作系统中常用的FTP套件主要有proftpd、pureftp、ServU和wu-ftpd等。本文将讲解vsftpd的基本功能和如何基于PAM和MySQL/MariaDB实现虚拟用户访问控制。 基础配置介绍 工作原理 状态响应码 1xx:信息码 2xx…

    2015-04-20
  • Shell 编 程 之 until循 环 语 句-20160817

    Shell 编 程 之 until循 环 语 句 §·练习题: 1 每隔3秒钟到系统上获取已经登录的用户的信息;如果发现用户hacker登录,则将登录时间和主机记录于日志/var/log/login.log中,并提示该用户退出系统? 解:解题思路:按照题意该脚本一直无限循环,一直探测用户h…

    Linux干货 2016-08-22
  • Linux–各种常用表达式整理收集

    文字颜色设置IP地址获取随机口令查找替代等

    Linux干货 2017-12-10

评论列表(1条)

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

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