Linux管理员测试

Linux管理员 综合测试

1.1 问题

根据本文提供的练习步骤完成所有练习案例。

1.2 方案

开始练习之前,先依次重置虚拟机环境。

  1. [root@room9pc13 ~]# rht-vmctl reset classroom
  2. [root@room9pc13 ~]# rht-vmctl reset server

1.3 步骤

实现此案例需要按照如下步骤进行。

步骤01:配置一个用户

案例概述:

创建一个名为alex的用户,用户ID是 3456。密码是flectrag

  1. [root@server0 ~]# useradd -u 3456 alex
  2. [root@server0 ~]# echo flectrag | passwd --stdin alex

步骤02:创建用户账号和组

案例概述:

创建下列用户、组以及和组的成员关系:

  • 一个名为adminuser的组
  • 一个名为natasha的用户,其属于adminuser,这个组是该用户的从属组
  • 一个名为harry的用户,属于adminuser,这个组是该用户的从属组
  • 一个名为sarah的用户,其在系统中没有可交互的shell,并且不是adminuser组的成员用户
  • natasha、harry、和sarah的密码都要设置为flectrag
  1. [root@server0 ~]# groupadd adminuser                             //添加组
  2. [root@server0 ~]# useradd -G adminuser natasha                 //添加用户
  3. [root@server0 ~]# useradd -G adminuser harry
  4. [root@server0 ~]# useradd -s /sbin/nologin sarah
  5. [root@server0 ~]# echo flectrag | passwd --stdin natasha     //设置密码
  6. [root@server0 ~]# echo flectrag | passwd --stdin harry
  7. [root@server0 ~]# echo flectrag | passwd --stdin sarah

步骤03:配置文件 /var/tmp/fstab 的权限

案例概述:

拷贝文件/etc/fstab到/var/tmp/fstab,配置文件/var/tmp/fstab的权限:

  • 文件/var/tmp/fstab的拥有者是root用户
  • 文件/var/tmp/fstab属于root组
  • 文件/var/tmp/fstab对任何人都不可执行
  • 用户natasha 能够对文件/var/tmp/fstab执行读和写操作
  • 用户harry 对文件/var/tmp/fstab既不能读,也不能写
  • 所有其他用户(当前的和将来的)能够对文件/var/tmp/fstab进行读操作
  1. [root@server0 ~]# cp /etc/fstab /var/tmp/fstab                     //复制文件
  2. [root@server0 ~]# setfacl -m u:natasha:rw /var/tmp/fstab         //添加个别用户权限
  3. [root@server0 ~]# setfacl -m u:harry:- /var/tmp/fstab

步骤04:配置一个 cron 任务

案例概述:

为用户natasha配置一个定时任务,每天在本地时间14:23时执行以下命令:

/bin/echo hiya

解题参考:

  1. [root@server0 ~]# systemctl restart crond
  2. [root@server0 ~]# systemctl enable crond
  3. [root@server0 ~]# crontab -e -u natasha
  4. 23 14 * * * /bin/echo hiya

步骤05:创建一个共享目录

案例概述:

创建一个共享目录/home/admins ,特性如下:

  • /home/admins目录的组所有权是adminuser
  • adminuser组的成员对目录有读写和执行的权限。除此之外的其他所有用户没有任何权限(root 用户能够访问系统中的所有文件和目录)
  • 在/home/admins目录中创建的文件,其组所有权会自动设置为属于adminuser组
  • [注]此处所谓的共享目录并不是指网络共享,只是某个组成员共用

解题参考:

  1. [root@server0 ~]# mkdir /home/admins
  2. [root@server0 ~]# chown :adminuser /home/admins
  3. [root@server0 ~]# chmod ug+rwx,o-rwx /home/admins         //调整权限
  4. [root@server0 ~]# chmod g+s /home/admins                     //设置Set UID权限

步骤06:安装内核的升级

案例概述:

新版内核文件从以下地址获取:

http://classroom.example.com/content/rhel7.0/x86_64/errata/Packages/

  • 升级你的系统的内核版本,同时要满足下列要求:
  • 当系统重新启动之后升级的内核要作为默认的内核
  • 原来的内核要被保留,并且仍然可以正常启动

