如何安全更新 Proxmox
輸入 apt full-upgrade 後靜待結果,並不是一種策略。需要事先知道哪個套件會重新啟動服務、哪個需要重新啟動主機,並在更新前準備好回復點。本頁說明兩件事:適用於所有 Proxmox 安裝的安全更新例行程序,以及 Atlas 如何將此程序化為單一流程。
為什麼 Proxmox 更新有風險?
核心更新需要重新啟動;重新啟動會關閉所有 VM 與容器。在錯誤的時段套用更新,就等於計畫外的停機。
一次 full-upgrade 可能在白天重新啟動網路或儲存服務。從 apt 的輸出無法看出哪個套件會觸發什麼。
開機一旦損壞,就只能靠主控台處理。若未建立快照或備份,也就沒有回復的途徑。
安全更新例行程序
無論是否使用 Atlas,以下順序適用於每台 Proxmox 主機:
列出待更新的套件並瀏覽版本說明;主要版本的跳升另行規劃。
將每項更新的影響分類:不中斷、重新啟動服務,或需要重新啟動。
先建立快照或備份:ZFS/Btrfs 快照只需數秒;PBS 備份更加穩固。
可行時先以 dry-run 模擬執行;套用前就能看到將變更的內容。
需要重新啟動的更新集中於維護時段;並觀察第一次開機。
完成後進行驗證:VM 是否已啟動、儲存池是否正常、網路是否就緒。
Atlas 將此例行程序化為單一流程
上述每個步驟,在 Atlas 中都內建於產品:
三種影響分組
清單中的每個套件都會標示三種分組之一:不中斷、重新啟動服務、需要重新啟動。按下之前就知道後果。
模擬執行預覽
變更在套用前先以模擬執行呈現;意外發生在畫面上,而不是伺服器上。
先建立快照
流程會在更新前建立回復點;若有狀況,回頭的路已經備妥。
開機防護
核心釘選與開機防護:保留一個已知可正常運作的核心,以因應系統無法開機的情況。
更新大腦
建議引擎會指出哪些可以稍候、哪些應優先處理;清單依便於決策的順序排列。
Watch 持續看守
Atlas Watch 持續監控主機健康狀態;更新後若發生重大狀況,會發出通知。
常見問題
- 在 Proxmox 上使用 unattended-upgrades 安全嗎?
- 安全性修補程式可以;但將核心與 Proxmox 套件交給自動更新有風險。需要重新啟動的套件,可能在計畫外關閉 VM。安全性套件庫自動更新,其餘則在維護時段手動更新,是較平衡的做法。
- 每次 Proxmox 更新都需要重新啟動嗎?
- 不需要。大多數套件不會中斷服務;部分只會重新啟動自身的服務。通常只有核心、systemd 與微碼更新才需要重新啟動。重點是在套用前就知道哪個屬於哪一類。
- apt upgrade 與 apt full-upgrade 有何不同?
- upgrade 不會安裝新的相依套件,也不會移除套件;full-upgrade 必要時兩者都會做。Proxmox 官方要求使用 full-upgrade(或 pveupgrade);單純的 upgrade 可能留下只套用一半的混合狀態。
- 更新出問題時要如何回復?
- 若更新前已建立 ZFS/Btrfs 快照或 PBS 備份,幾分鐘內即可回復。若沒有,就必須從 GRUB 選擇舊版核心,並手動降級套件。因此,回復點應在更新前建立。
- Proxmox 應該多久更新一次?
- 安全性修補程式不應延後;功能更新則集中在每週或每月的維護時段。遇到重大 CVE 公告時,不必等到維護時段。
- 主要版本升級(例如從 8 升到 9)有什麼不同?
- 是的。主要版本升級是獨立的程序:必須依照官方升級指南、執行 pve8to9 之類的事前檢查,並建立完整備份。不應與例行更新流程混在一起。
- Proxmox 更新的最佳實務有哪些?
- Proxmox 更新的最佳實務可歸納為幾點:先了解即將變更的內容、為重要的機器建立快照、將需要重新啟動的套件另行規劃,並在核心更新後確認系統確實已正常開機。Atlas 會接手這套順序:分類每個套件的影響、事先建立快照,並以開機防護保留回到舊版核心的路徑。
相關條目
- 按下更新之前:哪一種更新會停掉什麼 幾個月沒更新的人真正害怕的不是更新本身,而是不知道什麼會停止。更新並非只有一種,各自的影響也完全不同。
- 套件庫與訂閱提醒:安裝後的第一個意外 全新安裝後,更新會因驗證錯誤而失敗,但其實什麼都沒壞:預設的套件庫是付費的那一個。本條目說明各個套件庫、它們之間真正的差異,以及論壇上流傳的那行危險指令。
- 核心更新:為什麼最危險的更新也是最安靜的 核心安裝完成,什麼事都沒發生,一切看起來都正常。危險在下一次開機時才會出現,而那次開機可能是好幾週之後。原因與結果之間隔了好幾週。
- Proxmox 訂閱提示:為什麼會出現,可以怎麼處理 安裝後,若伺服器沒有訂閱,Proxmox 每次登入都會顯示一則提示。這則提示是資訊,不是錯誤。本文說明兩條官方途徑,以及訂閱帶來的好處。