Appearance
30. 附录与维护建议
本章节指导在 RHEL 8.10(主机名 ZSLinux)上使用 SecureCRT 进行配置记录和备份恢复,配合 SecureFX 传输备份文件。内容涵盖系统配置记录(服务、防火墙、SELinux)、备份与恢复流程、维护建议,以确保系统可恢复性和长期稳定性为例,全面实用,适合初学者快速掌握和运维人员日常维护。所有操作在 ZSLinux 环境中测试,确保实验一致性。
30.1 前提条件
- RHEL 8.10 已安装(参考第 1 章),主机名设置为
ZSLinux. - 使用 SecureCRT 登录(SSH2 协议,端口 2222,参考第 6 章).
- 使用 SecureFX 传输文件(SFTP 协议).
- 具有 root 或 sudo 权限.
- 系统已订阅并启用 RHEL 和 EPEL 仓库(参考第 4 和 7 章).
- 防火墙和 SELinux 启用(参考第 13 章).
- 网络连接正常,时间同步配置完成(参考第 3 章).
- 备份目录(如
/backup)已创建并具有适当权限.
30.2 配置记录
30.2.1 记录系统配置
- 创建配置记录文件:bash
mkdir -p /root/config-records # 创建配置记录目录 echo "Hostname: ZSLinux, SSH Port: 2222, Root Login: Disabled" > /root/config-records/system-config.txt # 记录系统基本配置 - 记录服务配置:bash
systemctl list-units --type=service --state=enabled > /root/config-records/services-enabled.txt # 记录启用服务 crontab -l > /root/config-records/crontab-backup.txt # 备份当前用户的 crontab 配置 - 记录防火墙和 SELinux 配置:bash
firewall-cmd --list-all-zones > /root/config-records/firewall-config.txt # 记录防火墙配置 getenforce > /root/config-records/selinux-status.txt # 记录 SELinux 状态 semanage port -l > /root/config-records/selinux-ports.txt # 记录 SELinux 端口配置
30.2.2 传输配置记录
- 使用 SecureFX 传输记录到远程服务器:bash
rsync -av /root/config-records/ root@192.168.1.200:/backup/config-records # 传输记录到远程服务器
30.3 备份与恢复
30.3.1 系统备份
- 创建备份目录:bash
mkdir -p /backup # 创建备份目录 chown root:root /backup # 设置备份目录权限 chmod 700 /backup # 限制访问权限 - 创建系统备份:bash
tar -czf /backup/system-$(date +%F).tar.gz /etc /var /home # 备份关键目录
30.3.2 验证备份
- 验证备份文件完整性:bash
tar -tzf /backup/system-$(date +%F).tar.gz # 检查备份文件内容
30.3.3 恢复备份
- 恢复特定文件(如
/etc/fstab):bashtar -xzf /backup/system-$(date +%F).tar.gz -C /tmp etc/fstab # 提取 fstab 到临时目录 mv /tmp/etc/fstab /etc/fstab # 恢复 fstab 文件 restorecon -v /etc/fstab # 恢复 SELinux 上下文 - 恢复整个目录:bash
tar -xzf /backup/system-$(date +%F).tar.gz -C / # 恢复整个备份 restorecon -R -v /etc /var /home # 恢复 SELinux 上下文
30.4 验证与维护
- 验证配置记录:bash
cat /root/config-records/system-config.txt # 检查系统配置记录 diff /root/config-records/services-enabled.txt <(systemctl list-units --type=service --state=enabled) # 比较当前服务状态 - 验证备份:bash
tar -tvf /backup/system-$(date +%F).tar.gz | grep fstab # 验证 fstab 是否在备份中 - 测试 SSH 连接:bash
ssh -p 2222 testuser@ZSLinux # 测试 SSH 连接(参考第 6 章) - 维护建议:
- 定期备份:配置 cron 任务每周备份:bash
crontab -e # 添加: 0 2 * * 0 tar -czf /backup/system-$(date +%F).tar.gz /etc /var /home # 每周日凌晨2点备份 - 记录更新:每次修改系统配置(如防火墙、SELinux)后更新
/root/config-records. - 远程备份:使用 SecureFX 定期传输备份到远程服务器(
rsync -av /backup root@192.168.1.200:/backup)。 - SOS 报告:定期生成系统报告:bash
sosreport --only-plugins=system,filesys # 生成系统和文件系统报告
- 定期备份:配置 cron 任务每周备份:
- 故障排查:
- 备份失败:检查磁盘空间(
df -h /backup)或权限(ls -ld /backup)。 - 恢复失败:验证备份完整性(
tar -tzf)或 SELinux 上下文(ls -Z /etc/fstab)。 - 配置记录丢失:检查
/root/config-records权限(ls -ld /root/config-records)或 rsync 日志(journalctl -u sshd)。
- 备份失败:检查磁盘空间(
30.5 实践任务
- 使用 SecureCRT 登录
ZSLinux,记录 SSH 端口和防火墙配置到/root/config-records. - 创建
/etc和/var的备份并传输到远程服务器(192.168.1.200)。 - 恢复
/etc/fstab并验证 SELinux 上下文。 - 配置 cron 任务每周备份
/home.
30.6 自测问题
- 问题:如何记录启用服务列表?
- 答案:
systemctl list-units --type=service --state=enabled > /root/config-records/services-enabled.txt
- 答案:
- 问题:如何恢复
/etc/fstab?- 答案:
tar -xzf /backup/system-$(date +%F).tar.gz -C /tmp etc/fstab; mv /tmp/etc/fstab /etc/fstab; restorecon -v /etc/fstab
- 答案:
- 问题:如何定期备份系统?
- 答案:编辑
crontab -e,添加0 2 * * 0 tar -czf /backup/system-$(date +%F).tar.gz /etc /var /home
- 答案:编辑