解题参考:

  1. [root@server0 ~]# firefox
  2. http://classroom.example.com/content/rhel7.0/x86_64/errata/Packages/
  3.                                 //根据所给地址找到内核文件,复制其下载地址
  4. [root@server0 ~]# wget
  5. http://classroom.example.com/content/rhel7.0/x86_64/errata/Packages/kernel-3.10.0-123.1.2.el7.x86_64.rpm
  6. [root@server0 ~]# rpm -ivh kernel-3.10*.rpm             //安装新内核(耐心等...)
  7. [root@server0 ~]# reboot                                 //重启以使新内核生效
  8. [root@server0 ~]# uname -r
  9. 3.10.0-123.1.2.el7.x86_64                                 //确认新内核版本

步骤07:绑定到外部验证服务

案例概述:

系统 classroom.example.com 提供了一个 LDAP 验证服务。您的系统需要按照以下要求绑定到这个服务上:

  • 验证服务器的基本 DN 是:dc=example,dc=com
  • 帐户信息和验证信息都是由 LDAP 提供的
  • 连接要使用证书进行加密,证书可以在下面的链接中下载 :
  • http://classroom.example.com/pub/example-ca.crt
  • 当正确完成配置后,用户 ldapuser0 应该能够登录到您的系统中,但是没有主目录。当您完成 autofs的题目之后,才能生成主目录
  • 用户ldapuser0的密码是password

解题参考:

  1. [root@server0 ~]# yum -y install sssd
  2. [root@server0 ~]# authconfig-tui                             //使用简易配置工具

根据提示完成用户和认证方式设置 ——

User Information:[*] Use LDAP

Authentication Method:[*] Use LDAP Authentication

根据提示选中 [*] Use TLS,并设置下列参数 ——

Server:classroom.example.com

Base DN:dc=example,dc=com

提示下载证书到 /etc/openldap/cacerts 目录时,另开一终端执行:

  1. [root@server0 ~]# cd /etc/openldap/cacerts/             //进入CA机构证书目录
  2. [root@server0 ~]# wget http://classroom.example.com/pub/example-ca.crt

然后回到 authconfig-tui 工具确认,稍等片刻即可。

  1. [root@server0 ~]# systemctl restart sssd
  2. [root@server0 ~]# systemctl enable sssd
  3. [root@server0 ~]# id ldapuser0                         //验证LDAP用户可用
  4. uid=1700(ldapuser0) gid=1700(ldapuser0) groups=1700(ldapuser0)

步骤08:家目录漫游

案例概述:

按照下述要求配置手动挂载 LDAP 用户的主目录:

  • classroom.example.com(172.25.254.254)通过 NFS 输出 /home/guests 目录到您的系统,这个文件系统包含了用户ldapuser0的主目录,并且已经预先配置好了
  • ldapuser0用户的主目录是 classroom.example.com:/home/guests/ldapuser0
  • ldapuser0的主目录应该挂载到本地的/home/guests/ldapuser0 目录下
  • 用户对其主目录必须是可写的
  • ldapuser0用户的密码是password

解题参考:

  1. [root@server0 ~]# mkdir /home/guest/ldapuser0
  2. [root@server0 ~]# mount classroom.example.com:/home/guests/ldapuser0 /home/guests/ldapuser0         //挂载LDAP家目录
  3. [root@server0 ~]# su - ldapuser0 -c 'pwd'             //验证结果
  4. /home/guests/ldapuser0

步骤09:配置NTP网络时间客户端

案例概述:

配置您的系统,让其作为一个 classroom.example.com 的 NTP 客户端

解题参考:

  1. [root@server0 ~]# yum -y install chrony
  2. [root@server0 ~]# vim /etc/chrony.conf
  3. #server 0.rhel.pool.ntp.org iburst                     //注释掉不可用server配置,
  4. #server 1.rhel.pool.ntp.org iburst
  5. #server 2.rhel.pool.ntp.org iburst
  6. #server 3.rhel.pool.ntp.org iburst
  7. server classroom.example.com iburst                     //添加新的配置
  8. .. ..
  9. [root@server0 ~]# systemctl restart chronyd
  10. [root@server0 ~]# systemctl enable chronyd

步骤10:查找文件

案例概述:

找出所有用户student拥有的文件,并且把它们拷贝到/root/findfiles 目录中

