RHCSA 9版本考试资料

2023-12-16 15:32:11

RHCSA 9版本考试要求

01.配置网络设置

将node1配置为具有以下网络配置:

  • 主机名:node1.domain250.example.com
  • IP地址:172.25.250.100
  • 子网掩码:255.255.255.0
  • 网关:172.25.250.254

解题方法:

# 通过控制台连接 servera 进行IP修改,然后使用ip addr命令进行检查,
# 没问题之后,ssh到 servera 进行主机名修改,这样的话可以复制主机名,避免打错
[root@clear ~] nmcli con show

[root@clear ~] nmcli con mod '?卡配置名' ipv4.method manual ipv4.addresses 172.25.0.25/24 ipv4.gateway 172.25.0.254 ipv4.dns 172.25.0.254 autoconnect yes

[root@clear ~] nmcli con up '?卡配置名'

[root@clear ~] ip a

[root@clear ~] ssh root@172.25.250.100

[root@clear ~] hostnamectl set-hostname red.lab0.example.com

# 检查
[root@node1 ~] ip a //查看IP是否正确
[root@node1 ~] hostname //查看主机名是否正确

02.配置您的系统以使用默认存储库

配置您的系统以使用默认存储库

  • YUM 存储库已可以从 http://content/rhel9.0/x86_64/dvd/BaseOS 和 http://content/rhel9.0/x86_64/dvd/AppStream 使用配置您的系统,以将这些位置用作默认存储库

解题方法:

[root@node1 ~]# vim /etc/yum.repos.d/rhcsa.repo
[Base]
name=Base
baseurl=http://content/rhel9.0/x86_64/dvd/BaseOS
enabled=1
gpgcheck=no
[App]
name=App
baseurl=http://content/rhel9.0/x86_64/dvd/AppStream
enabled=1
gpgcheck=no

# 检查
[root@node1 ~]# yum repoinfo
[root@node1 ~]# yum -y install vsftpd

03.调试 SELinux

调试 SELinux
非标准端口82上运行的 Web 服务器在提供内容时遇到问题。根据需要调试并解决问题,使其满足以下条件:

  • 系统上的 Web 服务器能够提供/var/www/html中所托管的 HTML 文件(注:不要删除或以其他方式改动现有的文件内容)
  • Web 服务器能监听端口82上提供内容
  • Web 服务器能在系统启动时自动启动

解题方法:

# 查看哪一个安装包提供了semanage命令
[root@node1 ~]# yum provides "*/semanage"

# 安装semanage命令
[root@node1 ~]# yum -y install policycoreutils-python-utils
[root@node1 ~]# semanage port -l |grep http
[root@node1 ~]# semanage port -a -t http_port_t -p tcp 82

# 也可以使用man semanage port,然后/EXAMPLE。
[root@node1 ~]# systemctl restart httpd
[root@node1 ~]# systemctl enable httpd

# 验证,出现源码即正确(必做操作)
[root@node1 ~]# curl http://node1.domain250.example.com:82

04.创建用户帐户

创建用户帐户
创建下列用户,并确保启用复选框:

  • 名为 sysmgrs 的组
  • 用户 natasha,作为次要组从属于 sysmgrs
  • 用户 harry,作为次要组从属于 sysmgrs
  • 用户 sarah,无权访问系统上的交互式 shell 且不是 sysmgrs 的成员
  • natasha、harry 和 sarah 的密码应当都是 flectrag

解题方法:

[root@node1 ~]# groupadd sysmgrs
[root@node1 ~]# useradd -G sysmgrs natasha
[root@node1 ~]# useradd -G sysmgrs harry
[root@node1 ~]# useradd -s /bin/false sarah
[root@node1 ~]# echo tianyun |passwd --stdin natasha
[root@node1 ~]# echo tianyun |passwd --stdin harry
[root@node1 ~]# echo tianyun |passwd --stdin sarah

05.配置 cron 作业

配置 cron 作业
配置 cron 作业,以用户名 harry 自动每天 14:23 执行 /usr/bin/echo hello

解题方法:

