centos 不更新使用那个?

在 CentOS 系统中,如果你不想更新系统或软件包,可以采取以下几种方式来控制更新行为。这通常适用于生产环境、服务器等需要保持稳定性的场景。


✅ 一、不更新系统的常见做法

1. 不运行 yum updatednf upgrade

这是最直接的方式:

  • CentOS 7 及以前:使用 yum
  • CentOS 8 及以后(如 CentOS Stream):使用 dnf

避免运行这些命令:

# 不要运行
sudo yum update
sudo dnf upgrade

2. 禁用自动更新

CentOS 默认不会自动更新,但如果安装了 yum-crondnf-automatic,可能会启用自动更新功能。

对于 CentOS 7:

编辑配置文件:

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

确保设置:

update_cmd = none
apply_updates = no

然后停止并禁用服务:

sudo systemctl stop yum-cron
sudo systemctl disable yum-cron

对于 CentOS 8 / CentOS Stream:

编辑配置文件:

sudo vi /etc/dnf/automatic.conf

确保设置:

apply_updates = no

停止并禁用服务:

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

3. 使用 exclude 排除特定包更新

你可以在 /etc/yum.conf 中添加 exclude 字段来阻止某些包被更新:

[main]
exclude=kernel* httpd nginx

这样即使执行了 yum update,这些包也不会被升级。


4. 使用锁定包版本(yum-plugin-versionlock 或 dnf plugin)

你可以锁定某些包的版本,防止其被更新。

CentOS 7 安装插件:

sudo yum install yum-plugin-versionlock

锁定某个包:

sudo yum versionlock add package-name

查看已锁定的包:

sudo yum versionlock list

CentOS 8 / Stream:

安装插件:

sudo dnf install python3-dnf-plugin-versionlock

锁定包:

sudo dnf versionlock add package-name

✅ 二、如果你仍然想部分更新

你可以只安装安全更新或指定包更新,而不是全量更新:

# 更新指定包
sudo yum update httpd

# CentOS 8+
sudo dnf upgrade httpd

# 仅安装安全更新
sudo yum update --security

✅ 三、推荐:使用 CentOS Stream 的注意事项

如果你使用的是 CentOS Stream(注意不是传统的 CentOS),它是一个滚动发布的上游开发分支,默认会持续接收更新。如果你希望更稳定,建议使用:

  • Rocky Linux
  • AlmaLinux
  • 或者旧版 CentOS ISO 镜像安装的传统稳定版

✅ 四、总结:如何“不更新”?

方法 描述
❌ 不运行 yum update / dnf upgrade 最基本的方法
🚫 禁用自动更新服务 防止后台自动升级
🔒 使用 excludeversionlock 锁定关键包不升级
🔄 部分更新而非全量更新 有选择地进行更新

如果你能告诉我你的具体使用场景(比如是服务器、测试环境、还是桌面),我可以给你更具体的建议。

是否需要我帮你写一个脚本来自动配置“禁止更新”的策略?

未经允许不得转载:CLOUD技术博 » centos 不更新使用那个?