300字范文,内容丰富有趣,生活中的好帮手!
300字范文 > RedHat红帽认证---RHCSA

RedHat红帽认证---RHCSA

时间:2024-07-29 07:16:59

相关推荐

RedHat红帽认证---RHCSA

💗wei_shuo的个人主页

💫wei_shuo的学习社区

🌐Hello World !

RHCSA

node1

1.配置网络设置

将 node1 配置为具有以下网络配置:主机名:node1.IP 地址:172.25.250.100子网掩码:255.255.255.0网关:172.25.250.254DNS服务器:172.25.250.254

1.1nodel 1 配置网络[root@clear ~]# nmcli connection modify Wired\ connection\ 1 ipv4.method manual ipv4.addresses 172.25.250.100/24 ipv4.gateway 172.25.250.254 ipv4.dns 172.25.250.254 connection.autoconnect yes# ipv4.method manual#指定是静态配置# Wired\ connection\ 1 #默认网络连接名称,针对它进行配置# connection.autoconnect#自动连接1.2nmtui(图形界面配置ip,网关,dns)2.重启网络[root@clear ~]# nmcli connection down Wired\ connection\ 1[root@clear ~]# nmcli connection up Wired\ connection\ 13.查看ip[root@node1 ~]# ip a4.查看网关:[root@node1 ~]# ip route default via 172.25.250.254 dev eth0 proto static metric 100 172.25.250.0/24 dev eth0 proto kernel scope link src 172.25.250.100 metric 100 [root@clear ~]# route -nKernel IP routing tableDestinationGateway Genmask Flags Metric Ref Use Iface0.0.0.0 172.25.250.254 0.0.0.0 UG 100 0 0 eth0172.25.250.0 0.0.0.0 255.255.255.0 U100 0 0 eth0172.25.250.0 0.0.0.0 255.255.255.0 U100 0 0 eth05.查看DNS服务器[root@node1 ~]# cat /etc/resolv.conf # Generated by NetworkManagersearch nameserver 172.25.250.254#查看DNS服务器[root@clear ~]# dig | grep SERVER;; SERVER: 172.25.250.254#53(172.25.250.254)6.Terminal永久设置主机名[root@clear ~]# hostnamectl set-hostname node1.7.刷新主机名[root@clear ~]# bash[root@clear ~]# su -l8.查看主机名[root@node1 ~]# hostname[root@node1 ~]# cat /etc/hostname node1.

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

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

1.安装yum-config-manager安装包[root@clear ~]# rpm -ivh http://foundation0./dvd/BaseOS/Packages/yum-utils-4.0.12-3.el8.noarch.rpm2. 仓库文件下载安装# yum-config-manager#仓库文件下载安装命令# yum-config-manager -h #列出可用命令( --add-repo )[root@clear ~]# yum-config-manager --add-repo http://foundation0./dvd/BaseOS Adding repo from: http://foundation0./dvd/BaseOS[root@clear ~]# yum-config-manager --add-repo http://foundation0./dvd/AppStreamAdding repo from: http://foundation0./dvd/AppStream3.查看是否安装成功 [root@clear ~]# cd /etc/yum.repos.d/[root@clear yum.repos.d]# lsfoundation0._dvd_AppStream.repo foundation0._dvd_BaseOS.repo[root@clear yum.repos.d]# 4.导入秘钥[root@node1 ~]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release 4.1.搜索效验文件[root@clear yum.repos.d]# find / -name *KEY*/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-beta/etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release/usr/share/doc/gnupg2/KEYSERVER添加效验文件[root@clear yum.repos.d]# rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-redhat-release5.测试[root@clear yum.repos.d]# yum install -y ftpComplete!

3.调试 SELinux(服务)

非标准端口 82 上运行的 Web 服务器在提供内容时遇到问题。根据需要调试并解决问题,使其满足以下条件:系统上的 Web 服务器能够提供 /var/www/html 中所有现有的 HTML 文件(注:不要删除或以其他方式改动现有的文件内容)Web 服务器在端口 82 上提供此内容Web 服务器在系统启动时自动启动

#semanage命令是用来查询与修改SELinux默认目录的安全上下文#apache属于http服务1.查看httpd服务状态[root@node1 ~]# systemctl status httpdActive: failed (Result: exit-code)2.查看HTML文件的安全上下文#ls -Z打印文件的安全上下文[root@node1 html]# ls -Z /var/www/html/*system_u:object_r:default_t:s0 /var/www/html/file1system_u:object_r:httpd_sys_content_t:s0 /var/www/html/file2system_u:object_r:httpd_sys_content_t:s0 /var/www/html/file33.修改原来的/var/www/html/file1文件的安全上下文man semange fcontext-a 换成 -m(modify)[root@node1 html]# semanage fcontext -m -t httpd_sys_content_t "/var/www/html/file1"4.刷新安全上下文man semange fcontext[root@node1 html]# restorecon -R -v /var/www/html/file1Relabeled /var/www/html/file1 from system_u:object_r:default_t:s0 to system_u:object_r:httpd_sys_content_t:s05.用semanage,放行82端口man semanage port[root@node1 ~]# semanage port -a -t http_port_t -p tcp 826.检查是否放行82端口man semanage port[root@node1 ~]# semanage port -l | grep httphttp_port_ttcp82, 80, 81, 443, 488, 8008, 8009, 8443, 90007.重启httpd服务,设置开机自启,检查服务是否开启[root@node1 ~]# systemctl restart httpd[root@node1 ~]# systemctl enable httpd[root@node1 ~]# systemctl status httpd8.访问验证[root@node1 html]# curl http://172.25.250.100:82/file{1..3}EX200 TestingEX200 TestingEX200 Testing或者[root@node1 ~]# curl localhost:82/file{1..3}EX200 TestingEX200 TestingEX200 Testing