[root@node1 ~]# systemctl status crond
[root@node1 ~]# systemctl enable crond
[root@node1 ~]# crontab -e -u harry
23 14 * * * /usr/bin/echo hello

# 检查
[root@node1 ~]# crontab -l -u harry

06.创建协作目录

创建具有以下特征的共享目录 /home/managers

  • /home/managers 的组拥有权是 sysmgrs
  • 目录应当可被 sysmgrs 的成员读取和执行,写入权限,但任何其他用户不具读写权限。(当然,root 用户有权访问所有文件和文件夹)
  • /home/managers 中创建的文件自动继承组所有权设置为 sysmgrs 组

解题方法:

[root@node1 ~]# mkdir /home/managers
[root@node1 ~]# chgrp sysmgrs /home/managers
[root@node1 ~]# chmod 2770 /home/managers

# 检查
[root@node1 ~]# ll -d /home/managers

07.配置NTP

配置NTP
配置你的系统,使其同步 materials.example.com 的 NTP 服务器。(注:materials.example.com 是classroom.example.com 的 DNS 别名)

解题方法:

# 安装chrony服务,用来配置ntp服务器
[root@node1 ~]# yum -y install chrony
[root@node1 ~]# vim /etc/chrony.conf
server materials.example.com iburst

[root@node1 ~]# systemctl restart chronyd
[root@node1 ~]# systemctl enable chronyd

# 检查
# 随便设置一个时间
[root@node1 ~]# date -s "1982-1-1"
Fri Jan  1 12:00:00 AM EST 1982
# 重启ntp服务器
[root@node1 ~]# systemctl restart chronyd

# 查看时间是否同步。
# 隔3-5秒执行,太快了时间不会同步
[root@node1 ~]# date
Tue Dec 12 11:40:19 PM EST 2023

# 使用chronyc命令查看同步状态。
[root@node1 ~]# chronyc sources -v

  .-- Source mode  '^' = server, '=' = peer, '#' = local clock.
 / .- Source state '*' = current best, '+' = combined, '-' = not combined,
| /             'x' = may be in error, '~' = too variable, '?' = unusable.
||                                                 .- xxxx [ yyyy ] +/- zzzz
||      Reachability register (octal) -.           |  xxxx = adjusted offset,
||      Log2(Polling interval) --.      |          |  yyyy = measured offset,
||                                \     |          |  zzzz = estimated error.
||                                 |    |           \
MS Name/IP address         Stratum Poll Reach LastRx Last sample
===============================================================================
^* classroom.lab.example.com     8   6    17    42    -14us[  -11us] +/-  463us

08.配置autofs

配置autofs
配置 autofs,以按照如下所述自动挂载远程用户的主目录:

  • materials.example.com ( 172.25.254.254 ) NFS 导出 /rhome 到你的系统。此文件系统包含为用户 remoteuser1 预配置的主目录
  • remoteuser1 的主目录是 materials.example.com:/rhome/remoteuser1
  • remoteuser1 的主目录应自动挂载到本地 /rhome 下的 /rhome/remoteuser1
  • 主目录必须可以供用户写入
  • remoteuser1 的密码是 flectrag

解题方法:

# 前期准备(考试不需要操作)
# 返回到foundation0中,远程classroom,创建remoteuser1用户和创建目录。
# 不然后面测试autofs挂载情况有问题。
[kiosk@foundation0 ~]$ ssh root@classroom 'useradd -u 1010 remoteuser1 && mkdir -p /rhome/remoteuser1 && chown remoteuser1: /rhome/remoteuser1'

# 安装nfs和autofs
[root@node1 ~]# yum -y install nfs-utils autofs
[root@node1 ~]# vim /etc/auto.master
/rhome /etc/auto.rhome
[root@node1 ~]# vim /etc/auto.rhome
remoteuser1 -rw materials.example.com:/rhome/remoteuser1
[root@node1 ~]# systemctl enable --now autofs

