vCenter VAMI 更新失败的 RPM 数据库损坏修复方法

vCenter VAMI 更新失败的 RPM 数据库损坏修复方法

老哥们,今天遇到一个关于 vCenter Server 更新的问题——在使用 VAMI(vCenter Appliance Management Interface)进行更新时,(VAMI就是所谓的5480),就会出现“Update installation failed, list operation is not allowed”和“No applicable update found”错误。查了一下 VMware KB 429302,发现原来这是由于 RPM 数据库损坏导致的。下面时踩坑诊断过程:

故障现象还原

1. 更新标签页错误

在 VAMI 的“更新”标签页中,会看到以下错误:

Update installation failed, list operation is not allowed.

2. 无法显示更新列表

此外,VAMI 无法显示更新列表,并报告:

No applicable update found.

核心原因分析

根据 KB 429302 的解释,问题的根本原因是:

RPM 数据库损坏

vCenter Server Appliance 使用的是基于 Linux 的 Photon OS,而 Photon OS 使用 RPM 包管理系统。RPM 数据库损坏可能导致更新操作失败、无法列出更新列表等问题。

修复步骤

1. 备份与准备

# 拍摄 vCenter Server Appliance 的快照
# 在 vSphere Client 中操作,或使用 PowerCLI
Get-VM -Name  | New-Snapshot -Name "Before_RPM_DB_Repair" -Description "Backup before RPM DB repair"

2. 连接到 VCSA via SSH

# 使用 SSH 连接到 VCSA
ssh root@

3. 修复过程

# 停止管理服务
service-control --stop applmgmt

 

# 清理更新相关的临时文件和数据库
rm -rf /storage/core/software-update/updates/*
rm -rf /storage/core/software-update/stage/*
rm -rf /storage/db/patching.db

 

# 移动关键配置文件以进行重置
mv /storage/core/software-packages/staged-configuration.json /storage/core
mv /etc/applmgmt/appliance/software_update_state.conf /storage/core

 

# 启动管理服务
service-control --start applmgmt

4. 验证修复

# 检查服务状态
service-control --status applmgmt

 

# 尝试再次检查更新
# 在 VAMI 中进行,或使用以下命令
software-packages list

预防措施

1. 定期维护 RPM 数据库

# 定期检查并修复 RPM 数据库
rpm --verifydb
rpm --rebuilddb

2. 优化存储管理

# 检查存储使用情况
df -h

 

# 检查磁盘空间
lsof | grep deleted

 

# 清理临时文件
rm -rf /var/tmp/*
rm -rf /tmp/*

3. 监控更新过程

# 在更新过程中监控日志
tail -f /var/log/vmware/applmgmt/applmgmt.log
tail -f /var/log/vmware/vami/vami.log

故障排查

1. 服务无法启动

# 如果 applmgmt 服务无法启动
service-control --status applmgmt

 

# 检查系统资源
top | head -20

 

# 检查服务依赖项
systemctl list-dependencies applmgmt

2. 修复后仍然无法更新

# 如果问题仍然存在
# 尝试重新初始化软件更新系统
rm -rf /storage/core/software-update
mkdir -p /storage/core/software-update/updates
mkdir -p /storage/core/software-update/stage

 

# 检查权限
ls -la /storage/core/software-update/

 

# 再次停止并启动服务
service-control --stop applmgmt
service-control --start applmgmt

其他相关问题

1. 更新超时问题

# 如果更新过程超时
# 检查网络连接
ping downloads.vmware.com

 

# 检查防火墙规则
esxcli network firewall ruleset rule list | grep -i vami

 

# 检查代理配置
cat /etc/environment

2. 应用更新失败

# 检查更新过程中是否有错误
grep -i error /var/log/vmware/applmgmt/applmgmt.log

 

# 检查系统状态
vmware -v
service-control --status --all

 


Reference: VMware KB 429302

有VM问题需要协助?

免费试用VMware技术助理(已接Deepseek)!即时解答VM难题

→ 🤖VM技术助理

解析和诊断各类vCenter错误,ESXi日志,虚拟机vmware.log

→ 📕VMware日志分析器

图书推介 - 京东自营

24小时热门

还有更多VMware问题?

免费试下我们的VMware技术助理(已接Deepseek)!即时解答VM难题 → 🤖VM技术助理

试试 📕VMware日志分析器 免费诊断各类vCenter错误,ESXi日志,虚拟机vmware.log等等

########

扫码加入VM资源共享交流微信群(请备注加群

需要协助?或者只是想技术交流一下,直接联系我们!

推荐更多

vCenter8.0 U2的SSH随机无法访问:root账户锁定问题
运维必备

vCenter8.0 U2的SSH随机无法访问:root账户锁定问题

vCenter 8.0 U2+ SSH 随机无法访问:root 账户锁定问题。vCenter Server 8.0 U2 及以上版本中,SSH 访问 root 账户可能会随机失效。本文分析锁定机制变化并提供解决方案。 本文针对该问题提供了深度剖析与实测解决方案。

使用 Host Profile 重置 ESXi 主机 root 密码
运维必备

使用 Host Profile 重置 ESXi 主机 root 密码

使用 Host Profile 重置 ESXi 主机 root 密码。ESXi 主机 root 密码忘记了?无法登录?本文介绍如何使用 Host Profile 功能重置 ESXi 主机的 root 密码。 本文针对该问题提供了深度剖析与实测解决方案。

ESXi无法挂载NFS 4.1卷的故障分析与解决方案
运维必备

ESXi无法挂载NFS 4.1卷的故障分析与解决方案

ESXi 无法挂载 NFS 4.1 卷的故障分析与解决方案。ESXi 主机无法挂载 NFS 4.1 卷,操作超时并提示服务器不支持 NFS 4.1 协议。本文分析原因并提供解决方案。 本文针对该问题提供了深度剖析与实测解决方案。

//omg10.com/4/9119499