4.创建用户帐户

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

[root@clear ~]# groupadd sysmgrs[root@clear ~]# useradd natasha -G sysmgrs [root@clear ~]# useradd harry -G sysmgrs [root@clear ~]# useradd sarah --shell /sbin/nologin[root@clear ~]# echo "flectrag" | passwd --stdin natasha Changing password for user natasha.passwd: all authentication tokens updated successfully.[root@clear ~]# echo "flectrag" | passwd --stdin harry Changing password for user harry.passwd: all authentication tokens updated successfully.[root@clear ~]# echo "flectrag" | passwd --stdin sarah Changing password for user sarah.passwd: all authentication tokens updated successfully.测试登录[root@node1 ~]# ssh natasha@localhost[harry@node1 ~]$ ssh sarah@localhost[harry@node1 ~]$ ssh sarah@localhost#不可登录 /sbin/nologin

5.配置 cron 作业(服务)

配置 cron 作业配置 cron 作业,该作业每隔 2 分钟运行并执行以下命令:logger "EX200 in progress",以用户 natasha 身份运行

1.查看并验证服务是否启动[root@node1 ~]# systemctl status crond.service Active: active (running)2.编辑计划任务[root@node1 ~]# crontab -u natasha -e[root@node1 ~]# crontab -u natasha -l*/2 * * * * logger "EX200 in progress"3.设置开机自启[root@node1 ~]# systemctl enable crond.service4.验证#2分钟后验证[root@node1 ~]# grep EX200 /var/log/messagesMay 23 11:36:01 node1 natasha[28082]: EX200 in progressMay 23 11:38:02 node1 natasha[28086]: EX200 in progressMay 23 11:40:01 node1 natasha[28097]: EX200 in progress

6.创建协作目录

创建具有以下特征的协作目录 /home/managers :/home/managers 的组用权是 sysmgrs目录应当可被 sysmgrs 的成员读取、写入和访问,但任何其他用户不具这些权限。(当然,root 用户有权访问系统上的所有文件和目录)/home/managers 中创建的文件自动将组所有权设置到 sysmgrs 组

检查目录是否存在[root@node1 ~]# ll -d /home/managers1.创建指定的目录文件[root@node1 ~]# mkdir /home/managers2.修改/home/managers 的组用权为 sysmgrs[root@node1 ~]# ll -d /home/managers/drwxr-xr-x. 2 root root 6 May 14 18:16 /home/managers/[root@node1 ~]# chown root:sysmgrs /home/managers/[root@node1 ~]# ll -d /home/managers/drwxr-xr-x. 2 root sysmgrs 6 May 14 18:16 /home/managers/3.修改目录文件,所属组的权限[root@node1 ~]# chmod 070 /home/managers/[root@node1 ~]# chmod g=rwx,o=- /home/managers[root@node1 ~]# ll -d /home/managers/d---rwx---. 2 root sysmgrs 6 May 14 18:16 /home/managers/4.给/home/managers目录设置特殊权限,使其子目录继承父目录的所属组[root@node1 ~]# chmod g+s /home/managers/[root@node1 ~]# ll -d /home/managers/d---rws---. 2 root sysmgrs 6 May 14 18:16 /home/managers/5.验证g+s权限效果[root@node1 managers]# touch file[root@node1 managers]# lltotal 0-rw-r--r--. 1 root sysmgrs 0 May 14 18:27 file

7.配置 NTP(时间同步服务)(服务)

配置 NTP配置您的系统,使其成为 的 NTP 客户端。(注: 是 的 DNS 别名)

#systemctl list-units 列出所有启动unit#Unit 是 Systemd 管理系统资源的基本单位#客服端 向 服务器 同步# nodel是客户端 的 NTP 是 服务器1.查看NTP服务主配置文件名称[root@node1 ~]# systemctl list-units | grep NTPchronyd.service loaded active running NTP client/server 2.确认服务是否启动[root@node1 ~]# systemctl status chronyd.service Active: active (running)3.修改服务配置文件,指定要添加的上游服务器地址[root@node1 ~]# vim /etc/chrony.conf#server _gateway iburstserver iburst4.重启服务,让配置文件的修改生效,并设置开机自启[root@node1 ~]# systemctl restart chronyd.service [root@node1 ~]# systemctl enable chronyd.service 5.验证方法一:[root@node1 ~]# chronyc sources -v#查看同步时间状态^* 方法一:[root@node1 ~]# timedatectl#查看NTP是否活跃,系统时钟是否同步System clock synchronized: yesNTP service: active

