目录

RHCSA认证介绍

在servera.lab.example.com主机上完成的操作

1、配置网络设置

2、给系统配置默认存储

3、配置SELinux

4、配置用户账户

5、配置crontab 计划任务

6、 创建特殊权限的目录

7、 配置NTP

8、配置autofs

9、配置/var/tmp/fstab 权限

10、配置用户账户

11、查找字符串

12 、创建归档

13、创建容器

14、为容器配置永久存储

15、创建 SHELL 脚本

注意: 可能会出现的新题类型

在serverb.lab.example.com主机上完成的操作

1、设置 root 密码 

2、给系统配置默认软件仓库

3、调整逻辑卷的大小

4、创建交换分区

5、创建逻辑卷

6、创建 VDO 卷

7、配置系统调优


RHCSA认证介绍

考试时间:3H

考试环境:两台虚拟机(servera、serverb)

题目数量:22道

分数:300 ,210合格

考试准备:

        开启servera、serverb虚拟机:

开始做题

在servera.lab.example.com主机上完成的操作

1、配置网络设置

使用nmtui图形化进行配置,方便快捷。

主机名:servera.lab.example.com
IP地址:172.25.250.10/24
网关:172.25.250.254
DNS:172.25.254.254

nmtui 

 

 配置域名

或者用命令方式修改:

#nmcli connection show
#nmcli connection modify "Wired connection 1" ipv4.addresses 172.25.250.10/24 ipv4.gateway
172.25.250.254 ipv4.dns 172.25.254.254 ipv4.method manual connection.autoconnect yes
#nmcli connection up "Wired connection 1" 
#hostnamectl set-hostname servera.lab.example.com
#ip a s 检查 IP 地址
#hostname 检查
#nslookup serverb.lab.example.com 检查 dns
#ip route 检查网关

reboot

重启验证配置

2、给系统配置默认存储

yum的两个存储库的地址分别是:
http://content.example.com/rhel8.0/x86_64/dvd/BaseOS
http://content.example.com/rhel8.0/x86_64/dvd/AppStream

cd /etc/yum.repos.d/
vim rhcsa.repo

[BaseOS]
name=BaseOS
baseurl=http://content.example.com/rhel8.0/x86_64/dvd/BaseOS
enabled=1
gpgcheck=0

[AppStream]
name=AppStream
baseurl=http://content.example.com/rhel8.0/x86_64/dvd/AppStream
enabled=1
gpgcheck=0

测试

yum repolist
yum makecache
yum install httpd

