もうすぐリリースのUbuntu 22.04を使いたくてUbuntu 21.10からアップグレード(Ubuntu MATE)

Posted by 雅楽斎 on Saturday, April 16, 2022

TOC

開発はほとんど終わっている…はず?

Ubuntu 22.04(コードネームJammy Jellyfish)はその名の通り2022年4月にリリース予定の5年サポートバージョンであるLTSバージョンとなります。

リリース予定日は4月21日になっていて、アップグレードを決行した4月15日はもうリリース前の最後の週なので、もう概ね開発は終わっているかもしれない(願望)ということで、ひと足お先に手元のUbuntu MATE 21.10からUbuntu MATE 22.04にアップグレードしました。今回はLTSリリースなので、遅かれ早かれアップグレード対象にはなりますし。

リリース前の状態でインストール・アップグレードするということ

メリット

  • 大枠ではリリース時の状態が出来上がっているはずなので、新バージョンの雰囲気を味わうことができる
  • kernelやライブラリのバージョンが上がるので、新し目のプロダクトを使おうとした場合に手間がかからなくなっていることが期待できる(逆パターンの可能性もあり

デメリット

  • 正式リリースのタイミングでおそらく大量のアップデートが来るので、パケット代がもったいない(細い回線)
  • 正式リリースの前なので、何が起ころうともすべてのリスクはユーザーに帰する。重要なファイルがPC内にある場合は正式リリースを待ってインストール・アップグレードするべき
  • 一般的にサードパーティーのパッケージ(docker)は正式版リリース前に対応パッケージを提供しないので、新リリース対応版としてリリースされるパッケージを当面利用できない

Ubuntu MATE 22.04の雰囲気はこんな感じ

デスクトップはこんな感じになりました。

デスクトップ

真ん中のは今までUbuntu MATEのロゴでしたがクラゲに変わりました。また、グレーだったところが黒になりましたね(設定次第ですが)。見やすくなったと思います。

Ubuntu MATE 22.04の良くないところ

Firefoxがsnapアプリになったことの弊害が大きい→必要なかったら当面は削除してからアップグレードの方が良い

UbuntuではFirefoxはデフォルトでインストールされるので、消さない限りはインストールされている状態になりますが、Ubuntu 22.04ではFirefoxはsnapで提供されます。

Firefoxのdebパッケージのインストールの中でsnapパッケージをインストールしますが、snapパッケージを提供するサーバーが貧弱らしくダウンロードが終わらない場合があり、そうするとdebパッケージの更新ができず、端的に言うとaptが失敗します。

.../firefox_1%3a1snap1-0ubuntu2_amd64.deb を展開する準備をしています ...
=> Installing the firefox snap
==> Checking connectivity with the snap store
==> Installing the firefox snap
error: cannot perform the following tasks:
- Download snap "firefox" (1232) from channel "stable" (read tcp 192.168.1.104:60406->185.125.190.28:443: read: connection reset by peer)
- Download snap "gnome-3-38-2004" (99) from channel "stable" (read tcp 192.168.1.104:53992->91.189.91.42:443: read: connection reset by peer)
dpkg: アーカイブ /var/cache/apt/archives/firefox_1%3a1snap1-0ubuntu2_amd64.deb の処理中にエラーが発生しました (--unpack):
 new firefox package pre-installation script subprocess returned error exit status 1
Please restart all running instances of firefox, or you will experience problems.
処理中にエラーが発生しました:
 /var/cache/apt/archives/firefox_1%3a1snap1-0ubuntu2_amd64.deb
E: Sub-process /usr/bin/dpkg returned an error code (1)

Ubuntu22.04のリリースから当面の間は、同じようにしてsnapパッケージのサーバーが今以上に重いことが予想されるので、Firefoxを使っているのでなければ削除してアップグレードが終わったあとにインストールする方がいいと思います。

スクショアプリの誤訳が治ってない

PrtScキー(フォアグラウンドアプリ限定の場合はAlt+PrtSc)で起動するスクショアプリことmate-screenshotコマンドですが、21.10あたりで混入した誤訳が修正されていませんでした。残念!

Ubuntu MATE21.10から22.04へのアップグレード

ここから作業ログです。

APT::Default-Releaseを設定していないことを確認する

aptの設定でインストール対象のデフォルトを設定するAPT::Default-Releaseを設定してあると大変なことになるので、設定していないことを確認します。設定している場合は解除します。

$ grep "APT::Default-Release" /etc/apt/apt.conf.d/*
$ grep "APT::Default-Release" /etc/apt/apt.conf
grep: /etc/apt/apt.conf: そのようなファイルやディレクトリはありません

【非推奨】Ubuntuで一部のパッケージだけ将来のリリースから持ってくる

Raspberry Pi 4にインストールされているUbuntu 20.10をUbuntu 21.04にアップグレードする(APT::Default-Releaseはハマる)

現時点での更新パッケージをなくす

apt-get update apt-get dist-upgradeをして、保留パッケージを0にします。

# apt-get dist-upgrade
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了        
状態情報を読み取っています... 完了        
アップグレードパッケージを検出しています... 完了
アップグレード: 0 個、新規インストール: 0 個、削除: 0 個、保留: 0 個。

更新

# do-release-upgrade -d

上のaptでkernelを更新した場合は、おそらく再起動を促すメッセージが表示されると思います。

Checking for a new Ubuntu release
You have not rebooted after updating a package which requires a reboot. Please reboot before upgrading.

再起動が必要なければ、22.04への更新が始まります。

新しい Ubuntu のリリースをチェックしています

= Welcome to the Ubuntu 'Jammy Jellyfish' development release =

''This release is still in development.''

Thanks for your interest in this development release of Ubuntu.
The Ubuntu developers are moving very quickly to bring you the
absolute latest and greatest software the Open Source Community has to
offer. This development release brings you a taste of the newest features
for the next version of Ubuntu.

(snip)

subscribe to Ubuntu's development announcement list at:

  http://lists.ubuntu.com/mailman/listinfo/ubuntu-devel-announce


続行する[yN] 

更新する場合はyを入力、基本的にこのあとすべて同じようにします。

パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています... 完了
状態情報を読み取っています... 完了
サードパーティが提供するリポジトリを使わない設定にしました
sources.list にあるサードパーティが提供するリポジトリを使わない設定にしました。アップグレード完了後、'ソフトウェアソース' 
ツールもしくはパッケージマネージャーを使って再び利用可能な設定にすることができます。 

続けるには [ENTER] キーを押してください

途中何回かENTERが必要になりますが、正常に終了しない場合は再開するように指示されます。

アップグレードを中断しました。システムが不安定な状態の可能性があります。今からリカバリーを実行します。(dpkg --configure -a) 

今回はアップグレードがすんなり行かずに失敗しているんですが、最終的には指示通りのコマンドを実行することで無事に更新できました。

$ neofetch
           `:+shmNNMMNNmhs+:`              hogehoge@hogehoge-ThinkPad-X60 
        .odMMMMMMMMMMMMMMMMMMdo.           ------------------------------ 
      /dMMMMMMMMMMMMMMMmMMMMMMMMd/         OS: Ubuntu MATE Jammy Jellyfish (dev 
    :mMMMMMMMMMMMMNNNNM/`/yNMMMMMMm:       Host: 1706EJ4 ThinkPad X60 
  `yMMMMMMMMMms:..-::oM:    -omMMMMMy`     Kernel: 5.15.0-25-generic 
 `dMMMMMMMMy-.odNMMMMMM:    -odMMMMMMd`    Uptime: 2 hours, 40 mins 
 hMMMMMMMm-.hMMy/....+M:`/yNm+mMMMMMMMh    Packages: 2522 (dpkg), 16 (snap) 
/MMMMNmMN-:NMy`-yNMMMMMmNyyMN:`dMMMMMMM/   Shell: bash 5.1.16 
hMMMMm -odMMh`sMMMMMMMMMMs sMN..MMMMMMMh   Resolution: 1024x768 
NMMMMm    `/yNMMMMMMMMMMMM: MM+ mMMMMMMN   DE: MATE 1.26.0 
NMMMMm    `/yNMMMMMMMMMMMM: MM+ mMMMMMMN   WM: Metacity (Marco) 
hMMMMm -odMMh sMMMMMMMMMMs oMN..MMMMMMMh   Theme: Yaru-MATE-dark [GTK2/3] 
/MMMMNNMN-:NMy`-yNMMMMMNNsyMN:`dMMMMMMM/   Icons: Yaru-MATE-dark [GTK2/3] 
 hMMMMMMMm-.hMMy/....+M:.+hNd+mMMMMMMMh    Terminal: mate-terminal 
 `dMMMMMMMMy-.odNMMMMMM:    :smMMMMMMd`    Terminal Font: Ubuntu Mono 13 
   yMMMMMMMMMms/..-::oM:    .+dMMMMMy      CPU: Intel Core 2 T5500 (2) @ 1.667G 
    :mMMMMMMMMMMMMNNNNM: :smMMMMMMm:       GPU: Intel Mobile 945GM/GMS/GME, 943 
      /dMMMMMMMMMMMMMMMdNMMMMMMMd/         Memory: 1684MiB / 2973MiB 
        .odMMMMMMMMMMMMMMMMMMdo.
           `:+shmNNMMNNmhs+:`              

サードパーティパッケージのapt-lineを元に戻す

/etc/apt/sources.list.d/にあるapt-lineが全てコメントアウトされているので、パッケージの更新が終わったらコメントを外して元に戻します。

現時点では普段使っているものの中ではwinehqだけjammyが掘られていますが、その他はjammy向けは掘られていないので今までのパッケージでのんびり待ちましょう。

TP-Link AC600(TP-Link Archer T2U V3)を使えるようにする

こちらはUbuntu MATE 22.04の吊るしで使えるようにはなりませんでした。現時点での解決法は以前と同様、Aircrack-ngが提供するカーネルモジュールの導入です。(ソースが更新されているので、以前同じ手順で導入した場合はgit pullで更新分を引っ張ってきて再度モジュールをビルドする必要があります)

USB接続の無線LAN子機 TP-Link Archer T2U V3(2357:011f)とT2U Nano(2357:011e)をUbuntu 20.04環境で使う

スポンサーリンク


comments powered by Disqus