8.配置 autofs(服务)

配置 autofs配置 autofs ,以按照如下所述自动挂载远程用户的主目录: ( 172.25.254.254 ) NFS 导出 /rhome 到您的系统。此文件系统包含为用户 remoteuser1 预配置的主目录remoteuser1 的主目录是 :/rhome/remoteuser1remoteuser1 的主目录应自动挂载到本地 /rhome 下的 /rhome/remoteuser1主目录必须可供其用户写入remoteuser1 的密码是 flectrag

1.查找主配置文件[root@node1 ~]# rpm -qc autofs /etc/auto.master# 绝对路径配置文件/etc/auto.misc# 相对路径配置文件2.配置主配置文件[root@node1 ~]# vim /etc/auto.master/misc /etc/auto.misc/rhome /etc/auto.rhome#相对路径配置文件3.将相对路径配置文件复制到,主配置文件所编写的路径中[root@node1 ~]# cp /etc/auto.misc /etc/auto.rhome4.编辑相对路径配置文件[root@node1 ~]# vim /etc/auto.rhomeremoteuser1-rw :/rhome/remoteuser15.重启服务[root@node1 ~]# systemctl restart autofs.service 查看状态[root@node1 ~]# systemctl status autofs.service Active: active (running)设置开机自启[root@node1 ~]# systemctl enable autofs.service Created symlink /etc/systemd/system/multi-user.target.wants/autofs.service → /usr/lib/systemd/system/autofs.service.6.登录测试[root@node1 ~]# ssh remoteuser1@localhost[remoteuser1@clear ~]$ pwd/rhome/remoteuser1检查写入权限[remoteuser1@node1 ~]$ touch 1.txt[remoteuser1@node1 ~]$ lltotal 0-rw-rw-r--. 1 devops devops 0 May 27 12:04 1.txt

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

配置 /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@node1 ~]# cp /etc/fstab /var/tmp/fstab2.检查拥有人,拥有组,是否符合题意,且无执行权限[root@node1 ~]# ll -d /var/tmp/fstab -rw-r--r--. 1 root root 534 May 23 12:27 /var/tmp/fstab3.设置setfacl权限man setfacl[root@node1 ~]# setfacl -m u:natasha:rw-,u:harry:- /var/tmp/fstab 4.验证[root@node1 ~]# getfacl /var/tmp/fstabuser:natasha:rw-user:harry:---

10.配置用户帐户

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

[root@clear ~]# useradd -u 3533 manalo[root@clear ~]# echo "flectrag" | passwd --stdin manalo Changing password for user manalo.passwd: all authentication tokens updated successfully.

11.查找文件

查找文件查找归 jacques 所有的所有文件并将其副本放入 /root/findfiles 目录

1.创建目录[root@clear ~]# mkdir /root/findfiles2.查找[root@clear ~]# find / -user jacques -exec cp -a {} /root/findfiles/ \;3.验证[root@clear ~]# ls /root/findfiles/gamelan jacques libWedgeit.so.1.2.3

12. 查找字符串

查找字符串查找文件 /usr/share/xml/iso-codes/iso_639_3.xml 中包含字符串 ng 的所有行。将所有这些行的副本按原始顺序放在文件 /root/list 中。 /root/list 不得包含空行,且所有行必须是 /usr/share/xml/iso-codes/iso_639_3.xml 中原始行的确切副本。

1.查找字符串[root@node1 ~]# grep ng /usr/share/xml/iso-codes/iso_639_3.xml | grep -v ^$ > /root/list2.验证[root@node1 ~]# cat -n /root/list

13.创建存档

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

1.打包[root@clear ~]# tar -czvf /root/backup.tar.gz /usr/local2.验证[root@clear ~]# lsanaconda-ks.cfg findfilesbackup.tar.gz original-ks.cfg3.验证是否是gzip[root@clear ~]# file backup.tar.gz backup.tar.gz: gzip compressed data, last modified: Sun May 22 17:10:03 , from Unix, original size 51200

14.配置容器使其自动启动(A卷)(后做)

配置容器使其自动启动(A卷)利用注册服务器上的 rsyslog 镜像,创建一个名为 logserver 的容器面向 wallah 用户,配置一个 systemd 服务该服务命名为 container-logserver ,并在系统重启时自动启动,无需干预

15.为容器配置持久存储(A卷)(先做)(服务)

为容器配置持久存储(A卷)通过以下方式扩展上一个任务的服务配置主机系统的 journald 日志以在系统重启后保留数据,并重新启动日志记录服务将主机 /var/log/journal目录下任何以 *.journal 的文件复制到 /home/wallah/container_logfile 中将服务配置为在启动时自动将 /home/wallah/container_logfile 挂载到容器中的 /var/log/journal 下

