我的 CentOS 内存不足的机器无法更新,因为 yum 因内存使用率过高而被终止。有没有办法自动更新所有软件包,一次一个,而不是一次更新所有内容?
答案1
您可以通过添加来更改存储库async
的设置,以防止元数据和包被并行下载。yum
async=0
例如,/etc/yum.repos.d/CentOS-Base.repo
[base]
name=CentOS-$releasever - Base
mirrorlist=http://mirrorlist.centos.org/...
async=0
或者,您应该能够将其添加到部分[main]
以/etc/yum.conf
覆盖默认设置。
如果这仍然是一个问题;您可能需要编写脚本来yum install ...
针对每个包单独执行。
while read pkg_name; do yum install -y "$pkg_name"; done < <(yum check-update | awk '/^\s*$/,0 { print $1 }')
这将运行yum check-update
列出所有等待更新的包并单独安装它们。