參考KB:https://kb.vmware.com/s/article/2008939?lang=zh_CN
Symptoms
免責聲明:本文為 “esxcli software vib” commands to patch an ESXi 5.x/6.x host (2008939) 的翻譯版本。盡管我們會不斷努力為本文提供最佳翻譯版本,但本地化的內容可能會過時。有關最新內容,請參見英文版本。
Purpose
本文概述了使用
esxcli software vib 命令從命令行在 ESXi 5.x/6.x 主機上安裝修補程序的過程。
- 有關在 ESX 主機上安裝 VIB 的詳細信息,請參見 vSphere 5 Upgrade Guide 中的《使用各個 VIB 更新主機》。
- 還可以使用 esxcli software profile 命令安裝修補程序。有關更多信息,請參見 vSphere 5 Command-Line Interface Documentation 中的《vSphere 命令行界面參考》。
- 要使用 Update Manager 修補 ESXi 5.x 主機,請參見 Installing and Administering VMware vSphere Update Manager Guide 中的“將修補程序應用到主機”。
Resolution
要使用命令行修補 ESXi 5.x/6.x 主機,請執行以下操作:
- VMware 產品的修補程序可從 VMware patch portal 獲取。從產品下拉菜單中選擇 ESXi(嵌入式和可安裝),然后單擊搜索。
- 單擊修補程序版本名稱下的下載鏈接,將修補程序下載到系統中。
- 從 vCenter 使用數據存儲瀏覽器或使用 vSphere Web Client 通過與 ESXi 5.x/6.x 主機的直接連接,將修補程序上載至 ESXi 5.x/6.x 主機中的數據存儲。
注意:VMware 建議在數據存儲中創建一個新目錄並將修補程序文件上載至此目錄。 - 登錄 ESXi 5.x/6.x 主機的本地技術支持模式控制台。有關詳細信息,請參見 Using Tech Support Mode in ESXi 4.1 and ESXi 5.x (1017910)。
- 遷移主機上正在運行的虛擬機或關閉它們的電源,將主機置於維護模式。可以使用以下命令從命令行將主機置於維護模式:
# vim-cmd hostsvc/maintenance_mode_enter - 導航到數據存儲中上載的修補程序文件所在的目錄,使用如下命令驗證該文件是否存在:
# cd /vmfs/volumes/Datastore/DirectoryName
# ls
其中,Datastore 是上載的修補程序文件所在的數據存儲名稱,DirectoryName 是您在數據存儲中創建的目錄。 - 使用以下 esxcli 命令在主機上安裝或更新修補程序
注意:
- 要安裝或更新 .zip 文件,請使用 -d 選項。要安裝或更新 .vib 文件,請使用 -v 選項。
-
建議使用更新命令應用修補程序。使用此命令會應用修補程序中所有更新的內容,包括所有安全修補。版本低於系統中現有軟件包版本的修補程序的內容將不會應用。
-
使用 install 命令會使用您正在安裝的修補程序的內容覆蓋系統中現有的軟件包,包括安裝新軟件包和移除舊軟件包。安裝命令可能會降級系統中的軟件包,應謹慎使用。如果需要,當設置了 --allow-downgrade 標記時,可使用安裝命令降級系統(僅適用於圖像配置文件)。
注意:安裝方法可能會覆蓋現有的驅動程序。如果使用第三方 ESXi 圖像,VMware 建議使用更新方法避免出現無法引導狀態。
安裝:
- 使用本地安裝程序:
# esxcli software vib install -d "/vmfs/volumes/Datastore/DirectoryName/PatchName.zip"
其中,PatchName.zip 是上載至數據存儲的修補程序文件的名稱。
注意:或者,可以使用數據存儲的 UUID 代替 DirectoryName。
例如:
# esxcli software vib install -d "/vmfs/volumes/datastore1/patch-directory/ESXi500-201111001.zip"
或者
# esxcli software vib install -d "/vmfs/volumes/a2bb3e7c-ca10571c-cec6-e5a60cc0e7d0/patch-directory/ESXi500-201111001.zip" - 使用 http 安裝程序:
# esxcli software vib install -v viburl
其中,viburl 是指向 VIB 軟件包所在的 http 庫的 URL。
例如:
# esxcli software vib install -v https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/esx/vmw/vib20/tools-light/VMware_locker_tools-light_5.0.0-0.7.515841.vib
- 使用本地安裝程序:
# esxcli software vib update -d "/vmfs/volumes/Datastore/DirectoryName/PatchName.zip"
其中,PatchName.zip 是上載至數據存儲的修補程序文件的名稱。
注意:或者,可以使用數據存儲的 UUID 代替 DirectoryName。
例如:
# esxcli software vib update -d "/vmfs/volumes/datastore1/patch-directory/ESXi500-201111001.zip"
或者
# esxcli software vib update -d "/vmfs/volumes/a2bb3e7c-ca10571c-cec6-e5a60cc0e7d0/patch-directory/ESXi500-201111001.zip" - 使用 http 安裝程序:
# esxcli software vib update -v viburl
其中,viburl 是指向 VIB 軟件包所在的 http 庫的 URL。
例如:
# esxcli software vib update -v https://hostupdate.vmware.com/software/VUM/PRODUCTION/main/esx/vmw/vib20/tools-light/VMware_locker_tools-light_5.0.0-0.7.515841.vib
- 驗證 VIB 是否已安裝在 ESXi 主機上:
# esxcli software vib list
例如:
# esxcli software vib list
Name Version Vendor Acceptance Level Install Date
----------------- --------------------------- ------ ---------------- ------------
ata-pata-amd 0.3.10-3vmw.500.0.0.469512 VMware VMwareCertified 2012-05-04
ata-pata-atiixp 0.4.6-3vmw.500.0.0.469512 VMware VMwareCertified 2012-05-04
ata-pata-cmd64x 0.2.5-3vmw.500.0.0.469512 VMware VMwareCertified 2012-05-04
ata-pata-hpt3x2n 0.3.4-3vmw.500.0.0.469512 VMware VMwareCertified 2012-05-04 - 安裝修補程序后,重新引導 ESX 主機:
# reboot - 主機引導完成后,退出維護模式,打開虛擬機的電源:
# vim-cmd hostsvc/maintenance_mode_exit