# 检查
[root@node1 ~]# ll /rhome/
[root@node1 ~]# ssh remoteuser1@localhost
remoteuser1@localhost\'s password: `flectrag`
$ pwd
/rhome/remoteuser1
$ touch my.file
$ mount | grep rhome
...
materials.example.com:/rhome/remoteuser1 on /rhome/remoteuser1 type nfs4 (`rw`,relatime,vers=4.2,rsize=131072,wsize=131072,namlen=255,hard,proto=tcp,timeo=600,retrans=2,sec=sys,clientaddr=172.25.250.100,local_lock=none,addr=172.25.254.254)

09.配置用户帐号

配置用户帐号
配置用户 manalo,其用户 ID 为 3533。此用户的密码应为 flectrag。

解题方法:

[root@node1 ~]# useradd -u 3533 manalo
[root@node1 ~]# echo flectrag | passwd --stdin manalo

10.查找文件

查找文件
查找到 jacques 所有的所有文件并移到根目录下的 /root/findfiles 目录

解题方法:

[root@node1 ~]# mkdir /root/findfiles
[root@node1 ~]# find / -user jacques
[root@node1 ~]# find / -user jacques -exec cp -a {} /root/findfiles \;

# 检查
[root@node1 ~]# ll /root/findfiles/

11.查找字符串

查找字符串

  • 查找文件 /usr/share/xml/iso-codes/iso_639_3.xml 中包含字符串 ng 的所有行。
  • 将所有这些行的副本保存到根目录下的 /root/list 中。
  • /root/list 不得包含空行,且所有行必须是/usr/share/xml/iso-codes/iso_639_3.xml 中原始行的拷贝副本。

解题方法:

[root@node1 ~]# grep ng /usr/share/xml/iso-codes/iso_639_3.xml
[root@node1 ~]# grep ng /usr/share/xml/iso-codes/iso_639_3.xml > /root/list

# 检查
[root@node1 ~]# cat /root/list

12.创建存档

创建一个名为 /root/backup.tar.bz2 的 tar 存档,其应包含 /usr/local 的 tar 存档,其应包含/usr/local 的内容。该 tar 存档必须使用bzip2进行压缩。

解题方法:

[root@node1 ~]# yum -y install bzip2
[root@node1 ~]# tar -jcvPf /root/backup.tar.bz2 /usr/local

# 验证
[root@node1 ~]# file /root/backup.tar.bz

13.创建一个容器镜像

创建一个容器镜像

  • wallah 用户,下载 http://classroom/Containerfile
  • 不要修改这个文件的内容,构建镜像名为 pdf

解题方法:

# 安装容器管理工具
[root@node1 ~]# dnf -y install container-tools

# 使用wallah用户执行操作
[root@node1 ~]# ssh wallah@localhost

# 下载容器构建文件
[wallah@node1 ~]# wget http://classroom/Containerfile

# 登录镜像仓库
[wallah@node1 ~]# podman login -u admin -p redhat321 registry.lab.example.com

# 使用当前目录的 Containerfile 构建容器镜像,镜像名称为 pdf
[wallah@node1 ~]# podman build -t pdf .

# 查看镜像
[wallah@node1 ~]$ podman images
REPOSITORY                              TAG         IMAGE ID      CREATED         SIZE
localhost/pdf                           latest      1d6e7ea71460  31 seconds ago  300 MB
registry.lab.example.com/ubi9-beta/ubi  latest      28b0a4b69d9b  2 years ago     229 MB

14.将容器配置为服务

将容器配置为服务

  • wallah 用户,配置一个 systemd 服务
  • 容器名为 ascii2pdf
  • 使用刚刚创建的镜像 pdf
  • 该服务命名为 container-ascii2pdf,并在系统重启时自动启动,无需手动
  • 将服务配置为在启动时自动将 /opt/file 挂载到容器中的 /dir1 下; /opt/progress 挂载到容器中的 /dir2 下;

解题方法:

# 注意,下面操作必须通过wallah用户ssh远程登录到本机操作
[root@node1 ~]# ssh wallah@localhost

# 准备相关的映射目录
[wallah@node1 ~]$ sudo mkdir /opt/{file,progress}
[wallah@node1 ~]$ sudo chown wallah:wallah /opt/{file,progress}