3、配置SELinux

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

        1.系统上的web服务能够提供/var/www/html中所有现在有的html文件(注意:不要删除或者其他方式更改现有文件内容

        2.web服务通过82端口访问

        3.web服务在系统启动的时候自动启动

cd /var/www/html
ll -Z
restorecon -Rv /var/www/html/


vim /etc/httpd/conf/httpd.conf  
Listen 82
systemctl  restart httpd

cat /var/log/manages

semanage port -a -t http_port_t -p tcp 82
systemctl restart httpd
systemctl enable httpd

4、配置用户账户

  1. 创建用户组sysmgrs
  2. 创建用户natasha,所属组为sysmgrs,其密码为redhat
  3. 创建用户harry,所属组为sysmgrs,其密码为redhat
  4. 创建用户john,其shell为非交互式shell,且其不属于sysmgrs组

groupadd sysmgrs
useradd -G sysmgrs natasha
useradd -G sysmgrs harry
useradd -s /sbin/nologin john

echo redhat > | passwd --stdin natasha
echo redhat > | passwd --stdin harry
echo redhat > | passwd --stdin john

5、配置crontab 计划任务

任务为:logger "hello rhcsa"
以用户natasha来执行该任务,周期为每隔两分钟执行一次

#另外一种情况 • 每天 14:23 分 natasha 执行 logger "hello rhcsa"

crontab -eu natasha 

*/2 * * * * logger "hello rhcsa" 
23 14 * * * logger "hello rhcsa"

crontab -lu natasha

6、 创建特殊权限的目录

创建具有特殊权限的目录,要求如下:

• 创建 /home/managers 目录

• /home/managers 目录属于 sysmgrs 组,此目录可以被 sysmgrs 的组成员读 取、写入和访问,但是其他任何用户不具备这些权限。(不包括 root 用户)

• 在 /home/managers 目录中创建的文件的所属组自动变成 sysmgrs

mkdir /home/managers
chown :sysmgrs /home/managers
chmod 2770 /home/managers
#测试
echo hello > /home/managers/test

7、 配置NTP

配置 servera 作为时间服务器 172.25.254.254 的客户端,同步时间

yum install  chrony
vi /etc/chrony.conf
server 172.25.254.254  iburst

systemctl restart chronyd
systemctl enable chronyd
#验证
chronyc sources -V 
nslookup 域名

8、配置autofs

配置 autofs,按照以下要求自动挂载远程用户的家目录,要求如下:

• NFS 服务器 172.25.254.254 的共享目录是 /rhome,此文件系统包 含为用户 testuser 预配置的家目录

• testuser 的家目录是 172.25.254.254:/rhome/testuser

• testuser 的家目录应该自动挂载到 /rhome 下的 /rhome/testuser

• 家目录允许用户写入

• testuser 的密码是 redhat

mkdir /rhome/testuser
yum install autofs
vi /etc/auto.master
/rhome /etc/auto.rhome

vi /etc/auto.rhome
testuser   -rw,sync IP:/rhome/testuser

systemctl restart autofs
systemctl enable autofs

#验证
su - testuser
df

9、配置/var/tmp/fstab 权限

• 配置文件权限,将文件/etc/fstab 复制到/var/tmp/fstab。

配置/var/tmp/fstab 的权限以满足如下条件:

• /var/tmp/fstab 属于 root 用户和 root 组

• /var/tmp/fstab 不能被任何人执行

• 用户 natasha 有读写权限

• 用户 harry 没有读写权限

• 所有其他用户(当前或者未来)能够读取/var/tmp/fstab

cp  /etc/fstab /var/tmp/fstab

chown root:root /var/tmp/fstab

getfacl /var/tmp/fstab

setfacl -m u:natasha:rw- fstab

setfacl -m u:harry:--- fstab

getfacl fstab

10、配置用户账户

配置用户账户 alex,用户的 ID 为 1234,此用户的密码应当为 redhat

useradd -u 1234 alex

id alex

echo redhat | passwd --stdin alex

11、查找字符串

查找文件 /usr/share/xml/iso-codes/iso_639_3.xml 中包含字符串 ng 的所 有行。并将 所有这些行的内容放到文件 /root/list 中,/root/list 不得包 含空行

cat /usr/share/xml/iso-codes/iso_639_3.xml | grep ng > /root/list

12 、创建归档

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

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

tar zcvf /root/backup.tar.gz /usr/local

file backup.tar.gz

tar jcvf /root/backup.tar.bz2 /usr/local

file backup.tar.bz2

13、创建容器

利用注册表服务器上的 nginx 镜像,创建名为 danyuserver 的容器

将其配置为以 systemd 服务的形式运行,且仅面向现有用户 contsvc

该服务应命名为 container-danyuserver.service,此服务在系统重启后将自动启动

#注册表服务器账号: admin/redhat321

14、为容器配置永久存储

将在上一项任务中创建的容器服务配置为使用永久存储

要求如下:

在容器主机的 /home/contsvc 下创建一个名为 container_journal 的目录

容器服务应将主机目录 /home/contsvc/container_journal 挂载到容器上的 /var/log/journal 下面

启动容器服务时,应自动挂载永久存储

在 容 器 上 执 行 命 令 : echo RHCSA > /var/log/journal/rhcsa.log 时 , 容 器 上 的 /var/log/journal/rhcsa.log 和容器主机上的 /home/contsvc/container_journal/rhcsa.log 均应显示: RHCSA

#先切换到contsvc用户
su contsvc

#创建目录
mkdir /home/contsvc/container_journal
podman login -u admin
password:redhat321

#搜索并下载nginx镜像
podman --help 
podman search nginx
搜索完再下载,容器仓库不一样
podman pull nginx

#启动容器,启动时指定存储卷位置
podman run --name danyuserver -it -d -v /home/contsvc/containet_journal:/var/log/journal:Z nginx:latest

podman ps 

#连接容器
podman exec -it danyuserver /bin/bash

#执行命令并验证
echo RHCSA > /var/log/journal/rhcsa.log
cat /var/log/journal/rhcsa.log
exit
cat /home/contsvc/containet_journal/rhcsa.log

#systemd管理启动
mkdir ~/.config/systemd/user -p
cd .config/systemd/user
podman generate systemd -n danyuserver --restart-policy always -f container-danyuserver.service
ls

#重载配置文件并设为开机启动
systemctl --user daemon-reload
systemctl --user enable container-danyuserver.service

exit
reboot

重启服务器,查看容器是否正常

验证
podman ps

15、创建 SHELL 脚本

要求如下:

创建一个名为 myshell 的脚本

该脚本放置在 /usr/local/bin 下

该脚本用于查找 /usr 下所有大小在50K~10m 之间且具有修改组 ID 权限的文件,将这些文件放置于/root/myfiles下

mkdir /root/myfiles
vi /usr/local/bin/myshell

#! /bin/bash
find /usr -type f -and -perm -2000 -and -size  +50k -size -10M  -exec cp -a {} /root/files \;
#记得加执行权限
chmod +x /usr/local/bin/myshell

注意: 可能会出现的新题类型

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

2、创建新用户时,默认密码策略为20天后,密码会过期。

# sysmgrs组成员sudo时不需要密码 /etc/sudoers
visudo 
%sysmgrs  ALL=(ALL) NOPASSWD: ALL

#默认密码策略为20天过期
/etc/login.defs
PASS__MAX_DAYS 20

在serverb.lab.example.com主机上完成的操作

1、设置 root 密码 

将 serverb 主机的密码设置成 redhat

重启 内核界面按e

Linux行 按end,跳到行最后

添加rd.break console=tty0

ctrl +x

救援模式 
mount -o rw,remount /sysroot/
chroot /sysroot/
passwd root
redhat
touch /.autorelabel 
sync 
exit

ctrl +d

2、给系统配置默认软件仓库

要求如下:

YUM 的 两 个 存 储 库 的 地 址 分 别 是 : http://content.example.com/rhel8.2/x86_64/dvd/BaseOS http://content.example.com/rhel8.2/x86_64/dvd/AppStream

cd /etc/yum.repos.d/
vim rhcsa.repo

[BaseOS]
name=BaseOS
baseurl=http://content.example.com/rhel8.2/x86_64/dvd/BaseOS
enabled=1
gpgcheck=0

[AppStream]
name=AppStream
baseurl=http://content.example.com/rhel8.2/x86_64/dvd/AppStream
enabled=1
gpgcheck=0

测试

yum repolist
yum makecache
yum install httpd

3、调整逻辑卷的大小

将名字为 rhel 的逻辑卷的大小调整到 200MiB,确保文件系统的内 容保持不变

调整后的逻辑卷的大小范围在 180MiB 到 220MiB的范围内都是可以接受的

lvs

lvextend -rL 200M /dev/rhcsa/rhel

df -h

4、创建交换分区

向 serverb 添加一个 756MiB 的额外的交换分区

交换分区应在系统启动时自动挂载

不要删除或以任何方式改动系统上的任何现有交换分区

lsblk

fdisk /dev/vdb
n
+756M
p
t
82
w

lsblk
mkswap /dev/vdb1
#激活交换分区
swapon /dev/vdb1
#查看交换分区
swapon
top

vi /etc/fstab

/dev/vdb1 swap swap defaults 0 0

mount -a

5、创建逻辑卷

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

逻辑卷的名字 database, 卷组是 datastorage, 大小是 60 个 PE size datastorage 的 PE size 是 16MiB

格式化成 ext4 文件系统。并在系统启动时自动挂载到/mnt/data

lsblk

fdisk /dev/vdb 
n
+1G
p
w
pvcreate /dev/vdb2
vgcreate -s 16M datastorage /dev/vdb2 
lvcreate -l 60 -n database datastorage 
lvs

mkfs.ext4 /dev/datastorage/database
mkdir /mnt/data
vi /etc/fstab
/dev/datastorage/database /mnt/data ext4  defaults 0 0

mount -a

6、创建 VDO 卷

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

使用未分区的磁盘

该卷的名称为 mydanyu

该卷的逻辑大小是 50G

该卷使用 xfs 文件系统格式化

该卷在系统启动时挂载到/mnt/mydanyu 下

yum install -y vdo
vdo create --name mydanyu --help
vdo create --name mydanyu --vdoLogicalSize=50G --device=/dev/vdc 
mkfs.xfs /dev/mapper/mydanyu
mkdir /mnt/mydanyu
vi /etc/fstab
/dev/mapper/mydanyu /mnt/mydanyu xfs defaults,_netdev  0 0 

mount -a
df 

7、配置系统调优

配置 serverb 使用系统推荐的 tuned 配置

#使用系统的建议配置文件
tuned-adm recommend

#切换到virtual-guest配置文件
tuned-adm profile virtual-guest

#验证
tuned-adm active

reboot

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