1. 查看journald服务[root@node1 ~]# systemctl list-unit-files | grep jousystemd-journald.service static 2.查看服务状态[root@node1 ~]# systemctl status systemd-journald.service Active: active (running) 3.查找主配置文件man systemd-journald.service /conf/etc/systemd/journald.conf或者man journald.conf/etc/systemd/journald.conf4.编辑主配置文件,做永久储存[root@node1 ~]# vim /etc/systemd/journald.conf14 [Journal]15 Storage=auto5.查看临时目录[root@node1 ~]# ls -ld /run/log/journal/drwxr-sr-x. 4 root systemd-journal 80 May 24 16:51 /run/log/journal/6.检查 /var/log/journal目录是否存在[root@node1 ~]# ls /var/log/journalls: cannot access '/var/log/journal': No such file or directory不存在则,创建目录[root@node1 ~]# mkdir /var/log/journal查看日志文件权限,将 /var/log/journal文件权限及所属关系与其同步[root@node1 ~]# ls -ld /run/log/journal/drwxr-sr-x. 4 root systemd-journal 80 May 24 16:51 /run/log/journal/[root@node1 ~]# ls -ld /var/log/journal/drwxr-xr-x. 2 root root 6 May 24 18:41 /var/log/journal/更改 /var/log/journal文件权限及所属关系与原日志文件同步[root@node1 ~]# chmod 2755 /var/log/journal或者[root@node1 ~]# chmod g+s /var/log/journal[root@node1 ~]# chown root:systemd-journal /var/log/journal7.检查/var/log/journal目录,权限、所属关系,是否与日志文件相同[root@node1 ~]# ls -ld /var/log/journal/drwxr-sr-x. 3 root systemd-journal 46 May 24 18:58 /var/log/journal/8.检查systemd-journald.service 服务状态、设置开机自启[root@node1 ~]# systemctl status systemd-journald[root@node1 ~]# systemctl restart systemd-journald[root@node1 ~]# systemctl enable systemd-journald检查是否是错误信息[root@node1 ~]# echo $?0# 0 表示不是错误信息9.将主机 /var/log/journal目录下任何以 *.journal 的文件复制到 /home/wallah/container_logfile 中检查 /home/wallah/container_logfile目录是否存在[root@node1 ~]# ls /home/wallah/container_logfile[root@node1 ~]# cp /var/log/journal/*/*.journal /home/wallah/container_logfile 不带权限或者[root@node1 ~]# cp -a /var/log/journal/*/*.journal /home/wallah/container_logfile 带权限10.将home(家目录)的权限改为自己的权限# chown -R递归处理所有的文件及子目录[root@node1 ~]# chown -R wallah ~wallah/11.切换至普通用户,普通用户做容器# dorker容器root用户运行# podman容器普通用户运行[root@node1 ~]# ssh wallah@localhost12.登录到容器[wallah@node1 ~]$ podman login -u admin -p redhat321 registry.13.搜索镜像[wallah@node1 ~]$ podman search registry./ registry./rhel8/rsyslog 0 14.运行容器,且自动挂载容器[wallah@node1 ~]$ podman run -d --name logserver -v /home/wallah/container_logfile:/var/log/journal:Z registry./rhel8/rsyslog 4b36ae21d7b1f77942d1e0c44409b2334cf940a813f10e801ce7fc4c9e1312ea15.停止镜像,实现开机自启[wallah@node1 ~]$ podman stop logserver 4b36ae21d7b1f77942d1e0c44409b2334cf940a813f10e801ce7fc4c9e1312ea16.启用滞留功能(退出用户的时候仍旧有效、好做开机自启)[wallah@node1 ~]$ loginctl enable-linger 17.查看是否开启滞留功能[wallah@node1 ~]$ loginctl show-user wallah Linger=yes18.# 找systemd单元 # -k 检索[root@node1 ~]# man -k systemdsystemd.unit (5)- Unit configuration# 找用户家目录,在用户家目录配置单元文件,设置开机自启[root@node1 ~]# man systemd.unit ~/.config/systemd/user/ #用户家目录19.查看用户家目录路径是否存在[wallah@node1 ~]$ ls ~/.config/systemd/user/ls: cannot access '/home/wallah/.config/systemd/user/*': No such file or directory20.递归创建用户家目录路径,进入家目录路径[wallah@node1 ~]$ mkdir -p ~/.config/systemd/user[wallah@node1 *]$ cd ~/.config/systemd/user/[wallah@node1 user]$ ls21.在用户家目录配置(生成)单元文件[wallah@node1 user]$ podman generate systemd --name logserver -f#生成单元生成文件/home/wallah/.config/systemd/user/container-logserver.service[wallah@node1 user]$ lscontainer-logserver.service22.添加面向用户的开机自启(只能做开机自启,不能查状态)[wallah@node1 user]$ systemctl --user enable --now container-logserver.service[wallah@node1 user]$ lsdefault.target.wants container-logserver.service multi-user.target.wants23.验证[wallah@node1 user]$ podman exec logserver ls /var/log/journalsystem.journaluser-1005.journal[wallah@node1 user]$ ps -aux | grep podman# ps -aux 不区分终端,显示所有用户的所有进程00 podman/bin/podman

