以前の32bit PCから約2年前に買った64bitのdynabook B45にSSDを換装、その後、追加インストールした64bit版Debian Stretch amd64をBuster(米国時間2019/07/06リリース)にアップグレードすることにしました。
ちなみに、つい先日、32bit Debianは削除、今は、amd64 Debianと使う機会もないけど極小サイズゆえ邪魔にもならないFreeDOSのみ。
それはさておき、いきなり、メインとしているこのPCのDebianをアップグレードしようというわけではありません。
対象は他にも4つあります。
というか、Raspbianは一足先にBusterがリリースされていたことを知り、Debianに先んじて、まず、失敗しても痛手のないデスクトップPC用ラズパイのRaspberry Pi 3B+/Raspbian StretchからBusterにアップグレードしてみることに。
アップグレード自体は、相応の時間がかかるのは当然もあっさり完了、Buster起動後は、ssh接続で使う分には、申し分ないものの、モニタ認識の不具合があり、対処法があるも一時的で再起動すると不具合が再発、物理モニタやVNCを使う場合は、改善されるまで待った方がよさ気な状況に...。
となるとVNCを使うサーバ及びメールクライアント共有としているRaspberry Pi 2B/Raspbian Stretchは、保留決定。
次の候補は...と、このノートPCのDebianでは、HDMI接続しないしと思い、アップグレードしようとすると後述のようにインストール済みだったappstreamに関するエラーに遭遇。
これの対処方法をLiveUSBのDebian Stretchで試そうとsources.listをbusterに書き換え、apt updateしてみるとうまくいきそう、ただ、よく考えるとUSB2.0では気が遠くなるのでLiveUSBに関しては、結果、別途、自身初となるUSB3.0のUSBメモリにBusterをクリーンインストールすることに。
が、このUSB3.0のLiveUSB、インストール完了後、操作してみるとGUI操作において動作が遅い気が...。
ちなみにRaspbian Busterの方は、一時的な確認しかできなかったとは言え、GUIの遅さは感じなかった気がします。
[2019/08/04] 詳細はリンク先に譲りますが、USB3のDebian Live用については、起動の遅さは/etc/fstabの設定、動作の遅さはUSBメモリに起因するものの模様でした。
残る2択でより不安がないのは、スマートスピーカーのRaspbianですが、LiveUSBの方の遅延感は、気のせいか、Busterならそんなもんか、実は、USB2.0とUSB3.0では体感できるほど差がないか、USBメモリ自体の不具合に起因するか、といった可能性もあるし、確認の意味でも...ということでサブのデスクトップ用ラズパイも不完全な中、思いきってメインPCのDebian Stretchをアップグレードしてみることにしました。
結果、PCでアップグレードしたBusterは、GUI操作もサクサクで良好です。
ただ、テキストフォントが大きくなっている(ように感じる?)というちょっとした違和感があるのと、デスクトップ右下に移動不能?操作不能?な日本語変換系バーが固定されているのが、かなり迷惑。
と思ったら、日本語変換バーについては、メニューからなぜか2つある内、一方の[入力メソッド]を選択すると現状uimになっているっぽく、もう1つの[入力メソッド]を選択すると設定パネルが表示され、[ツールバー]タブで[表示の挙動]、[表示:]が[常時]になっていたからのようで[なし]にすると常に表示されず、[モード依存]にすると日本語入力可能となるシーン(テキストエディタ上やブラウザのURL入力欄など)でキーボードの[半角/全角]キーで全角にした時のみ表示されるようになりました。
尚、十分サクサクですが、操作が追いつかなくなるくらい超高速になったらそれはそれで面白いかもと思い、LiveUSBで試した方法をPCでも試してみたところ、なんら変化は感じませんでした。
Busterにアップグレードすべく、sources.list編集後、apt-updateする際、appstreamというパッケージが入っているとエラーとなりますが、後述の方法で対処可能です。
apt full-upgrade -y(apt-get dist-upgrade -y)を実行後、途中でCinnamonデスクトップがクラッシュ、アップグレードが中断したような状態になりました...が、後述のように事なきを得ました。
ちなみにapt-getとaptは微妙に違うらしい程度の認識で、いつしか、aptでいっかと思うようになり、これまで何の気なしにapt dist-upgradeとしていましたが、実は、full-upgradeがapt、dist-upgradeがapt-getのオプションだということを今回、manを眺めて初めて知りました。
あと、なぜか、以前、pip3 installしておいたfeedparserが削除されていました。
RSSを解析、テキスト抽出、スマートスピーカーで再生させていたニュースが、再生できなくなり、ん?と端末でスクリプトを実行してみると[ModuleNotFoundError: No module named 'feedparser']と表示され、気づいた次第。
更にバックアップスクリプトが効かない...なんでだ...と思ったら、rsyncも消えてました...というか、dpkg -l rsyncでバージョンが表示される(入ってるはず?)...なのにない...apt installするとインストールされました...。
そうなるとautoremoveで消えた?
Busterアップグレード後のautoremove対象数が、え?このタイミングでこんなに?と思ってコピーしておいたんですが、なんでしょうね?
python3系のアップグレードに伴って不要となったものがあるようですが、あ、rsync、思いっきり入ってる...まぁ、scp推しでもはやrsyncは非推奨なんでしょうが、少なくとも今はrsyncはオプション指定でssh転送もできるわけで、何よりscpと違って差分バックアップできるのが気に入って置き換える気になれないんですよね...。
念の為、Stretchでapt update/upgrade/autoremove/clean。
appstreamパッケージがインストールされている場合、後述の通り、apt updateでエラーとなるので、これに対処すべく、/etc/apt/apt.conf.d/50appstream最終行3行をコメントアウト。
リポジトリを変更すべく、/etc/apt/sources.listのstretchをbusterへ変更。
Busterでapt update/full-upgrade/autoremove。
回線は光もハブは10Base/100BaseT、無線は遅そうなのなため、有線LAN環境でアップグレード時のデータ取得に4分38秒、アップグレードに約1時間20分。
appstreamパッケージがインストールされている場合、sources.listをbusterに書き換えた後、apt updateするとこのようなエラーが表示されます。
検索すると情報がたくさんあり、そのほとんどは、/etc/apt/apt.conf.d/50appstreamのリネームのようですが、リネームするとアップグレード中、後述のように質疑応答が1つ増えたり、これが必要でアップグレード中に更新・作成した場合、最終的にリネームしたファイルが余分になり、削除するならその手間も増えます。
よって前掲のように当該ファイル内のエラーとなる最後の3行をコメントアウトする方が自動で置き換えてくれそうなので無難かも。
ちなみにbusterやsipからこの問題のない最新のappstreamをdpkg -iするという情報もあり、試してみましたが、libappstream4など依存関係にあるパッケージを芋づる式にインストールする羽目になりそうだった為、やめました。
apt full-upgrade -yしても数件質疑応答を要するので放置は禁物です。
ちなみに自身の場合、Raspbianの時は、データ取得直後の[Samba サーバおよびユーティリティ]と[Configuring libc6:amd64]の2件でした。
が、環境によるのか、Debianでは、この間に[minissdpd の設定]があり、更にappstream対策でファイル名をリネームした場合、自身の環境では、進捗65%あたりで[構成ファイルがないけどどうするか]、/etc/pulse/default.paも変更していたため、進捗90%あたりで、これをどうするか問われました。
(-yは付けたけど答えないとアップグレードが進まない。)
また、途中、目を離した隙に進捗77%あたりでCinnamonだったデスクトップが、MATE自体は元々入れてあったものの、なぜか、見た目からしてBuster版に更新されていると思しきMATEになっており、端末ほか開いているソフトウェアは、何れもウィンドウバーのない画面のみで動きがなく、アップグレードが止まっているように見える状態になりました。
Debianに限らず、本来は、マシンを再起動するまでは、アップグレード前の状態のはず(...ですよね?)が、途中で更新が反映された結果、このような状況になったのでしょう。
試しにいろいろ操作してみると各種アプリは起動するものの、端末は起動しない...とあれこれやっている内にCinnamonがクラッシュしたんだけど再起動するか否かのポップアップが表示され、再起動したところ、見た目にもアップグレードが再開され、最終的に起動せず、何度もクリックした端末も複数開きました。
(以前と同じならデスクトップの元になるウィンドウマネージャのベースとなっていると思われる端末を開いてみたのが功を奏した可能性もある?仮に何もせず放置していたらどうなっていたんでしょう?)
アップグレード中、構成ファイルを更新・作成したため、50appstreamファイルは作成されており、diffで比較の結果、元のファイルは不要と判断し、削除しました。