快轉到主要內容

Ubuntu LTS如何進行大版本系統升級

Linux系統 Linux使用技巧 Ubuntu
🗓️ 民國113年 甲辰年
✍ 切換正體/簡體字
目錄

這篇文章Ivon分享升級Ubuntu系統的步驟與注意事項。

Ubuntu大版本系統升級即是將Ubuntu系統升級到新版,例如從Ubuntu 22.04 LTS升級到Ubuntu 24.04 LTS

你問跳多個版本可不可以?像Ubuntu 16.04跳Ubuntu 24.04?你要確耶!不建議這麼做,這二個版本差了8年的時間,釋出時間相隔過長,容易出問題。

也不建議從Ubuntu LTS跳一般版Ubuntu(例如Ubuntu 22.04 LTS升Ubuntu 23.10)。

在這裡,Ivon介紹以指令升級Ubuntu的方法,不使用圖形工具。使用指令的好處是即使是沒有圖形介面的Ubuntu Server也能從SSH連線處理升級。

系統升級時間視你的網路速度和系統性能而定。比如,裝有3000個套件的系統大約花一小時升級,並且中間需要手動確認各種有的沒有的升級選項。

1. 升級系統前的檢查事項
#

  1. 確認有無升級必要。參考 Ubuntu Release表格,Ubuntu LTS不會出新版本就停止支援舊版了,舊版Ubuntu LTS自該版本釋出的年份開始算,系統的更新支援長達5年(例如Ubuntu 22.04 LTS就是從2022年支援到2027年),企業的付費支援更是長達10年。因此如果你不追求最新版套件,那麼可以不必急著升級到最新版系統。

  2. 確認第三方套件庫的支援狀況。第三方套件庫指的是Ubuntu官方套件庫以外的套件庫,也就是PPA這種的,像是Nvidia CUDA相關套件。

不知道有啟用哪些第三方套件庫?第三方套件庫可以開啟/etc/apt/sources.list檔案確認

另外也請確認/etc/apt/sources.list.d目錄下的檔案。

先到該軟體網站確認他們支援新版Ubuntu。否則的話硬升級下去可能會出現許多套件衝突。Ubuntu在升級前也會警告哪些套件沒有支援最新版系統。

  1. 如果你有軟體是用make編譯安裝的,那麼升級系統後最好重新編譯一次。

  2. 使用AppImage、Flatpak、Snap安裝的套件建議在系統升級之後再更新。

  3. 請使用 Timeshift備份重要資料。如果有空間就備份整個系統到另一個硬碟。

  4. 在升級系統時不要做其他事。如果有跑伺服器服務的,請用systemctl指令把他們停掉,留著必要的SSH就好。

  5. 為了防止更新後無法開機,請事先製作LiveUSB方便修復系統。

2. 查看最新Ubuntu版本
#

在你的電腦執行以下指令,它會列出目前你的系統版本

lsb_release -a

你可以到 Ubuntu Releases查詢最新系統版本。

注意「LTS」的就看「LTS」的,不要跟最新版搞混了。

並且得看正式發布的版本,不是Beta版。

每個新版本Ubuntu發布後通常都會連帶發布「Release Notes」,請閱讀裡面的重要事項。

3. 開始升級Ubuntu系統
#

  1. 首先,升級系統所有套件到最新版
sudo apt update
sudo apt upgrade
  1. 重開機,確保核心有跟著更新完成。
sudo shutdown -r now
  1. 接著,安裝Ubuntu官方提供的升級程式
sudo apt install update-manager-core
  1. 執行指令,開始升級系統。
sudo do-release-upgrade

# 註:如果你要升級的版本處在Beta版,尚未正式發布,請加上`-d`參數
sudo do-release-upgrade -d
  1. 接著按照螢幕指示升級系統。

比較重要的是Restart services during package upgrades without asking?,是否自動重啟所有服務?建議選No,讓系統在重啟服務之前先詢問你。免得升級到一半桌面環境或SSH重啟,打斷升級。

升級的時候有時需要手動確定,是否讓程式新版設定檔取代你的系統設定檔,例如SSH方面的設定。或者你得自己用diff程式比較後再抉擇。

  1. 等待升級完成,看到訊息System upgrade is complete.後,立即重開機。
sudo shutdown -r now
  1. 重開機後,確認套件都已是最新版
sudo apt update
  1. 移除無用的套件
sudo apt autoremove

4. 升級後重新啟用第三方套件庫
#

為了系統穩定度考量,Ubuntu升級程式會在更新的過程中暫時停用sources.list第三方套件庫,系統會把那些字串用#註解掉。

系統更新完成後,再手動編輯啟用就行。

sudo vim /etc/apt/sources.list

ls /etc/apt/sources.list.d

sudo vim /etc/apt/sources.list.d/<檔案名稱>

那麼如果套件庫沒有自動更新到最新版Ubuntu,要如何處理呢?

通常這些套件庫的網址結構都很簡單,比如網址後面寫jammy,指的就是22.04的套件庫。

那麼升級到24.04以後,就把jammy的代號換成noble就好啦。

再執行sudo apt update && sudo apt upgrade升級套件。

如果套件庫還需要GPG金鑰,那麼你就得手動安裝新版金鑰的套件了。

參考資料
#

相關文章

Ubuntu系統下make install指令前,三思而後行
Linux系統 Linux使用技巧 Distrobox Flatpak Ubuntu
Nvidia PRIME用法,Linux雙顯卡電腦切換獨顯跑3D渲染
Linux系統 Linux使用技巧 Nvidia Arch Linux Ubuntu
Ubuntu LTS如何安裝Nvidia顯示卡驅動、CUDA、cuDNN、NVIDIA Container Toolkit套件
Linux系統 Linux使用技巧 Ubuntu Nvidia

留言板

此處提供二種留言板。點選按鈕,選擇您覺得方便的留言板。要討論程式碼請用Giscus,匿名討論請用Disqus。

這是Giscus留言板,需要Github帳號才能留言。支援markdown語法,若要上傳圖片請貼Imgur連結。您的留言會在Github Discussions向所有人公開。

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。