温馨提示×

Yum更新策略在Linux中如何设置

小樊
58
2025-09-22 18:26:07
栏目: 智能运维

Yum更新策略在Linux中的设置方法

Yum(Yellowdog Updater, Modified)是Linux系统中用于管理RPM包的核心工具,通过合理配置其更新策略,可实现软件包的自动/手动更新、安全补丁及时应用及系统稳定性保障。以下是具体设置步骤:

一、修改主配置文件(全局设置)

Yum的全局配置文件为/etc/yum.conf,通过调整其中的参数可定义默认更新行为。需编辑该文件(建议先备份):

sudo vi /etc/yum.conf

关键参数说明:

  • update_cmd:设置更新模式,可选值为default(默认,仅更新可升级的包)、security(仅更新安全补丁)、all(更新所有包)。例如,设置为security可强化系统安全:
    update_cmd = security
    
  • update_interval:自动检查更新的间隔天数(仅当autocheck_interval启用时生效),例如设置为7表示每周检查一次:
    update_interval = 7
    
  • check_obsolete_rpm:是否检查并移除过期软件包(1=启用,0=禁用),建议开启以避免旧包占用空间:
    check_obsolete_rpm = 1
    
  • allow_test/allow_prerelease:是否允许安装测试版(1=允许,0=禁止)或预发布版(1=允许,0=禁止)软件包,生产环境建议设为0
    allow_test = 0
    allow_prerelease = 0
    

修改完成后,保存文件并刷新Yum缓存:

sudo yum makecache fast

二、使用yum-cron实现定时自动更新

yum-cron是Yum的定时任务工具,可自动执行更新操作,避免手动干预。

1. 安装yum-cron

大多数基于RHEL/CentOS的系统需通过以下命令安装:

sudo yum install yum-cron

Fedora系统则使用dnf

sudo dnf install yum-cron

2. 启动并启用服务

安装完成后,启动yum-cron服务并设置为开机自启:

sudo systemctl start yum-cron
sudo systemctl enable yum-cron

3. 配置yum-cron

编辑/etc/yum/yum-cron.conf文件,调整自动更新参数:

sudo vi /etc/yum/yum-cron.conf

关键参数说明:

  • update_cmd:同主配置文件,定义更新模式(如security);
  • apply_updates:是否自动应用更新(yes=自动应用,no=仅通知),生产环境建议设为yes以及时修复漏洞;
  • exclude:排除不需要自动更新的软件包(如内核,避免意外升级导致系统不稳定),多个包用空格分隔:
    exclude = kernel* docker*
    
  • include:仅包含指定的软件包或组(如nginxhttpd),未指定的包不会被更新:
    include = nginx httpd
    
  • clean_method:清理旧缓存的方式(如clean-all=清理所有缓存),建议设置为clean-all以节省磁盘空间:
    clean_method = clean-all
    

修改完成后,重启yum-cron服务使配置生效:

sudo systemctl restart yum-cron

三、手动更新软件包

若无需自动更新,可通过手动命令控制更新流程:

  • 更新所有软件包
    sudo yum update
    
  • 更新指定软件包(如nginx):
    sudo yum update nginx
    
  • 仅检查可更新包(不安装)
    sudo yum check-update
    

四、配置安全更新策略

为强化系统安全,建议启用仅更新安全补丁的策略。

1. 启用安全更新插件

编辑/etc/yum/pluginconf.d/security.conf文件:

sudo vi /etc/yum/pluginconf.d/security.conf

设置enabled=1以启用安全更新插件:

[main]
enabled = 1

2. 结合yum-cron设置安全更新

/etc/yum/yum-cron.conf中,将update_cmd设置为security,并确保apply_updates=yes

[main]
update_cmd = security
apply_updates = yes

此配置将仅自动安装安全相关的补丁,降低系统风险。

注意事项

  • 测试环境验证:生产环境启用自动更新前,建议在测试环境中验证配置,避免因包冲突导致系统故障;
  • 备份重要数据:自动更新前,建议备份关键配置文件(如/etc/yum.conf/etc/yum/yum-cron.conf);
  • 监控更新日志:通过/var/log/yum.log查看自动更新记录,及时排查问题:
    sudo tail -f /var/log/yum.log
    

通过以上步骤,可根据实际需求灵活设置Yum的更新策略,平衡系统安全与稳定性。

0