<hr/?

16.配置容器使其自动启动(B卷)(服务)

配置容器使其自动启动(B卷)利用注册服务器上的 rsyslog 镜像,创建一个名为 logger 的容器面向 wallah 用户,配置一个 systemd 服务该服务命名为 container-logger ,并在系统重启时自动启动,无需干预将服务配置为在启动时自动将 /home/wallah/var_log 挂载到容器中的 /var/log 下在容器中执行命令podman exec logger logger -p authpriv.info SUIBIAN

[root@node1 ~]# podman stop 容器ID / 名字停止运行容器[root@node1 ~]# podman ps 列出容器[root@node1 ~]# podman rm 容器ID / 名字删除容器

查看用户是否存在[root@node1 ~]# id wallah uid=1004(wallah) gid=1004(wallah) groups=1004(wallah),10(wheel)1.登录至wallah 用户[root@node1 ~]# ssh wallah@localhost2.登录到容器注册表[wallah@node1 ~]$ podman login -u admin -p redhat321 registry.WARNING! Using --password via the cli is insecure. Please consider using --password-stdinLogin Succeeded!3.搜索相关镜像,rsyslog 镜像[wallah@node1 ~]$ podman search registry./INDEX NAME DESCRIPTION STARS OFFICIALregistry./rhel8/rsyslog 0 4.查看挂载源,挂载点,是否存在[wallah@node1 var_log]$ cd /home/wallah/var_log[wallah@node1 ~]$ cd /var/log4.通过指定镜像,运行容器,指定容器名称,挂载#-d 后台运行-v 挂载:Z selinux安全上下文[wallah@node1 ~]$ podman run -d --name logger -v /home/wallah/var_log:/var/log:Z registry./rhel8/rsyslog ec3191dc92bad12a0332846540867b3000d599fde64d08c534979ba58f025.停止镜像,实现开机自启[wallah@node1 ~]$ podman stop logger ec3191dc92bad12a0332846540867b3000d599fde64d08c534979ba58f026.开启普通用户滞留功能[wallah@node1 ~]$ loginctl enable-linger 7.查看验证是否,开启普通用户滞留功能[wallah@node1 ~]$ loginctl show-user wallah Linger=yes8.创建最高级的启动目录,便于配置容器开机自启# mkdir -p 需要时创建目标目录的上层目录,但即使这些目录已存在也不当作错误处理[wallah@node1 ~]$ mkdir -p ~/.config/systemd/user/9.进入最高级的启动目录,做开机自启[wallah@node1 ~]$ cd ~/.config/systemd/user/[wallah@node1 user]$ 10.生成单元文件# -f 生成文件[wallah@node1 user]$ podman generate systemd --name logger -f/home/wallah/.config/systemd/user/container-logger.service[wallah@node1 user]$ lscontainer-logger.service11.对单元文件做开机自启[wallah@node1 user]$ systemctl --user enable --now container-logger.service Created symlink /home/wallah/.config/systemd/user/multi-user.target.wants/container-logger.service → /home/wallah/.config/systemd/user/container-logger.service.Created symlink /home/wallah/.config/systemd/user/default.target.wants/container-logger.service → /home/wallah/.config/systemd/user/container-logger.service.12.查看单元文件开机自启状态[wallah@node1 user]$ systemctl --user status enable --now container-logger.service Active: active (running) [wallah@node1 user]$ systemctl --user is-enabled --now container-logger.serviceenable 13.容器中执行命令podman exec logger logger -p authpriv.info SUIBIAN[wallah@node1 user]$ podman exec logger logger -p authpriv.info SUIBIAN14.验证[root@node1 ~]# ps -aux | grep podman

17.容器nginx(附加题)

容器nginx利用注册服务器上的 nginx 镜像,创建一个名为 nginx 的容器面向 wallah 用户,配置一个 systemd 服务该服务命名为 container-nginx ,并在系统重启时自动启动,无需干预在/home/wallah/www下创建文件index.html,内容为hello nginx将服务配置为在启动时自动将 /home/wallah/www 挂载到容器中的 /usr/share/nginx/html 下将容器主机上的端口 8080 映射到容器上的端口 80