解题参考:

  1. [root@server0 ~]# mkdir /root/findfiles
  2. [root@server0 ~]# find / -user student -type f -exec cp -p {} /root/findfiles/ ;

步骤11:查找一个字符串

案例概述:

在文件/usr/share/dict/words中查找到所有包含字符串seismic的行:

  • 将找出的行按照原文的先后顺序拷贝到/root/wordlist文件中
  • /root/wordlist文件不要包含空行,并且其中的所有行的内容都必须是 /usr/share/dict/words文件中原始行的准确副本

解题参考:

  1. [root@server0 ~]# grep 'seismic' /usr/share/dict/words > /root/wordlist

步骤12:创建一个归档

案例概述:

创建一个名为 /root/backup.tar.bz2 的归档文件,其中包含 /usr/local 目录中的内容,tar 归档必须使用 bzip2 进行压缩

解题参考:

  1. [root@server0 ~]# tar -jcPf /root/backup.tar.bz2 /usr/local/

步骤13:分区及逻辑卷操作

案例概述:

在您的系统中有一个磁盘/dev/vdb,请为此磁盘规划分区,完成下列任务:

  • 依次建立3个主分区,容量分别为 200MiB、2000MiB、1000MiB
  • 使用其中第1个主分区建立名为systemvg的卷组,并在此卷组中建立一个大小为196MiB的逻辑卷vo
  • 使用ext3文件系统对逻辑卷vo进行格式化

解题参考:

  1. [root@server0 ~]# fdisk /dev/vdb
  2. Command (m for help): n                                     //新建
  3. Partition type:
  4. p primary (0 primary, 0 extended, 4 free)
  5. e extended
  6. Select (default p): p                                     //主分区
  7. Partition number (1-4, default 1): 1                         //分区编号1
  8. First sector (2048-20971519, default 2048):                 //起始位置默认
  9. Last sector, +sectors or +size{K,M,G} (2048-20971519, default 20971519): +200M                                                                     //结束位置+200MiB
  10. Partition 1 of type Linux and of size 200 MiB is set
  11. Command (m for help): n                                     //新建
  12. Select (default p): p                                     //主分区
  13. Partition number (2-4, default 2): 2                         //分区编号2
  14. First sector .. ..:                                         //起始位置默认
  15. Last sector, .. ..: +2000M                                 //结束位置+2000MiB
  16. Partition 2 of type Linux and of size 2 GiB is set
  17. Command (m for help): n                                     //新建
  18. Select (default p): p                                         //主分区
  19. Partition number (3,4, default 3): 3                         //分区编号3
  20. First sector .. ..:                                         //起始位置默认
  21. Last sector, .. ..: +1000M                                 //结束位置+1000MiB
  22. Partition 3 of type Linux and of size 1000 MiB is set
  23. Command (m for help): w                                     //保存分区结果
  24. [root@server0 ~]# partprobe /dev/vdb                         //刷新分区表
  25. [root@server0 ~]# vgcreate systemvg /dev/vdb1             //创建卷组
  26. Physical volume "/dev/vdb1" successfully created
  27. Volume group "systemvg" successfully created
  28. [root@server0 ~]# lvcreate -n vo -L 196M systemvg         //创建逻辑卷
  29. [root@server0 ~]# lvscan                                     //确认结果
  30. [root@server0 ~]# mkfs.ext3 /dev/systemvg/vo                 //格式化

步骤14:调整逻辑卷的大小

案例概述:

将逻辑卷vo和其文件系统大小调整到 300 MiB。要确保文件系统中的内容保持完整。请注意:分区大小很少能够完全符合要求的大小,所以大小在 270 MiB 和 330 MiB 之间都是可以接受的。

解题参考:

