Linux系统中YUM包管理工具的使用与系统重启操作详解,Linux系统重启后YUM安装的软件会消失吗?真相让人意外!,Linux系统重启后,YUM安装的软件竟然会消失?真相颠覆认知!

昨天 2166阅读
Linux系统中的YUM(Yellowdog Updater Modified)是一款强大的包管理工具,能够简化软件的安装、更新和卸载流程,用户只需通过简单的命令(如yum installyum update)即可管理软件包,依赖问题也会自动解决,关于系统重启后YUM安装的软件是否会消失的问题,答案是否定的,YUM默认将软件安装到系统目录(如/usr/bin/etc),这些更改是永久性的,重启后仍会保留,但若软件依赖临时文件或未正确配置服务,可能导致功能异常,需通过systemctl等工具确保服务开机自启,合理使用YUM和系统管理命令是关键。

YUM包管理工具深度解析

YUM(Yellowdog Updater Modified)作为RPM系Linux发行版(RHEL/CentOS/Fedora等)的核心组件,通过智能依赖解决机制彻底改变了Linux软件管理方式,其架构设计包含三个关键层:

  1. 仓库管理层:处理.repo配置文件的解析与元数据同步
  2. 依赖解析层:构建软件包关系图谱并自动解决依赖冲突
  3. 事务执行层:采用原子操作确保安装/卸载过程完整性

1 现代YUM的演进

在CentOS 8/RHEL 8及更新版本中,DNF(Dandified YUM)作为YUM的下一代实现,带来以下改进:

Linux系统中YUM包管理工具的使用与系统重启操作详解,Linux系统重启后YUM安装的软件会消失吗?真相让人意外!,Linux系统重启后,YUM安装的软件竟然会消失?真相颠覆认知! 第1张

  • 使用libsolv进行更高效的依赖解析
  • 支持模块化仓库(Modules)
  • 兼容传统YUM命令语法
  • 事务处理速度提升约40%

YUM核心操作手册

1 仓库配置进阶

创建自定义仓库配置文件:

sudo vi /etc/yum.repos.d/custom.repo
[custom]
name=Custom Repository
baseurl=http://mirror.example.com/repo
enabled=1
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-custom

验证仓库签名:

sudo rpm --import /etc/pki/rpm-gpg/RPM-GPG-KEY-custom
sudo yum repolist --gpgcheck

2 智能安装策略

安装时排除特定依赖:

sudo yum install package --exclude=dependency*

最小化安装模式:

sudo yum --installroot=/path/to/minimal install @core

3 版本控制技巧

查看可用版本:

yum --showduplicates list package

降级软件包:

sudo yum downgrade package-version

4 事务管理系统

查看完整事务历史:

yum history list all

撤销特定事务(以事务ID 6为例):

Linux系统中YUM包管理工具的使用与系统重启操作详解,Linux系统重启后YUM安装的软件会消失吗?真相让人意外!,Linux系统重启后,YUM安装的软件竟然会消失?真相颠覆认知! 第2张

sudo yum history undo 6

系统重启科学指南

1 重启必要性矩阵

操作类型 需要重启 替代方案
内核更新 kexec快速启动
用户空间库更新 ldconfig刷新
网络配置变更 systemctl restart network
安全策略更新 setenforce 1

2 高级重启技术

延迟重启(维护窗口模式):

sudo shutdown -r 02:00 "计划维护重启"

联机内核热补丁(需订阅):

sudo yum install kpatch
sudo kpatch load patch-module

企业级运维方案

1 自动化更新框架

#!/bin/bash
# 安全更新脚本
LOCKFILE="/var/run/yum_update.lock"
exec 200>$LOCKFILE
flock -n 200 || exit 1
logger "Starting automated update process"
yum update -y --security
if [ $? -eq 0 ]; then
    needs-restarting -r > /var/log/reboot_required.log
    logger "Update completed successfully"
else
    logger "Update failed with error code $?"
    exit 1
fi

2 变更管理检查清单

  1. [ ] 验证备份完整性
  2. [ ] 通知相关用户
  3. [ ] 检查负载均衡状态
  4. [ ] 确认维护窗口
  5. [ ] 准备回滚方案

故障排查工具箱

1 常见问题解决方案

依赖地狱问题

sudo package-cleanup --cleandupes
sudo yum-complete-transaction

仓库缓存损坏

sudo rm -rf /var/cache/yum/*
sudo yum clean all

2 性能优化参数

在/etc/yum.conf中添加:

# 并行下载优化
max_parallel_downloads=5
# 快速镜像选择
fastestmirror=true
# 带宽限制
throttle=1M

安全最佳实践

  1. 签名验证强化

    sudo rpm --import /etc/pki/rpm-gpg/*
    sudo yum-config-manager --setopt=repo_gpgcheck=1 --save
  2. 最小权限原则

    sudo visudo
    # 允许特定用户仅执行更新操作
    user1 ALL=(root) NOPASSWD: /usr/bin/yum update --security
  3. 审计日志配置

    Linux系统中YUM包管理工具的使用与系统重启操作详解,Linux系统重启后YUM安装的软件会消失吗?真相让人意外!,Linux系统重启后,YUM安装的软件竟然会消失?真相颠覆认知! 第3张

    sudo auditctl -a always,exit -F arch=b64 -S execve -F path=/usr/bin/yum

延伸学习资源

  1. 官方文档:

    • RHEL YUM指南:https://access.redhat.com/documentation/en-us/red_hat_enterprise_linux/
    • DNF完整手册:https://dnf.readthedocs.io/
  2. 高级工具:

    • Spacewalk:开源系统管理平台
    • Pulp:仓库内容管理系统
  3. 认证路径:

    • RHCSA(Red Hat认证系统管理员)
    • RHCE(Red Hat认证工程师)

通过本指南的系统学习,您将能够:

  • 设计企业级软件更新策略
  • 实施安全的变更管理流程
  • 优化大规模环境下的包管理性能
  • 构建自动化的运维工作流

优秀的系统管理员不是从不重启系统,而是知道何时必须重启以及如何优雅地完成重启。


    免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

    目录[+]