1.登录wallah用户[root@node1 ~]# ssh wallah@localhost2.登录容器[wallah@node1 ~]$ podman login -u admin -p redhat321 registry.3.查找容器镜像[wallah@node1 ~]$ podman search registry./ registry./library/nginx 0 4.检查/home/wallah/www路径是否存在,不存在则创建[wallah@node1 ~]$ ls /home/wallah/wwwls: cannot access '/home/wallah/www': No such file or directory[wallah@node1 ~]$ mkdir /home/wallah/www5.在/home/wallah/www下创建文件index.html,内容为hello nginx[wallah@node1 ~]$ echo "hello nginx" > /home/wallah/www/index.html6.运行容器,指定容器名称,挂载[wallah@node1 ~]$ podman run -d --name nginx -v /home/wallah/www:/usr/share/nginx/html:Z -p 8080:80 registry./library/nginx7a2ee7f0359fa4803d27b8f7953a4cdc75442c9da39bf2d175a17246478df9d57.停止镜像,实现开机自启[wallah@node1 ~]$ podman stop nginx 7a2ee7f0359fa4803d27b8f7953a4cdc75442c9da39bf2d175a17246478df9d58.开启普通用户滞留功能[wallah@node1 ~]$ loginctl enable-linger [wallah@node1 ~]$ loginctl show-user wallah Linger=yes9.进入最高级的启动目录,做开机自启[wallah@node1 ~]$ cd ~/.config/systemd/user/10.生成单元文件# -f 生成文件[wallah@node1 user]$ podman generate systemd --name nginx -f/home/wallah/.config/systemd/user/container-nginx.service11.对单元文件做开机自启、查看状态[wallah@node1 user]$ systemctl --user enable --now container-nginx.service [wallah@node1 user]$ systemctl --user status --now container-nginx.service Active: active (running)或者[wallah@node1 user]$ systemctl --user is-enabled --now container-logserver.serviceenabled[wallah@node1 user]$ 12.验证#本地访问[wallah@node1 user]$ curl localhost:8080hello nginx[wallah@node1 ~]$ curl localhost:8080hello nginx或者[root@node1 ~]# curl http://172.25.250.100:8080hello nginx

18.添加sudo免密操作(附加题)

添加sudo免密操作允许sysmgrs组成员sudo时不需要密码

1.做免密操作[root@clear ~]# visudo /ALL #搜索109 ## Same thing without a password110 # %wheel ALL=(ALL) NOPASSWD: ALL111 %sysmgrs ALL=(ALL) NOPASSWD: ALL2.验证查看组成员[root@clear ~]# tail -n 5 /etc/groupwallah:x:1004:sysmgrs:x:1005:natasha,harrynatasha:x:1006:harry:x:1007:sarah:x:1008:验证[root@node1 ~]# ssh natasha@localhost[natasha@node1 ~]$ sudo tail -n 3 /etc/passwdnatasha:x:1005:1006::/home/natasha:/bin/bashharry:x:1006:1007::/home/harry:/bin/bashsarah:x:1007:1008::/home/sarah:/sbin/nologin

19.配置创建新用户的密码策略(附加题)

配置创建新用户的密码策略创建新用户时,默认密码策略为20天后,密码会过期

1.配置密码策略配置文件[root@node1 ~]# vim /etc/login.defs /MAXPASS_MAX_DAYS 202.验证#创建用户[root@node1 ~]# useradd qq#查看最大天数[root@node1 ~]# vim /etc/shadow或者[root@node1 ~]# chage -l qqLast password change: May 23, Password expires: Jun 12, Password inactive: neverAccount expires: neverMinimum number of days between password change: 0Maximum number of days between password change: 20Number of days of warning before password expires: 7

20.创建脚本(附加题)(A卷)

创建脚本创建一个名为myresearch的脚本该脚本放置在/usr/bin下该脚本用来查找/usr下所有小于10m且具有修改SGID权限的文件,将这些文件放置于/root/myfiles下

1.创建一个名称:myresearch 的脚本文件[root@node1 ~]# vim /usr/bin/myresearch=========================================================================================#!/bin/bash#注释行if [ ! -d /root/myfiles ]thenmkdir /root/myfilesfifind /usr -size -10M -perm /g=s -exec cp -a {} /root/myfiles \;=========================================================================================2.给脚本文件,添加执行权限[root@node1 ~]# chmod +x /usr/bin/myresearch[root@node1 ~]# ll /usr/bin/myresearch-rwxr-xr-x. 1 root root 133 May 26 11:56 /usr/bin/myresearch3.执行脚本[root@node1 ~]# /usr/bin/myresearch或者[root@node1 ~]# bash /usr/bin/myresearch4.验证[root@node1 ~]# ll -h /root/myfiles/total 708K-rwx--s--x. 1 root slocate 47K Aug 12 locate-r-xr-sr-x. 1 root ssh_keys 619K Jan 8 ssh-keysign-rwx--s--x. 1 root utmp13K Aug 12 utempter-rwxr-sr-x. 1 root tty 21K Dec 17 write

21.创建脚本(附加题)(B卷)

创建脚本创建一个名为newsearch的脚本该脚本放置在/usr/bin下该脚本用来查找/usr下所有大于30k,但是小于50k且具有SUID权限的文件,将这些文件放置于/root/newfiles下

