對Linux軟件漏洞或Windows系統漏洞進行一鍵修復時,如果出現修復失敗,您可以參照本說明確認失敗的原因,根據給出的解決方案解決問題后再次嘗試修復漏洞。
說明
如果根據錯誤碼未能明確失敗的原因,請提工單尋求天翼云技術支持人員協助分析。
錯誤碼處理索引
| 錯誤碼編號 | 錯誤信息 | 處理方案 |
|---|---|---|
| 100 | 無法連接軟件源 | 錯誤碼100處理方法。 |
101 | 無法連接微軟官方服務器 | Windows系統漏洞修復需要連接微軟官方服務器獲取安全更新,請排查服務器與微軟官網的網絡是否聯通。 |
| 102 | 軟件源上沒有可用包 | 錯誤碼102處理方法。 |
| 103 | 沒有匹配的安全更新 | 服務器繁忙導致WUAPI接口返回數據不準確,無法人為干預,建議稍后再試。 |
104 | 磁盤空間不足 | 檢查磁盤使用情況,釋放磁盤空間后再次嘗試修復漏洞。 |
| 105 | 包管理命令(yum/apt)不存在 | 錯誤碼105處理方法。 |
200 | yum執行命令失敗 | yum執行命令失敗原因多樣,建議復制該命令到機器上執行,查看返回結果,根據具體情況分析可能的原因。 如果多次失敗請提工單尋求技術支持人員協助分析。 |
| 201 | rpm數據庫損壞 | 錯誤碼201處理方法。 |
| 202 | yum鎖文件沖突 | 錯誤碼202處理方法。 |
| 203 | rpm軟件包依賴關系錯誤 | 錯誤碼203處理方法。 |
| 204 | yum源上未找到對應的repo文件 | 錯誤碼204處理方法。 |
| 300 | apt執行命令失敗 | apt執行命令失敗原因多樣,建議復制該命令到機器上執行,查看返回結果,根據具體情況分析可能的原因。 如果多次失敗請提工單尋求技術支持人員協助分析。 |
| 301 | apt鎖文件沖突 | 錯誤碼301處理方法。 |
| 302 | dpkg依賴關系錯誤 | 錯誤碼302處理方法。 |
| 500 | Windows更新代理API返回錯誤 | 參考API說明分析錯誤原因或提工單尋求技術支持人員協助分析。 |
| 501 | Windows下載更新失敗 | 如果是服務器繁忙導致下載失敗,建議稍后再試。 如果多次失敗建議參考API說明分析錯誤原因或提工單尋求技術支持人員協助分析。 |
| 502 | Windows安裝更新失敗 | 如果Windows機器長時間未更新,建議登錄機器,打開【設置】-【更新和安全】-【檢查更新】并安裝更新。 如果多次失敗建議參考API說明分析錯誤原因或提工單尋求技術支持人員協助分析。 |
| 1000 | 錯誤信息較多,請詳見控制臺提供的錯誤信息 | 請參考控制臺提供的修復命令進行修復,若您無法成功修復請提工單尋求技術支持人員協助分析。 |
| 1001 | 基礎版本不支持漏洞修復,建議升級企業版或者旗艦版 | 基礎版本不支持漏洞修復,建議升級企業版或者旗艦版。 |
| 1002 | 修復超時 | 修復超時,建議稍后重試,如果多次超時或者失敗請提工單尋求技術支持人員協助分析。 |
| 1004 | 下發修復命令失敗 | 下發修復命令失敗,請先檢查機器是否在線,保證機器在線后再次嘗試修復漏洞。 |
錯誤碼:100
錯誤碼: 100
錯誤信息: 無法連接軟件源。
解決方案:Linux軟件漏洞修復需要連接軟件源獲取升級包,請排查服務器與軟件源的網絡是否聯通。
檢查命令如下:
# yum makecache執行結果有連接錯誤表明無法連接軟件源,請根據執行結果檢查/etc/yum.repos.d/下生效的repo文件
yum makecahe
# apt update執行結果有連接錯誤表明無法連接軟件源,請根據執行結果檢查/etc/apt/sources.list文件
apt update錯誤碼:102
錯誤碼: 102
錯誤信息: 軟件源上沒有可用包, 軟件名稱: XXX,軟件版本: XXX。
解決方案:軟件源上軟件包沒有可以修復漏洞的升級包,無法人為干預。CTyunOS系統的機器出現該情況請提工單尋求技術支持人員協助分析。
查看升級包命令:
# yum查看升級包命令
yum list <package>
# 例如:yum list curl 執行結果如下,表明curl當前版本是7.29.0-59.el7,可升級到7.29.0-59.el7_9.1
# Installed Packages
# curl.x86_64 7.29.0-59.el7 @anaconda
# Available Packages
# curl.x86_64 7.29.0-59.el7_9.1 updates
# apt查看升級包命令
apt list -a installed <package>
# 例如:apt list -a --installed git 執行結果如下,表明git當前版本是1:2.17.1-1ubuntu0.8,可升級到1:2.17.1-1ubuntu0.18
# Listing... Done
# git/bionic-updates,bionic-security 1:2.17.1-1ubuntu0.18 amd64 [upgradable from: 1:2.17.1-1ubuntu0.8]
# git/now 1:2.17.1-1ubuntu0.8 amd64 [installed,upgradable to: 1:2.17.1-1ubuntu0.18]
# git/bionic 1:2.17.0-1ubuntu1 amd64錯誤碼:105
錯誤碼: 105
錯誤信息: 包管理命令(yum/apt)不存在。
解決方案:漏洞修復依賴包管理命令(yum/apt),請保證機器上包含包管理命令(yum/apt)再嘗試修復漏洞。
驗證命令:
# 驗證yum,正常顯示版本號表明機器上存在yum命令
yum --version
# 驗證apt,正常顯示版本號表明機器上存在apt命令
apt --version錯誤碼:201
錯誤碼: 201
錯誤信息: rpm數據庫損壞。
解決方案:rpm數據庫損壞,需要重建rpm數據庫后,再次嘗試修復漏洞。依次執行以下命令可重建rpm數據庫。
# 備份漏洞庫(可選)
mkdir -p /root/rpmdb_backup
cp -a /var/lib/rpm /root/rpmdb_backup/
# 清除原rpm數據庫文件
rm -f /var/lib/rpm/__db.*
# 重建rpm數據庫
rpm --rebuilddb
# 清理緩存并重建
yum clean all && yum makecache錯誤碼:202
錯誤碼: 202
錯誤信息: yum鎖文件沖突。
解決方案:機器上另一個yum進程正在運行,需要先查看占用鎖的進程。
命令:
ps aux | grep yum
ps aux | grep dnf如果確認無重要操作可強制結束進程或者等該進程自動結束后再次嘗試漏洞修復。強制結束進程命令:
kill -9 <PID>錯誤碼:203
錯誤碼: 203
錯誤信息: rpm軟件包依賴關系錯誤。
解決方案:軟件包版本沖突、缺少依賴包都可能導致依賴關系錯誤。
以下排查/修復命令供參考:
yum autoremove # 自動刪除不再需要的依賴包
yum deplist <package> # 查看依賴關系
yum list --showduplicates <package> # 列出所有版本
yum install <package>-<version> # 安裝舊版本錯誤碼:204
錯誤碼:204
錯誤信息:yum源上未找到對應的repo文件
解決方案:檢查/etc/yum.repos.d/*.repo文件中的軟件源配置,通過wget或者curl訪問配置中的鏈接,如果無法訪問,則表明軟件源已移除或更改了路徑。
您可在修復漏洞時,單擊“修復”選擇其他軟件源再次嘗試,如果多次失敗請提工單尋求技術支持人員協助分析。
錯誤碼:301
錯誤碼: 301
錯誤信息: apt鎖文件沖突。
解決方案:機器上另一個apt進程正在運行,需要先查看占用鎖的進程,命令:
ps aux | grep apt
ps aux | grep dpkg如果確認無重要操作可強制結束進程或者等該進程自動結束后再次嘗試修復漏洞。強制結束進程命令:
kill -9 <PID>錯誤碼:302
錯誤碼: 302
錯誤信息: dpkg依賴關系錯誤。
解決方案:軟件包版本沖突、缺少依賴包都可能導致依賴關系錯誤。
以下排查/修復命令供參考:
apt --fix-broken install # 自動修復依賴
apt remove <package> # 手動移除問題包