# 启动容器并映射目录
# 映射目录的 :Z 表示更改目录的SELINUX安全上下文,能让容器访问。
[wallah@node1 ~]$ podman run -d --name ascii2pdf -v /opt/file:/dir1:Z -v /opt/progress:/dir2:Z pdf
[wallah@node1 ~]$ podman ps -a

# 创建systemd服务?件
[wallah@node1 ~]$ mkdir -p ~/.config/systemd/user
[wallah@node1 ~]$ cd ~/.config/systemd/user/
[wallah@node1 ~]$ podman generate systemd -n ascii2pdf -f --new

[wallah@node1 user]$ ll
total 4
-rw-r--r--. 1 wallah wallah 770 Dec 13 01:07 container-ascii2pdf.service

# 暂停 并 删除现有的 ascii2pdf 容器
[wallah@node1 ~]$ podman stop ascii2pdf
[wallah@node1 ~]$ podman rm ascii2pdf
[wallah@node1 ~]$ podman ps -a

# 启用并启动container-ascii2pdf服务
[wallah@node1 ~]$ systemctl --user daemon-reload
[wallah@node1 ~]$ systemctl --user enable --now container-ascii2pdf

# 查看容器状态
[wallah@node1 ~]$ systemctl --user status container-ascii2pdf
[wallah@node1 ~]$ podman ps

# node1节点,切换到root用户执行下面操作
# 确保 wallah 用户的服务在系统启动时启动
[root@node1 ~]# loginctl enable-linger
[root@node1 ~]# loginctl show-user wallah

# 检查,测试容器是否开机自启(必做操作)
[root@node1 ~]# reboot
[root@node1 ~]# ssh wallah@node1
[wallah@node1 ~]# podman ps

15.添加sudo权限配置

添加sudo权限配置

  • 允许 sysmgrs 组成员sudo时不需要密码

解题方法:

[root@node1 ~]# visudo
...
%wheel ALL=(ALL) NOPASSWD: ALL
%sysmgrs ALL=(ALL) NOPASSWD: ALL

# 检查(必做操作)
[root@node1 ~]# su - natasha
[natasha@node1 ~]# sudo cat /etc/shadow

16、设置 root 密码

将 node2 的 root 密码设置为 redhat。你需要获得系统访问权限才能进行此操作。

解题方法:

***重启 node2 机器,等待如图1所示页面,按e进?图2页面,原配置如图所示。修改原配置为红色框选部分,如图?所示,然后按ctrl+x,执行以下命令

# chroot /sysroot
# echo redhat |passwd --stdin root
# touch /.autorelabel
# sync
# exit
# reboot

17.配置您的系统以使用默认存储库

配置您的系统以使用默认存储库

  • YUM存储库已可以从http://content/rhel9.0/x86_64/dvd/BaseOS和http://content/rhel9.0/x86_64/dvd/AppStream 使用配置您的系统,以将这些位置用作默认存储库。

解题方法:

方法一:
# 将node1的yum配置文件复制过来。
[root@node2 ~]# scp root@node1:/etc/yum.repos.d/rhcsa.repo /etc/yum.repos.d/

方法二:
[root@node2 ~]# vim /etc/yum.repos.d/rhcsa.repo
[Base]
name=Base
baseurl=http://content/rhel9.0/x86_64/dvd/BaseOS
enabled=1
gpgcheck=no
[App]
name=App
baseurl=http://content/rhel9.0/x86_64/dvd/AppStream
enabled=1
gpgcheck=no

# 检查
[root@node2 ~]# yum repoinfo
[root@node2 ~]# yum -y install ftp

18.调整逻辑卷大小

  • 将逻辑卷vo及其文件系统的大小调整到300 MiB。确保文件系统内容保持不变。
  • 注︰分区大小很少与请求的大小完全相同,因此可以接受范围为290 MiB到310 MiB的大小。

ext4 使用 resize2fs 立即生效;

xfs 使用 xfs_growfs 立即生效

解题方法:

