Linux Trigger:怎样进行系统升级和维护
导读:Linux 系统升级与维护实操手册 一 升级前的准备与风险控制 备份关键数据:优先备份 /etc、/home、数据库与业务数据;可用 rsync 示例:sudo rsync -av /etc /home /backup。确保备份可用(还原...
Linux 系统升级与维护实操手册
一 升级前的准备与风险控制
- 备份关键数据:优先备份 /etc、/home、数据库与业务数据;可用 rsync 示例:
sudo rsync -av /etc /home /backup。确保备份可用(还原演练)。 - 检查资源与网络:使用
df -h确认 / 与 /boot 至少预留约 5GB 可用空间;确保 稳定电源与网络(服务器建议 UPS)。 - 查看当前版本:
lsb_release -a、cat /etc/os-release、uname -r,确认升级路径与内核版本。 - 变更窗口与回退预案:选择 低峰时段 执行;准备 快照/克隆 或 旧内核回退 方案;升级中避免断电与强制中断。
- 维护窗口与通知:提前通知业务方,规划 服务停机/切换 与 回滚触发条件。
二 日常与定期维护清单
- 安全与软件包更新:使用发行版包管理器定期更新;启用无人值守安全更新(如 Ubuntu 的 unattended-upgrades)。
- 清理与空间回收:清理包缓存与无用依赖(如 apt autoremove、dnf/yum autoremove),清理旧日志(如 journalctl --vacuum-size=100M),检查大文件(如
find / -type f -size +100M)。 - 日志与健康监控:关注 /var/log 关键日志,使用 top/htop、vmstat、iostat 等监控资源;必要时配置 Prometheus/Zabbix 告警。
- 用户与权限:清理 失效账户/SSH 密钥,禁用不必要服务与端口,遵循 最小权限 原则。
- 配置与合规审计:定期核查 防火墙规则、SSH 安全配置、内核/系统参数 与安全基线。
三 发行版升级与内核更新
| 发行版与场景 | 标准操作 | 关键要点 |
|---|---|---|
| Debian/Ubuntu 软件包 | sudo apt update &
&
sudo apt upgrade |
常规安全与功能更新 |
| Debian/Ubuntu 主版本 | sudo do-release-upgrade |
先全量更新;按提示处理配置文件;全程联网 |
| Ubuntu HWE 内核 | sudo apt install --install-recommends linux-generic-hwe-22.04 |
获取较新硬件支持与内核修复 |
| RHEL/CentOS 8 软件包 | sudo dnf update -y |
次版本升级与补丁应用 |
| RHEL/CentOS 8 → Stream | 安装/切换 Stream 仓库后 sudo dnf distro-sync |
CentOS 8 已 EOL,建议迁移 Rocky/AlmaLinux |
| Rocky/AlmaLinux 小版本 | sudo dnf clean all &
&
sudo dnf update -y &
&
sudo reboot |
升级后重启生效 |
| RHEL/CentOS 内核(可选) | 启用 ELRepo 后 sudo dnf --enablerepo=elrepo-kernel install kernel-ml |
更新 GRUB 并选择新内核启动 |
| Fedora 主版本 | sudo dnf system-upgrade |
按官方流程执行,先测试后生产 |
- 通用验证:重启后用
uname -r、cat /etc/os-release确认 内核与系统版本;若异常,进入 GRUB 选择旧内核 回退排查。
四 自动化与排错要点
- 自动化与安全更新:
- Ubuntu:
sudo apt install unattended-upgrades并启用自动安全补丁; - RHEL/CentOS:
sudo yum update(按需设置自动更新策略)。
- Ubuntu:
- 常见故障处理:
- 更新失败:检查网络与软件源;清理缓存后重试(如 apt clean / dnf clean all);
- 升级中断:避免强制关机,重新运行升级命令;必要时从 LiveCD/救援模式 修复;
- 无法启动:在 GRUB 选择 旧内核 启动,回退驱动或配置;
- 空间不足:清理 /var/cache、/tmp、旧日志,或扩容分区后再升级。
五 最小可用维护脚本示例
- Ubuntu/Debian 日常维护(可放入 cron 每周执行)
#!/usr/bin/env bash
set -Eeuo pipefail
echo "[$(date)] 开始系统维护..."
# 1) 更新与升级
sudo apt update &
&
sudo apt full-upgrade -y
# 2) 自动安全更新(如已安装)
sudo unattended-upgrade -v || true
# 3) 清理
sudo apt autoremove -y
sudo apt autoclean
# 4) 日志轮转与清理(保留最近 100MB)
sudo journalctl --rotate
sudo journalctl --vacuum-size=100M
# 5) 空间检查
df -h
echo "[$(date)] 维护完成"
- RHEL/CentOS/Rocky 日常维护
#!/usr/bin/env bash
set -Eeuo pipefail
echo "[$(date)] 开始系统维护..."
# 1) 更新
sudo dnf update -y
# 2) 清理
sudo dnf autoremove -y
sudo dnf clean all
# 3) 日志轮转与清理(保留最近 100MB)
sudo journalctl --rotate
sudo journalctl --vacuum-size=100M
# 4) 空间检查
df -h
echo "[$(date)] 维护完成"
提示:生产环境请先在测试环境验证脚本,重要操作前做好 备份与快照。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: Linux Trigger:怎样进行系统升级和维护
本文地址: https://pptw.com/jishu/780534.html
