iMac を Catalina から Big Sur へupgradeしたら痛い目にあった話
もういい加減、そろそろ平気だろ。という思いを完全にすっ飛ばされるできごとが発生したので、ここにまとめておきます。
結論を言うと、結局 Catalina へ戻しました。Big Sur から Catalina にダウングレードするのも面倒なので、手順はまとめておきます。
また、先にお伝えしておきますが、これらの事象は M1 MacBook Airでは一つも発生していません。Intel め(そうじゃない)。
前提条件
次の構成のハードウェア、ソフトウェア構成で発生しました。すべてで発生するかは分かりません。
hardware
- iMac(2017) 27" Intel 3.4GHz i5 4core
- 64GB 2400MHz DDR4 (16GB x 4)
- Radeon Pro 570 4GB
- 外部HDDを 2つUSB3.0で接続(Time Machineとか Work用)
主な影響しそうな(影響度のあった)software
- Sophos (AntiVirus)
- ATOK
- Path Finder
- Kris
- mount_smbfs
iMac はもともと Sierra で、High Sierra、Mojave, Catalina, と upgradeしていってからの Big Sur です
Big Sur に upgrade して発生した問題と対応したこと
- Calendar に登録した Automator アプリがスケジュールとは関係なく起動される
- NAS(smb) へ書き込み時にデータが部分破損する
- Login後の硬直時間が、回数を重ねるごとに時間が延びていく
- ATOK の文字入力が、某腹話術芸のように遅れてやってくる
1. Calendar に登録した Automator アプリがスケジュールとは関係なく起動される
Calendar Agent は、古くからまっとうではありませんでした。カレンダーに Automator アプリを登録するのも、後から追加するには面倒でした。Catalina になる前後あたりからは、時間通りにぴったり起動することはなく、数分遅れるのは当たり前。10分遅れることもありました。また、OSのバージョンによって保管先も異なったりして、過去のしがらみを使い続けるのは厄介でした。
そんなこんなで、Calendar + Automator が愚策だとは感じていたものの、まぁいっかとつかってましたが、Big Surで激変。時間通り以前の問題が発生しました。まるでなにかのキューにたまっているかのように、何度も繰り返し実行してくれます。しかも間は30〜60分程度の開きがあるという始末。
なにが起きているのかさっぱり分からなかったので、結局すべてのカレンダー(Automator)イベントを削除し、launchAgent から Automator や shell script を起動するようにしました。ぶっちゃけ快適です。なにより、時間通りに動く。
Big Sur にして、過去のしがらみから逃れるためにやったこととして、唯一の良かったことです。
2. NAS(smb) へ書き込み時にデータが部分破損する
SMBをマウントしている人が少ないのか、国外含め事象はあまり確認できていません。これなにがしんどいかって、M1 Mac だと正しく書き込みできているので、Big Sur + NAS(QNAP TS-431P)の組み合わせの障害ではないと言うことです。Intelコードの Kext が腐っているという説明しかできません。
/etc/nsmb.conf
にさまざまなパラメータを渡しながら、いろいろと試しましたが、なにをやっても 1GB を超える大きなファイルは確実に破損します。コピーするたびに、毎回 MD5 ハッシュの値が異なるので、毎回違うような場所が破損していると見て取れます。本当に意味が分からない。
どれも同じシステムコール使っているだろうとは思いつつも、Path Finder、Finder, 'cp -a' コマンドとそれぞれ試して、同じ結果です。この事象が解決できなかったので、Catalina に戻そうかなと考え始めました。
3. Login後の硬直時間が、回数を重ねるごとに時間が延びていく
で、一番の課題がこれ。
booting process は問題ないのですが、login すると硬直するんです。最初の頃は、特定の常駐プログラムの起動に数分かかって、ぐるぐる回ったり、キーボード・トラックパッド・トラックボールの入力を受け付けなくなる程度。
それが、restart や shutdown を繰り返すたびに、徐々に長くなっていきます。やがてloginしてから30分近くまともに使えなくなり、10回と繰り返す前に 1時間以上はまともに使えません。Catalinaに戻す決心を付けた事象はまさにこれです。すぱっとディスク削除してやりましたわ。
なお、海外でも同じような事象が発生してるのかと調べてみました。すべての利用者には外付けのHDD/SSDがついていて、どうもドライブ全部なめてるんじゃないか疑惑があります。全ファイルなめてもいいけど(よくない)、CPU喰うんじゃないよと思うんですけど。DMAってなんだっけ。
4. ATOK の文字入力が、某腹話術芸のように遅れてやってくる
硬直時間が終わってからはふつーに使えているので、しばらく数日は使っていました。ただ、ほとんどの箇所で、日本語入力がまともじゃありませんでした。声が遅れてやってくるよりも遅く、2行くらい打ち込んだ後に文字が表示されるような現象もありました。少なくともリアルタイムに日本語が表示されることはありません。どんだけCPUパワーが必要なのだろうかとi5にしたことを悔やみましたが、多分そういうことじゃないんだと思います。
結局、泣きながら 1日かけて Catalinaへダウングレード
とっててよかったバックアップ。しかし、バックアップからシステム復旧するに当たっては、ダウングレードは厄介な手順を取るしかないと言うことが判明しました。
文鎮になりながらも、結局は次の手順だけで復旧が可能でした。古いバージョンのバックアップを取得したら、アップグレード後はバックアップを取得せずに、そのままにしておいた方がいいかもしれません。厄介でした。
- ⌘+⇧+⌥+R の復旧モードで起動する (⌘+RだとBig Surの復旧モードなので戻せない)
- ディスク削除 & OS再インストール
- Catalina へ upgrade
- 移行アシスタントで復旧
- Xcode 12.5 → 12.4 へダウングレード
Time Machine から直接復旧しようとしたのですが、もともとの復旧モード(Sierra)だと Time Machine のフォーマットが理解できずダメでした。Big Surの復旧モードからなら見えるんですが、Catalinaのバックアップを認識できず復旧してくれません。思った以上ににっちもさっちもいきませんでした。
仕方ないので、ストレージを完全にキレイにして、Sierraからのスタートです。Catalinaの起動ディスクを作っても良かったのですが、ちょうど良いUSBがなくて諦めました。SierraからCatalinaへのupgradeパスはあるので、まぁえっかとこの流れです。
しかし、Time Machineから復旧するにあたり、Catalinaまでもどしても Catalinaの復旧モードからは復旧ができません。Big Surの呪いだと思うことにします。仕方ないので、移行アシスタントでアプリとhomeフォルダを復帰しましたが、最新の状態にしか戻せません。仕方ないので Big Surで使っていた状態まで進んでしまいます。
システム系のファイルはもちろんCatalinaのママなので問題ないのですが、アプリなどはBig Sur専用に上がっているものがあるので、それらはダウングレードが必要です。その筆頭がXcodeです。Catalinaだと最新はXcode12.4ですが、Big Surだと12.5です。いったん、この12.5を削除してから12.4をインストールしたいのですが、過去のバージョンは Apple Developerからしかダウンロードできません。ようするにデベロッパー登録してないとダウングレードできません。嫌がらせか。App Storeでもダウンロードできないのなんでか分からない(なんかあるんだろうけど)。
持ってて良かったデベロッパID(ホントはそうじゃない)。
という感じなので、明確な理由がない限りには Big Surへのアップグレードはしなくて良いだろうという判断です。もしBig Surにするならクリーンインストールしてみた方がまだましだと思われます。Upgradeの祟りがこんなに発生するとは思いもしませんでした。
とりあえず、M1 iMac 128GB RAM 27" 以上のものがでるまでは、iMac はこのままでいこうと決断したしょっさんでした。
この話が、みなさんの何らかのお役に立ちますように。
Discussion