# 扫描逻辑卷
[root@node2 ~]# lvscan
# 扩展逻辑卷。-rL 扩展卷之后,会立刻将文件系统空间调整。
[root@node2 ~]# lvextend -rL 300M /dev/myvol/vo
[root@node2 ~]# lsblk
[root@node2 ~]# lvs

# 检查
[root@node2 ~]# df -h

19.添加交换分区

向您的系统添加一个额外的交换分区512MiB。交换分区应在系统启动时自动挂载。不要删除或以任何方式改动系统上的任何现有交换分区。

解题方法:

[root@node2 ~]# lsblk

[root@node2 ~]# fdisk /dev/vdb

Welcome to fdisk (util-linux 2.37.4).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

This disk is currently in use - repartitioning is probably a bad idea.
It's recommended to umount all file systems, and swapoff all swap
partitions on this disk.


Command (m for help): n
Partition number (3-128, default 3):
First sector (1476608-10485726, default 1476608):
Last sector, +/-sectors or +/-size{K,M,G,T,P} (1476608-10485726, default 10485726): +512M

Created a new partition 3 of type 'Linux filesystem' and of size 512 MiB.

Command (m for help): w
The partition table has been altered.
Syncing disks.


[root@node2 ~]# mkswap /dev/vdb3

[root@node2 ~]# vim /etc/fstab
/dev/vdb3 swap swap defaults 0 0

[root@node2 ~]# swapon -a

[root@node2 ~]# swapon
NAME      TYPE      SIZE USED PRIO
/dev/vdb2 partition 243M   0B   -2
/dev/vdb3 partition 512M   0B   -3

20.创建逻辑卷

根据如下要求,创建新的逻辑卷:

  • 逻辑卷取名为mylv ,属于myvg卷组,大小为50个扩展块
  • myvg卷组中逻辑卷的扩展块大小应当为16 MiB
  • 使用vfat文件系统格式化新逻辑卷。该逻辑卷应在系统启动时自动挂载到/mnt/mydata下

解题方法:

[root@node2 ~]# lsblk

[root@node2 ~]# fdisk /dev/vdb
Welcome to fdisk (util-linux 2.37.4).
Changes will remain in memory only, until you decide to write them.
Be careful before using the write command.

Command (m for help): n //添加新分区
Partition type
   p primary (1 primary, 0 extended, 3 free) //主分区
   e extended (container for logical partitions) //扩展分区
Select (default p): p
Partition number (2-4, default 2): 回车
First sector (1026048-20971519, default 1026048): 回车

***此处,分区大小,必须大于总大小,不可以刚好等于,建议多200M
Last sector, +/-sectors or +/-size{K,M,G,T,P} (1026048-20971519, default 20971519): +1200M //分区大小

Created a new partition 2 of type 'Linux' and of size 512 MiB.

Command (m for help): w    //保存退出
The partition table has been altered.
Syncing disks.

[root@node2 ~]# vgcreate -s 16M myvg /dev/vdb4
[root@node2 ~]# lvcreate -l 50 -n mylv myvg

# 安装vfat
[root@node2 ~]# yum provides */mkfs.vfat
[root@node2 ~]# yum -y install dosfstools

[root@node2 ~]# mkfs.vfat /dev/myvg/mylv
[root@node2 ~]# mkdir /mnt/mydata
[root@node2 ~]# vim /etc/fstab
/dev/myvg/mylv  /mnt/mydata     vfat    defaults 0 0
[root@node2 ~]# mount -a

21.配置系统调优

为您的系统选择建议的tuned配置集并将它设为默认设置。

解题方法:

# 安装并启用tuned
[root@node2 ~]# yum -y install tuned
[root@node2 ~]# systemctl enable tuned
[root@node2 ~]# systemctl restart tuned

# 查看系统建议的配置方案
[root@node2 ~]# tuned-adm recommend
virtual-guest

# 切换到指定的配置方案
[root@node2 ~]# tuned-adm profile virtual-guest

# 查看当前的配置方案
[root@node2 ~]# tuned-adm active
Current active profile: virtual-guest

文章来源:https://blog.csdn.net/weixin_45603370/article/details/135032313
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。