centos 不更新使用那个?

在 CentOS 系统中,如果你不希望系统自动更新,但仍然需要使用 yumdnf 来手动管理软件包,可以采取以下几种方式来禁用自动更新,同时保留系统的包管理功能。


一、CentOS 版本与包管理器

首先确认你使用的是哪个版本的 CentOS:

CentOS 版本 包管理器 说明
CentOS 7 yum 使用 yumyum-cron 实现自动更新
CentOS 8 / Stream dnf dnfyum 的下一代,功能更强大

二、禁止自动更新的方法

✅ 方法1:禁用自动更新服务(推荐)

对于 CentOS 7:
  1. 检查是否安装了 yum-cron(自动更新服务):

    systemctl status yum-cron
  2. 停止并禁用服务:

    systemctl stop yum-cron
    systemctl disable yum-cron
  3. (可选)卸载 yum-cron

    yum remove yum-cron
对于 CentOS 8 / CentOS Stream:
  1. 检查 dnf-automatic 服务:

    systemctl status dnf-automatic.timer
  2. 禁用自动更新:

    systemctl disable dnf-automatic.timer
    systemctl stop dnf-automatic.timer

✅ 方法2:修改配置文件(防止意外更新)

CentOS 7 修改 /etc/yum.conf

你可以设置 yum 不自动安装更新:

[main]
exclude=*.updated
# 或者设置不自动更新特定包
exclude=httpd nginx kernel*

也可以在 /etc/yum/yum-cron.conf 中设置:

update_cmd = none
apply_updates = no
CentOS 8 / Stream 修改 /etc/dnf/automatic.conf
[commands]
upgrade_type = none
apply_updates = no

✅ 方法3:使用 --exclude 参数手动控制

你在运行 yum updatednf update 时,可以临时排除某些包:

yum update --exclude=kernel* --exclude=openssl*

或永久在 /etc/yum.conf 中添加:

exclude=kernel* openssl* httpd*

三、不更新系统是否安全?

⚠️ 注意:长期不更新系统可能会导致:

  • 安全漏洞未修复(如 OpenSSL、glibc 等)
  • 软件兼容性问题
  • 内核 bug 无法修复

✅ 建议:不要完全禁用更新,而是:

  • 定期手动检查更新

    yum check-update    # CentOS 7
    dnf check-update    # CentOS 8+
  • 在测试环境验证后,再在生产环境更新关键包。


四、总结:你想“不更新使用哪个”?

如果你是问:“不更新的情况下,该用哪个系统或版本?

✅ 推荐选择:

  • CentOS 7(已 EOL,不推荐新项目)
  • CentOS Stream(滚动更新,适合开发者)
  • 更推荐迁移到:
    • Rocky Linux
    • AlmaLinux
    • 这些是 CentOS 的替代品,稳定性高,长期支持。

✅ 最佳实践建议:

  1. 关闭自动更新(防止意外重启或升级)
  2. 定期手动检查更新
  3. 关键服务器先在测试环境验证更新
  4. 使用 yum update --dry-rundnf update 模拟更新

如果你能补充你的具体需求(比如:为什么不想更新?是生产服务器?还是嵌入式设备?),我可以给出更精准的建议。

未经允许不得转载:云计算HECS » centos 不更新使用那个?