1.创建/usr/bin/newsearch脚本文件[root@clear ~]# vim /usr/bin/newsearch=========================================================================================#!/bin/bashif[ ! -d /root/newfiles ]thenmkdir /root/newfilesfifind /usr -size +30k -size -50k -perm /u=s -exec cp -a {} /root/newfiles \; =========================================================================================2.给脚本文件,添加执行权限[root@node1 ~]# chmod +x /usr/bin/newsearch[root@node1 ~]# ll /usr/bin/newsearch-rwxr-xr-x. 1 root root 147 May 26 12:17 /usr/bin/newsearch3.验证[root@node1 ~]# /usr/bin/newsearch[root@node1 ~]# 或者[root@node1 ~]# ll -h /root/newfiles/total 244K-rws--x--x. 1 root root33K Dec 17 chfn-rwsr-x---. 1 root cockpit-wsinstance 46K Mar 12 cockpit-session-rwsr-xr-x. 1 root root33K Dec 13 passwd-rwsr-xr-x. 1 root root33K Dec 17 umount-rwsr-xr-x. 1 root root37K Dec 19 unix_chkpwd-rws--x--x. 1 root root47K Nov 20 userhelper

22.设置默认权限(增加)

设置默认权限用户manalo在 node1 上,所有新创建的文件都应具有-r--r--r--的默认权限此用户的所有新创建目录应具有dr-xr-xr-x的默认权限

1.查看manalo用户是否存在[root@node1 ~]# id manalo uid=3533(manalo) gid=3533(manalo) groups=3533(manalo)2.切换用户[root@node1 ~]# su - manalo [manalo@node1 ~]$ 3.查看隐藏文件[manalo@node1 ~]$ ls -a. .. .bash_logout .bash_profile .bashrc4.编辑脚本#普通文件默认权限(666)#目录默认权限(777)[manalo@node1 ~]$ vim .bashrc umask 02225.执行脚本[manalo@node1 ~]$ source .bashrc 6.验证[manalo@node1 ~]$ touch 1.txt[manalo@node1 ~]$ mkdir test[manalo@node1 ~]$ lltotal 0-r--r--r--. 1 manalo manalo 0 May 23 05:04 1.txtdr-xr-xr-x. 2 manalo manalo 6 May 23 05:07 test

node2

23.设置 root 密码

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

mount -o #指定加载文件系统时的选项remount#重新加载设备。通常用于改变设备的设置状态ro #以只读模式加载rw #以可读写模式加载

1.重启nodel2ctrl+alt+delete2.出现开机选项按e 或者 按上下键3.找到linux那一行,按end键跳到结尾(ro只读) 4.按空格 输入rd.break5.按 ctrl+x 进入单用户模式6.查询权限是否为rw(非必须)switch_root:/# mount | grep /sysroot……(ro.)……7.重新以只读的方式挂载(增加权限)switch_root:/# mount -o remount,rw /sysroot8.查询权限是否为rw(非必须)switch_root:/# mount | grep /sysroot……(rw.)……9.更改路径,指向一个临时的根switch_root:/# chroot /sysroot10.更改root密码sh-4.2# echo "redhat" | passwd --stdin root# --stdin 让passwd可接受管道符前的命令11.给selinux打标签sh-4.2# touch /.autorelabel12.退出 或者 (ctrl+d两次)sh-4.2# exitswitch_root:/# reboot

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

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

25.调整逻辑卷大小

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

1.查询逻辑卷vo[root@node2 ~]# df -h/dev/mapper/myvol-vo 175M 1.6M 160M 1% /reports2.扩容[root@node2 ~]# lvextend -L 230M /dev/mapper/myvol-vo #扩展逻辑卷空间Logical volume myvol/vo successfully resized.3.查询格式化类型(ext4)[root@node2 ~]# blkid | grep vo/dev/mapper/myvol-vo: UUID="67994f68-d3e1-4686-8393-8df05149883f" TYPE="ext4"5.根据类型刷新[root@node2 ~]# resize2fs /dev/mapper/myvol-vo 6.验证[root@node2 ~]# df -h/dev/mapper/myvol-vo 221M 2.1M 204M 1% /reports

26.添加交换分区

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

1.列出所有的块设备[root@node2 ~]# lsblk NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTvda 252:0 0 10G 0 disk ├─vda1252:1 0 1M 0 part ├─vda2252:2 0 100M 0 part /boot/efi└─vda3252:3 0 9.9G 0 part /vdb 252:16 0 4G 0 disk ├─vdb1252:17 0 510M 0 part │ └─myvol-vo 253:1 0 232M 0 lvm /reports└─vdb2252:18 0 512M 0 part └─vgroup-swap 253:0 0 256M 0 lvm [SWAP]vdc 252:32 0 10G 0 disk 2.创建磁盘分区[root@node2 ~]# fdisk /dev/vdb3.格式化[root@node2 ~]# mkswap /dev/vdb3 Setting up swapspace version 1, size = 756 MiB (792719360 bytes)no label, UUID=ba522efa-8aa3-4e96-b8e2-39aafa20f3cb4.永久挂载[root@node2 ~]# vim /etc/fstab UUID=ba522efa-8aa3-4e96-b8e2-39aafa20f3cb none swap defaults 0 05.验证[root@node2 ~]# swapon -a#刷新[root@node2 ~]# swapon NAMETYPESIZE USED PRIO/dev/dm-0 partition 256M 0B -2/dev/vdb3 partition 756M 0B -3

