Share via


更新 Windows 上的適用於 Linux 的 IoT Edge

適用於:IoT Edge 1.4 複選標記 IoT Edge 1.4

重要

支援 IoT Edge 1.5 LTS 和 IoT Edge 1.4 版本。 IoT Edge 1.4 LTS 於 2024 年 11 月 12 日結束生命週期。 如果您是舊版,請參閱更新 IoT Edge

當 Windows 上的適用於 Linux 的 IoT Edge 應用程式發行新版本時,您會想要更新 IoT Edge 裝置,以取得最新的功能和安全性改善。 本文提供如何在 Windows 裝置上使用新版本時更新適用於 Linux 的 IoT Edge 的相關信息。

在 Windows 上使用適用於 Linux 的 IoT Edge,IoT Edge 會在裝載於 Windows 裝置的 Linux 虛擬機中執行。 此虛擬機已預安裝與IoT Edge,且沒有套件管理員,因此您無法手動更新或變更任何 VM 元件。 相反地,虛擬機會使用 Microsoft Update 來管理,讓元件保持最新狀態。

EFLOW 虛擬機的設計目的是要透過 Microsoft Update 可靠地更新。 虛擬機操作系統具有 A/B 更新分割區配置,利用其中一部分來讓每個更新安全,並在更新程式期間發生任何問題時啟用回復至舊版。

每個更新都包含兩個主要元件,這些元件可能會更新為最新版本。 第一個是 EFLOW 虛擬機和內部元件。 如需 EFLOW 的詳細資訊,請參閱 Windows 組合上的適用於 Linux 的 Azure IoT Edge。 這也包括虛擬機基底操作系統。 EFLOW 虛擬機是以 Microsoft CBL-Mariner 為基礎,每個更新都會提供效能和安全性修正,讓 OS 保持最新的 CVE 修補程式。 在 EFLOW 版本資訊中,版本會指出使用的 CBL-Mariner 版本,而且使用者可以檢查 CBL-Mariner 版本 ,以取得每個版本已修正的 CVE 清單。

第二個元件是與 EFLOW 虛擬機執行和 Interop 所需的 Windows 執行時間元件群組。 虛擬機生命週期和 Interop 是透過不同的元件來管理:WSSDAgent、EFLOWProxy 服務和 PowerShell 模組。

EFLOW 更新是循序的,您必須依序更新至每個版本,這表示若要取得最新版本,您必須使用最新的可用版本執行全新安裝,或將所有先前的服務更新套用至所需的版本。

若要在 Windows 上尋找適用於 Linux 的 Azure IoT Edge 最新版本,請參閱 EFLOW 版本

使用 Microsoft Update 更新

若要在 Windows 更新上接收適用於 Linux 的 IoT Edge,Windows 主機應設定為接收其他 Microsoft 產品的更新。 根據預設,Microsoft 更新 會在 EFLOW 安裝期間開啟。 如果在 EFLOW 安裝之後需要自訂設定,您可以使用下列步驟來開啟/關閉此選項:

  1. 在 Windows 主機上開啟 設定

  2. 選取 [更新 與安全性]。

  3. 選取 [進階選項]

  4. 當您將 Windows 按鈕更新為 [開啟] 時,將 [接收其他 Microsoft 產品的更新] 切換為 [開啟]。

使用 Windows Server Update Services 進行更新 (WSUS)

Windows 更新上的 IoT Edge for Linux 支援使用 WSUS 的內部部署更新。 如需 WSUS 的詳細資訊,請參閱 裝置管理 概觀 - WSUS

離線手動更新

在某些限制或有限的因特網連線的情況下,您可能想要手動脫機套用 EFLOW 更新。 這可以使用 Microsoft Update 離線機制。 您可以使用下列步驟,在 Windows 更新上手動下載並安裝適用於 Linux 的 IoT Edge:

  1. 檢查目前的EFLOW已安裝版本。 開啟 設定,選取 [應用程式 -> 應用程式與功能] 搜尋 Azure IoT Edge

  2. EFLOW - Microsoft Update 目錄搜尋並下載必要的更新。

  3. 從下載的 .cab 檔案擷取AzureIoTEdge.msi。

  4. 安裝擷 取的AzureIoTEdge.msi

