Jammy Jellyfish (Ubuntu 22.04 LTS) 在 21 April 2022 就已經發行, 目前已把手邊的 Ubuntu 系統均升級到這個版本, 在這邊記錄一些升級過程中碰到的問題與其解決方案。
問題 1 : do-release-upgrade 出現 There is no development version of an LTS available.
在 Ubuntu 20.04 中的 Terminal / SSH 輸入 do-release-upgrade 指令,可能會顯示沒有可用的 LTS 更新,出如下所示:
# do-release-upgrade
Checking for a new Ubuntu release
There is no development version of an LTS available.
To upgrade to the latest non-LTS development release
set Prompt=normal in /etc/update-manager/release-upgrades.
解決方式就是加上 -d 參數, 同時若是想讓原先使用的第三方儲存庫升級後繼續使用,而不是將它們註解掉的話,可以加上 –allow-third-party 參數,自己就是兩個參數都加上去:
# do-release-upgrade -d --allow-third-party
問題 2: 出現 Warning: apt-key is deprecated. Manage keyring files in trusted.gpg.d instead (see apt-key(8)). /etc/apt/trusted.gpg 警告訊息
apt-key 即將被棄用, Ubuntu 22.04 之後將不會包含這個套件, 出現這個警告訊息的是 webmin 的儲存庫,因此可以透過下列方式解決 (11F63C51 是 Webmin 儲存庫公鑰的後 8 碼) :
# apt-key list
# apt-key del 11F63C51
# wget https://download.webmin.com/jcameron-key.asc
# cameron-key.asc | gpg --dearmor | sudo tee /etc/apt/trusted.gpg.d/jcameron-key.gpg >/dev/null
問題 3: 啟動 Sawmill 應用程式時出現找不到 libicui18n.so.63, libicuuc.so.63 的訊息
嘗試啟動 Sawmill 時, 出現下列錯誤:
➜ $ ./sawmill
./sawmill: error while loading shared libraries: libicui18n.so.63: cannot open shared object file: No such file or directory
➜ $ ./sawmill
./sawmill: error while loading shared libraries: libicuuc.so.63: cannot open shared object file: No such file or directory
這是因為 libicu63 套件被替換成 libicu70 了, 所以只要動點手腳讓 Sawmill 應用程式以為有 libicui18n.so.63, libicuuc.so.63 這兩個 Libraries 就可以了:
# cd /usr/lib/x86_64-linux-gnu
# ln -s libicui18n.so.70.1 libicui18n.so.63
# ln -s libicuuc.so.70.1 libicuuc.so.63
以上就是此次升級 Ubuntu 22.04 LTS (Jammy Jellyfish) 出現的三個問題, 都不是甚麼大問題, 所以應該也可以算是無痛升級的過程了。