快轉到主要內容

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. 如果你是從SSH連線操控系統,請確保1022通訊埠有開啟。Ubuntu會在升級的時候自動開啟1022通訊埠,作為備用SSH登入方法。
sudo ufw allow 1022/tcp
sudo ufw reload
  1. 接著,安裝Ubuntu官方提供的升級程式
sudo apt install update-manager-core
  1. 執行指令,開始升級系統。如果出現There is no development version of an LTS available.就是還沒正式開放升級。
sudo do-release-upgrade
  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
Ubuntu如何連接Apple Airpods Pro藍牙耳機並查看電量
分類   Linux系統 Linux使用技巧
標籤   AirPods GNOME Ubuntu KDE Plasma
fontconfig調整Linux中文預設字體的優先順序,修正字體模糊、Emoji亂碼的問題
分類   Linux系統 Linux使用技巧
標籤   Ubuntu Arch Linux

留言板

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

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

這是Disqus留言板,您可能會看到Disqus強制投放的廣告。為防止垃圾內容,有時留言可能會被系統判定需審核,導致延遲顯示,請見諒。若要上傳圖片請善用圖床網站。