管理 Microsoft 更新

如先前所述,Windows 更新上的 IoT Edges 是使用 Microsoft Update 通道提供服務,因此您必須管理 Microsoft 更新。 以下列出自動化開啟/關閉 Microsoft 更新的一些方式。 如需管理OS更新的詳細資訊,請參閱OS更新

  1. CSP 原則 - 使用 Update/AllowMUUpdateService CSP 原則 - 如需 Microsoft 更新 CSP 原則的詳細資訊,請參閱原則 CSP - MU 更新

  2. 手動管理 Microsoft 更新 - 如需如何加入 Microsoft 更新 的詳細資訊,請參閱加入 Microsoft Update

EFLOW 1.1LTS 與 EFLOW 1.4LTS 之間的移轉

Windows 上的 IoT Edge for Linux 不支援在不同發行定型之間進行移轉。 如果您想要從 1.1LTS 或 1.4LTS 版本移至連續版本 (CR) 版本或 viceversa,您必須卸載目前的版本並安裝新的所需版本。

EFLOW 1.1LTS 與 EFLOW 1.4LTS 之間的移轉是 EFLOW 1.1LTS (1.1.2212.12122) 更新的一部分。 此移轉會處理從 1.1LTS 版本移轉至 1.4LTS 版本的 EFLOW VM,包括下列專案:

  • IoT Edge 執行階段
  • IoT Edge 組態
  • 容器
  • 網路和 VM 組態
  • 預存盤案

若要在EFLOW 1.1LTS之間移轉至 EFLOW 1.4LTS,請使用下列步驟。

  1. 取得最新的 Azure EFLOW 1.1LTS (1.1.2212.12122) 更新。 如果您使用 Windows Update,請檢查 更新 以取得最新的 EFLOW 更新。

  2. 針對自動下載移轉(需要因特網連線),請略過此步驟。 如果EFLOW VM 有有限的/沒有因特網存取,請在開始移轉之前先下載必要的檔案。

  3. 開啟提升許可權的 PowerShell 工作階段

  4. 啟動EFLOW移轉

    注意

    您可以使用 旗標搭配 Start-EflowMigration Cmdlet 來移轉一個單一 Cmdlet-autoConfirm。 如果指定 Confirm-EflowMigration 不需要呼叫 ,即可繼續進行 1.4 移轉。

    1. 如果您使用自動下載移轉選項,請執行下列 Cmdlet
      Start-EflowMigration
      
    2. 如果您在步驟 2下載 MSI,請使用下載的檔案來套用移轉
      Start-EflowMigration -standaloneMsiPath "<path-to-folder>\AzureIoTEdge_LTS_1.4.2.12122_X64.msi" 
      
  5. 確認EFLOW移轉

    1. 如果您使用自動下載移轉選項,請執行下列 Cmdlet
      Confirm-EflowMigration
      
    2. 如果您在步驟 2下載 MSI,請使用下載的檔案來套用移轉
      Confirm-EflowMigration -updateMsiPath "<path-to-folder>\AzureIoTEdge_LTS_Update_1.4.2.12122_X64.msi" 
      

警告

如果移轉失敗,EFLOW VM 將會還原至其原始 1.1LTS 版本。 如果您想要取消移轉或手動將 EFLOW VM 還原至先前的狀態,您可以使用下列 Cmdlet Start-EflowMigration ,然後 Restore-EflowPriorToMigration

如需詳細資訊,請使用 Get-Help <cmdlet> -full 命令檢查 Start-EflowMigrationConfirm-EflowMigrationRestore-EflowPriorToMigration Cmdlet 檔。

下一步

在 Windows 版本上檢視適用於 Linux 的最新 IoT Edge。

深入瞭解 Windows 安全性內部部署上的適用於 Linux 的 IoT Edge。