關於無線更新
重要
這是 Azure Sphere (舊版) 檔。 Azure Sphere(舊版)將於 2027 年 9 月 27 日淘汰,且使用者此時必須移轉至 Azure Sphere(整合式)。 使用位於 TOC 上方的版本選取器來檢視 Azure Sphere (整合式) 檔。
更新是 Azure Sphere 安全性模型的重要組成部分,因為它們體現了可更新安全性的屬性。 確保定期進行更新有助於讓您的裝置 保持 7 屬性 相容。 當 Azure Sphere 裝置在開啟電源或按下 [重設] 按鈕之後,第一次連線到因特網時,會檢查更新。 此後,檢查會定期進行(目前為20小時)。
有三種類型的更新: 必要更新、 OS 更新和 部署更新。 必要更新是用來確保更新程式本身所依賴的元件—目前是受信任的密鑰存放區 (TKS) 和證書存儲— 是最新的。 TKS 用來驗證要下載和安裝的映像,而證書存儲則會驗證因特網連線。 操作系統更新是以裝置上Microsoft提供的軟體為目標,包括應用程式在中執行的一般世界作業系統,但也以 Pluton 子系統和安全性監視器等較低層級的韌體為目標。 部署更新以您自己的軟體為目標-您的高階且即時可用的應用程式和面板組態映像(如果有的話)。 必要條件和OS更新是由 Azure Sphere 管理;應用程式更新會根據您的 組織所建立的 部署,由 Azure Sphere 協調。
為了讓任何裝置接收必要條件或 OS 更新:
- 必須連線至網際網路。
- 必須適當地設定網路需求 。
為了讓任何裝置更新其應用程式和面板組態映像:
- 它不得具有應用程式開發功能。
- 它必須由 租使用者宣告。
- 它必須屬於 裝置群組。
- 其所屬的裝置群組必須以部署為目標。
- 部署必須包含由或代表貴組織建立的應用程式映像(以及選擇性的面板組態映射)。
- 裝置群組必須有 UpdateAll 更新原則。 您可以使用 azsphere device-group update 命令,停用特定裝置群組的應用程式更新。
針對指定裝置群組中的所有裝置,以該裝置群組為目標的部署會被視為映像這些裝置的真相來源。 裝置上不存在的任何映像都會從裝置中移除。 從 Azure Sphere OS 21.04 起,其中一個例外是,除非面板組態映射取代為新的面板組態映像,否則不會移除它們。
裝置更新檢查會在對應到三種更新類型的三個階段進行:
- 在第一個階段中,Azure Sphere 會取得指令清單,其中列出目前版本的 TKS 和證書存儲。 如果裝置上的 TKS 和證書存儲是最新的,更新會繼續進行第二個階段。 如果沒有,則會下載並安裝目前的映像。
- 在第二個階段中,Azure Sphere 會取得指令清單,其中列出各種 OS 元件映射的目前版本。 如果裝置上有任何映像過期,則會下載目前的映像以及 復原映射 ,以在更新程序失敗時,用來將裝置回復為已知良好的狀態。 OS 和復原映射會下載並儲存在裝置上的預備區域中,然後安裝 OS 映射並重新啟動裝置。
- 第三個階段中,如果裝置群組接受部署更新,Azure Sphere 會檢查部署更新。 如同 OS 更新,應用程式復原映射也會視需要暫存。 應用程式與復原映像會下載並儲存在預備區域中,然後安裝應用程式映像。
更新復原
更新程式的每個部分都包含復原選項。 在必要更新中,回復映像只是更新前狀態的備份。 如果更新失敗,則會還原更新前狀態。
任何層級的回復都會強制在所有較高層級復原:如果有任何韌體映射無法開機,則會復原韌體和應用程式分割區。
針對OS更新,簽章驗證失敗或運行時間困難都可能會觸發復原。 如果簽章驗證失敗,會嘗試更正映像;如果失敗,則會觸發完整回復。 在完整復原中,系統會針對OS和應用程式安裝分段回復映像。
操作系統更新和部署具有獨立的發行週期,因此 OS 更新之間可能會進行多個部署。 如果發生這種情況,請務必注意,部署的復原目標不是最新的部署,而是在上次OS更新時進行部署。 這可確保 OS 和應用程式會以回復狀態一起運作。
中斷的更新
如果更新中斷,例如電源中斷或連線中斷,則每個更新類型都有四個可能的情況:
- 如果已成功下載並暫存一組映射,但尚未安裝,則當電源還原時,安裝將會完成。
- 如果部分但並非所有映像都已下載並暫存,更新會繼續下載遺失的映像,然後繼續進行安裝。
- 如果在下載完成後安裝期間中斷更新,安裝將會在開機時重新啟動。
- 如果未完全下載任何映像,更新程式會在還原電源時開始,因為沒有任何可用的安裝就緒。
關閉電源案例中的更新
Azure Sphere 支援低功率案例,可讓裝置 長時間關閉 電源,以節省電池使用時間。 在這種情況下,請務必允許裝置定期檢查更新。 Power Down 範例應用程式示範如何正確降低耗電量,同時仍確保裝置會定期保持清醒狀態,以檢查操作系統和應用程式更新。
延遲的更新
為了防止重大工作因更新而中斷,高階應用程式可以納入 延後更新。 這項功能可讓應用程式完成其重要工作,然後準備關機以允許更新繼續進行。 DeferredUpdate 範例示範如何實作這類延遲的更新。