27.创建逻辑卷

创建逻辑卷根据如下要求,创建新的逻辑卷:逻辑卷取名为 qa ,属于 qagroup 卷组,大小为 60 个扩展块qagroup 卷组中逻辑卷的扩展块大小应当为 16 MiB使用 ext3 文件系统格式化新逻辑卷。该逻辑卷应在系统启动时自动挂载到 /mnt/qa 下

1.创建磁盘分区[root@node2 ~]# fdisk /dev/vdb2.创建物理组(pv)[root@node2 ~]# pvcreate /dev/vdb4 Physical volume "/dev/vdb4" successfully created.3.创建卷组(vg)[root@node2 ~]# vgcreate qagroup -s 16M /dev/vdb4# -s 卷组上的物理卷的扩展块(PE)大小Volume group "qagroup" successfully created4.创建逻辑卷(lv)[root@node2 ~]# lvcreate -n qa -l 60 /dev/qagroup Logical volume "qa" created.5.格式化[root@node2 ~]# mkfs.ext3 /dev/qagroup/qa 6.查看UUID[root@node2 ~]# blkid /dev/qagroup/qa/dev/qagroup/qa: UUID="5ad7f2df-9749-4a46-adb6-853f3805d795" SEC_TYPE="ext2" TYPE="ext3"7.创建/mnt/qa目录[root@node2 ~]# mkdir /mnt/qa8.做永久挂载[root@node2 ~]# vim /etc/fstab UUID="5ad7f2df-9749-4a46-adb6-853f3805d795" /mnt/qa ext3 defaults 0 09.加载[root@node2 ~]# mount -a# 加载文件/etc/fstab中设置的所有设备10.[root@node2 ~]# df -h/dev/mapper/qagroup-qa 929M 1.2M 880M 1% /mnt/qa

28.创建 VDO 卷(服务)

创建 VDO 卷根据如下要求,创建新的 VDO 卷:使用未分区的磁盘该卷的名称为 vdough该卷的逻辑大小为 50G该卷使用 xfs 文件系统格式化该卷(在系统启动时)挂载到 /vbread 下

1.搜索安装包[root@node2 ~]# yum search vdovdo.x86_64 kmod-kvdo.x86_64 2.检查安装[root@node2 ~]# rpm -q vdo kmodpackage vdo is not installedkmod-25-16.el8.x86_643.安装[root@node2 ~]# yum install -y vdo.x86_64 kmod-kvdo.x86_64 Installed:kmod-kvdo-6.2.2.117-65.el8.x86_64 vdo-6.2.2.117-13.el8.x86_64 Complete!4.man vdo查看格式[root@node2 ~]# vdo create --name=vdough --device=/dev/vdc --vdoLogicalSize=50G5.格式化# -K 快速格式化(大写)[root@node2 ~]# mkfs.xfs -K /dev/mapper/vdough6.创建挂载点[root@node2 ~]# mkdir /vbread7.查找UUID[root@node2 ~]# blkid或者[root@node2 ~]# blkid /dev/mapper/vdough /dev/mapper/vdough: UUID="a1f68c65-cf38-4cc8-b508-860a2e90397c" TYPE="xfs"8.做永久挂载,网络通再挂载[root@node2 ~]# vim /etc/fstab UUID="a1f68c65-cf38-4cc8-b508-860a2e90397c" /vbread xfs _netdev 0 09.加载[root@node2 ~]# mount -a # 加载文件/etc/fstab中设置的所有设备10.[root@node2 ~]# df -h/dev/mapper/vdough 50G 390M 50G 1% /vbread11.vdo是服务需要设置开机自启[root@node2 ~]# systemctl restart vdo[root@node2 ~]# systemctl enable vdo[root@node2 ~]# systemctl status vdo

29.配置系统调优

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

[root@node2 ~]# tuned (tab两下,就会列出相关的命令)tunedtuned-adm(调优工具,进行管理和配置的命令)[root@node2 ~]# tuned-adm(tab两下,就会列出)activelist off profile recommend verify 1.查看系统默认推荐的调优策略:[root@node2 ~]# tuned-adm recommend virtual-guest#系统默认推荐的调优策略2.将调优策略,配置为默认推荐:[root@node2 ~]# tuned-adm profile virtual-guest3.验证[root@node2 ~]# tuned-adm active Current active profile: virtual-guest

🌼 结语:创作不易,如果觉得博主的文章赏心悦目,还请——点赞👍收藏⭐️评论📝

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。