若要安裝 Horizon Agent for Linux,您必須符合 Linux 作業系統、Linux 虛擬機器、VMware Horizon 系統元件和 vSphere 平台的特定需求。
Horizon Agent 支援的 Linux 版本
下表列出經過測試且支援 Horizon Agent 的 Linux 作業系統。
Linux 發行版 | 架構 |
---|---|
Ubuntu 20.04 和 18.04 | x64 |
Red Hat Enterprise Linux (RHEL) Workstation 7.6、7.7、7.8、7.9、8.0、8.1、8.2、8.3 和 8.4 | x64 |
Red Hat Enterprise Linux (RHEL) Server 7.8、7.9、8.3 和 8.4 | x64 |
CentOS 7.6、7.7、7.8、7.9、8.0、8.1、8.2、8.3 和 8.4 | x64 |
SUSE Linux Enterprise Desktop (SLED) 12 SP3、15 SP1、15 SP2 和 15 SP3 | x64 |
SUSE Linux Enterprise Server (SLES) 12 SP3、12 SP5、15 SP1、15 SP2 和 15 SP3 | x64 |
部分功能僅支援有限的部分 Linux 作業系統。如需詳細資訊,請參閱此文件中討論特定功能的小節。
所需的平台和軟體版本
若要安裝及使用 Horizon Agent for Linux,您的部署必須符合 vSphere 平台、Horizon Connection Server 和 Horizon Client 軟體的特定需求。
平台和軟體 | 支援的版本 |
---|---|
vSphere 平台版本 |
|
Horizon 環境 |
|
Horizon Client 軟體 |
|
Linux 虛擬機器使用的 TCP/UDP 連接埠
Horizon 8Agent 和 Horizon Client 在彼此之間與各種 Horizon 8 Server 元件之間的網路存取會使用 TCP 或 UDP 連接埠。
來源 | 連接埠 | 目標 | 連接埠 | 通訊協定 | 說明 |
---|---|---|---|---|---|
Horizon Client | * | Linux 代理程式 | 22443 | TCP/UDP | 若使用 Blast 安全閘道,則為 Blast |
Horizon 8 連線伺服器或 Unified Access Gateway 應用裝置 | * | Linux 代理程式 | 22443 | TCP/UDP | 若使用 Blast 安全閘道,則為 Blast |
Horizon 8Agent | * | Horizon 8連線伺服器 | 4001、4002 | TCP | JMS SSL 流量 |
若要允許使用者連接至其 Linux 桌面平台,桌面平台必須可以接受來自 Horizon Client 裝置、Unified Access Gateway 和 Horizon Connection Server 的傳入 TCP 連線。
在 Ubuntu 發行版上,iptables 防火牆依預設會設定為使用「接受」的輸入原則。
在 RHEL 和 CentOS 發行版上,如有可能,Horizon Agent 安裝程式指令碼會將 iptables 防火牆設定為使用「接受」的輸入原則。
確定 RHEL 或 CentOS 客體作業系統上的 iptables 對來自 Blast 連接埠 22443 的新連線具有「接受」的輸入原則。
BSG 啟用時,用戶端連線會透過 Horizon Connection Server上的 BSG 從 Horizon Client 裝置導向至 Linux 桌面平台。未啟用 BSG 時,則是直接從 Horizon Client裝置對 Linux 桌面平台連線。
確認 Linux 虛擬機器使用的 Linux 帳戶
下表列出 Linux 虛擬機器使用的帳戶名稱和帳戶類型。
帳戶名稱 | 帳戶類型 | 使用者 |
---|---|---|
根 | Linux 作業系統內建 | Java Standalone Agent、mksvchanserver、Shell 指令碼 |
vmwblast | 由 Linux 代理程式安裝程式建立 | VMwareBlastServer |
<目前登入的使用者> | Linux 作業系統內建、AD 使用者或 LDAP 使用者 | Python 指令碼 |
桌面平台環境
Linux 發行版 | 預設桌面平台環境 | Horizon Agent for Linux 支援的桌面平台環境 |
---|---|---|
Ubuntu 20.04/18.04 | Gnome | Gnome Ubuntu、K Desktop Environment (KDE)、MATE |
RHEL/CentOS 7.x | Gnome | Gnome、KDE |
RHEL/CentOS 8.x | Gnome | Gnome |
SLED/SLES | Gnome | Gnome |
只有在 Linux 桌面平台使用 GDM3 歡迎畫面 (登入畫面) 時,才可執行 KDE 和 MATE 桌面平台環境的 Single Sign-On (SSO)。您必須使用用來安裝桌面平台環境的命令中所列的命令來安裝 KDE 和 MATE。
使用 RHEL/CentOS 7.x 和 Ubuntu 發行版時,SSO 將無法解除鎖定已鎖定的 KDE 工作階段。您必須手動輸入密碼,才能將鎖定的工作階段解除鎖定。
若要變更其中一個支援的 Linux 發行版上使用的預設桌面平台環境,您必須使用下列適用於您的 Linux 桌面平台的步驟和命令。
- 使用預設桌面平台環境設定,安裝支援的 Linux 發行版作業系統。
- 針對您的特定 Linux 發行版,執行下表所述的適當命令。
表 6. 用來安裝桌面平台環境的命令 Linux 發行版 新的預設桌面平台環境 用來變更預設桌面平台環境的命令 RHEL/CentOS 7.x KDE yum groupinstall "KDE Plasma Workspaces"
Ubuntu 20.04/18.04 KDE apt install plasma-desktop
Ubuntu 20.04/18.04 MATE 1.225 apt install ubuntu-mate-desktop
- 若要開始使用新的預設桌面平台環境,請重新啟動桌面平台。
- 針對 Ubuntu 20.04/18.04 和 RHEL/CentOS 7.x,請使用下表中的資訊來設定 /etc/vmware/viewagent-custom.conf 檔案中的 SSODesktopType 選項,以指定要用於 SSO 的桌面平台環境。
表 7. SSODesktopType 選項 桌面平台類型 SSODesktopType 選項設定 MATE SSODesktopType=UseMATE GnomeUbuntu SSODesktopType=UseGnomeUbuntu GnomeFlashback SSODesktopType=UseGnomeFlashback KDE SSODesktopType=UseKdePlasma GnomeClassic SSODesktopType=UseGnomeClassic - 針對 RHEL/CentOS 8.x,若要讓 SSO 登入工作階段使用 Gnome Classic,請從 /usr/share/xsession 目錄中移除 Gnome Classic 啟動檔案以外的所有桌面平台啟動檔案。以下列這一組命令為例。
cd /usr/share/xsessions mkdir backup mv *.desktop backup mv backup/gnome-classic.desktop ./
使用者在初始設定之後必須將其 Linux 桌面平台登出或重新開機,才能使用 Gnome Classic 作為其下一個 SSO 工作階段中的預設桌面平台。
如果您在安裝了多個桌面平台環境的 Linux 桌面平台上停用 SSO,則不需要執行任何前述步驟。使用者在登入該 Linux 桌面平台時,必須選取其所需的桌面平台環境。
網路需求
- 如果網路狀況良好 (例如,在區域網路 (LAN) 環境中),請選取 TCP。
- 如果網路狀況不佳 (例如,在封包遺失且時間延遲的廣域網路 (WAN) 環境中),請選取 UDP。
- 在您的 Linux 虛擬機器上下載並安裝 Wireshark。
針對 RHEL/CentOS:
sudo yum install wireshark
針對 Ubuntu:sudo apt install tshark
- 使用 VMware Horizon Client 連線至 Linux 桌面平台。
- 開啟終端機視窗並執行下列命令以顯示 VMware Blast Extreme 使用的 TCP 套件或 UDP 套件。
sudo tshark -i any | grep 22443
- 遠端檔案的複製可能會很慢。在此情況下,請改為傳輸較小的檔案。
- USB 裝置未出現在遠端 Linux 桌面平台中。
- USB 資料未完整傳輸。例如,在複製大型檔案時,您取得的檔案大小可能會小於原始檔案。
USB 重新導向的 VHCI 驅動程式
- 如果要使用 .tar.gz tarball 安裝程式來安裝 Horizon Agent,您必須先下載 tarball 安裝程式並將其解壓縮,然後安裝 VHCI 驅動程式,再使用 USB 重新導向功能的安裝參數來安裝 Horizon Agent。
- 如果要使用 .rpm RPM 安裝程式來安裝 Horizon Agent,您必須先安裝 Horizon Agent,然後安裝 VHCI 驅動程式,再將 USB 重新導向功能新增到 Horizon Agent 組態。
如需詳細資訊,請參閱在 Linux 虛擬機器上安裝 Horizon Agent。
USB 重新導向功能對 USB 虛擬主機控制器介面 (VHCI) 核心驅動程式具有相依性。若要支援 USB 3.0 和 USB 重新導向功能,您必須透過執行以下步驟來安裝 VHCI 驅動程式:
- 從 https://sourceforge.net/projects/usb-vhci/files/linux%20kernel%20module/下載 USB VHCI 原始程式碼。
- 根據 Horizon Agent 安裝程式的格式來識別 VHCI 修補檔案的完整路徑。如需相關準則,請參閱以下範例。
- (Tarball 安裝程式) 如果您下載 tarball 安裝程式 VMware-horizonagent-linux-x86_64-YYMM-y.y.y-xxxxxxx.tar.gz,並將其解壓縮到 /install_tmp/ 目錄下,則 full-path_to_patch-file 為 /install_tmp/VMware-horizonagent-linux-x86_64-YYMM-y.y.y-xxxxxxx/resources/vhci/patch/vhci.patch。
- (RPM 安裝程式) 如果您下載 RPM 安裝程式 VMware-horizonagent-linux-YYMM-y.y.y-xxxxxxx.el8.x86_64.rpm,並用它來安裝 Horizon Agent,則 full-path_to_patch-file 為 /usr/lib/vmware/viewagent/resources/vhci/patch/vhci.patch。
- 若要編譯 VHCI 驅動程式原始程式碼,並在您的 Linux 系統上安裝產生的二進位檔,請使用下表中列出的命令。將命令中的 full-path_to_patch-file 取代為您在上一步中識別的檔案路徑。
例如,如果檔案路徑為 /install_tmp/VMware-horizonagent-linux-x86_64-YYMM-y.y.y-xxxxxxx/resources/vhci/patch/vhci.patch,則 patch 命令會變為:
patch -p1 < /install_tmp/VMware-horizonagent-linux-x86_64-YYMM-y.y.y-xxxxxxxi/resources/vhci/patch/vhci.patch
Linux 發行版 | 編譯及安裝 USB VHCI 驅動程式的步驟 |
---|---|
Ubuntu 20.04/18.04 |
|
RHEL/CentOS 7.x RHEL/CentOS 8.x |
|
SLED/SLES 12.x SLED/SLES 15.x |
|
此外,請遵循下列指導方針:
- 如果您的 Linux 核心變更為新版本,則必須重新編譯並重新安裝 VHCI 驅動程式,但不需重新安裝 Horizon Agent for Linux。
- 您也可以使用與 Ubuntu 系統的下列範例相類似的步驟,將動態核心模組支援 (DKMS) 新增至 VHCI 驅動程式。
- 安裝核心標頭。
apt install linux-headers-`uname -r`
- 使用下列命令安裝 dkms。
apt install dkms
- 解壓縮並修補 VHCI TAR 檔案。
tar xzvf vhci-hcd-1.15.tar.gz cd vhci-hcd-1.15 patch -p1 <full-path_to_patch-file> cd ..
- 將解壓縮的 VHCI 來源檔案複製到 /usr/src 目錄。
cp -r vhci-hcd-1.15 /usr/src/usb-vhci-hcd-1.15
- 建立名為 dkms.conf 的檔案,並將其置於 /usr/src/usb-vhci-hcd-1.15 目錄中。
touch /usr/src/usb-vhci-hcd-1.15/dkms.conf
- 將下列內容新增至 dkms.conf 檔案。
PACKAGE_NAME="usb-vhci-hcd" PACKAGE_VERSION=1.15 MAKE_CMD_TMPL="make KVERSION=$kernelver" CLEAN="$MAKE_CMD_TMPL clean" BUILT_MODULE_NAME[0]="usb-vhci-iocifc" DEST_MODULE_LOCATION[0]="/kernel/drivers/usb/host" MAKE[0]="$MAKE_CMD_TMPL" BUILT_MODULE_NAME[1]="usb-vhci-hcd" DEST_MODULE_LOCATION[1]="/kernel/drivers/usb/host" MAKE[1]="$MAKE_CMD_TMPL" AUTOINSTALL="YES"
- 在 dkms 中新增此 VHCI 驅動程式。
dkms add usb-vhci-hcd/1.15
- 建置 VHCI 驅動程式。
dkms build usb-vhci-hcd/1.15
- 安裝 VHCI 驅動程式。
dkms install usb-vhci-hcd/1.15
- 安裝核心標頭。