[注:此题建议与第步骤15、16综合考虑,提前确定需几个分区、每个分区的大小]

  1. [root@server0 ~]# fdisk -l /dev/vdb | grep 'label'         //确认现分区表模式
  2. Disk label type: dos
  3. [root@server0 ~]# fdisk /dev/vdb
  4. Command (m for help): n                                     //新建
  5. .. ..
  6. Select (default e): e                                     //扩展分区
  7. Selected partition 4
  8. First sector (6555648-20971519, default 6555648):             //起始位置默认
  9. Last sector, +sectors or +size{K,M,G} .. ..):                 //结束位置默认(全部可用空间)
  10. Command (m for help): n                                     //新建
  11. First sector (6557696-20971519, default 6557696):             //起始位置默认
  12. Last sector, +sectors or +size{K,M,G} .. ..): +500M         //结束位置 +500MiB(卷扩容)
  13. Partition 5 of type Linux and of size 500 MiB is set
  14. Command (m for help): n                                     //新建
  15. First sector (7583744-20971519, default 7583744):             //起始位置默认
  16. Last sector, +sectors or +size{K,M,G} .. ..): +2000M         //结束位置 +2000MiB(自定卷组)
  17. Partition 6 of type Linux and of size 2 GiB is set
  18. Command (m for help): n                                     //新建
  19. First sector (11681792-20971519, default 11681792):         //起始位置默认
  20. Last sector, +sectors or +size{K,M,G} .. ..): +512M         //结束位置 +512MiB(交换分区)
  21. Partition 7 of type Linux and of size 512 MiB is set
  22. Command (m for help): p                                     //确认分区结果无误
  23. Device Boot Start End Blocks Id System
  24. /dev/vdb1 2048 411647 204800 83 Linux
  25. /dev/vdb2 411648 4507647 2048000 83 Linux
  26. /dev/vdb3 4507648 6555647 1024000 83 Linux
  27. /dev/vdb4 6555648 20971519 7207936 5 Extended
  28. /dev/vdb5 6557696 7581695 512000 83 Linux
  29. /dev/vdb6 7583744 11679743 2048000 83 Linux
  30. /dev/vdb7 11681792 12730367 524288 83 Linux
  31. Command (m for help): w                                     //保存分区更改
  32. [root@server0 ~]# partprobe /dev/vdb                         //刷新分区表
  33. [root@server0 ~]# reboot                                     //强烈建议重启一次!!

扩展现有逻辑卷的容量大小:

  1. root@server0 ~]# lvscan
  2. ACTIVE '/dev/systemvg/vo' [196.00 MiB] inherit    //检查原有的逻辑卷
  3. [root@server0 ~]# vgextend systemvg /dev/vdb5             //扩展卷组
  4. [root@server0 ~]# lvextend -L 300MiB /dev/systemvg/vo     //扩展逻辑卷
  5. [root@server0 ~]# resize2fs /dev/systemvg/vo                 //更新逻辑卷大小

步骤15:创建一个逻辑卷

案例概述:

根据下面的要求创建一个新的逻辑卷:

  • 逻辑卷命名为database,属于datastore卷组,并且逻辑卷的大小为50个物理扩展单元 (physical extent)
  • 在datastore卷组中的逻辑卷,物理扩展单元 (physical extent) 大小应为 16 MiB
  • 使用ext3文件系统对新的逻辑卷进行格式化,此逻辑卷应该在系统启动的时候自动挂载在 /mnt/database 目录下

解题参考:

  1. [root@server0 ~]# vgcreate -s 16MiB datastore /dev/vdb6     //创建卷组
  2. [root@server0 ~]# lvcreate -l 50 -n database datastore         //创建逻辑卷
  3. [root@server0 ~]# mkfs.ext3 /dev/datastore/database         //格式化
  4. [root@server0 ~]# mkdir /mnt/database                     //创建挂载点
  5. [root@server0 ~]# vim /etc/fstab                         //配置开机挂载
  6. /dev/datastore/database /mnt/database ext3 defaults 0 0
  7. [root@server0 ~]# mount -a                                 //检查配置记录并挂载

步骤16:添加一个 swap 分区

案例概述:

在您的系统中添加一个大小为 512 MiB 的swap分区:

  • 当您的系统启动时,swap 分区应该可以自动挂载
  • 不要移除或者修改其他已经存在于您的系统中的 swap 分区

解题参考:

  1. [root@server0 ~]# mkswap /dev/vdb7                         //格式化交换分区
  2. [root@server0 ~]# vim /etc/fstab                             //配置开机挂载
  3. /dev/vdb7 swap swap defaults 0 0
  4. [root@server0 ~]# swapon -a                                 //检查配置记录并挂载
  5. [root@server0 ~]# swapon -s                                 //查看交换分区启用情况
原文地址:https://www.cnblogs.com/xiaoren112/p/8267509.html