【Macトラブル】ステータスバー/メニューバーがレインボーカーソルになる原因と対処法

Macのトラブルと対処方法
SPONSORED LINK

Macを使い始めて2017年でちょうど10年になるのだが、macOS Sierra(10.12)にアップデートした頃からか、以下のような現象が頻発するようになった。

  • Macのメニューバー右上のステータスバーにカーソルを当てると、レインボーカーソル(虹色のアイコン)が表示され操作できない
  • 時計もフリーズして動かない

というもの。
OSそのものはフリーズしておらず、ブラウザなども普通に操作可能なのだが、これだけが動かない。

謎、、、

OSの問題かもしれないし、アプリケーション(ウイルス対策ソフトとの相性問題とか怪しそう)に起因した問題かもしれないという感じで、原因は不明だが対処方法はわかったので、その方法を備忘録として記事にまとめておこうと思う。

SPONSORED LINK

Macのメニューバーとステータスバーとは

まず、今回話題にしている、メニューバーとステータスバーについてだが、

メニューバー

メニューバー

上記画像の、macOSの画面上部にあるバーが『メニューバー』

メニューバー内のステータスバーエリア

メニューバー内のステータスバーエリア

さらに、メニューバーの右端にある、時計やWi−Fi、Bluetoothアイコンなどが表示されているエリアが『ステータスバー』という位置付けになる。

正確にはFinder画面の下部に表示される情報エリアもステータスバーと呼ばれていて、ややこしいが、この記事では画面上部のメニューバーで起こる事象を扱っていると理解して欲しい。

ステータスバーのレインボーカーソル(虹色のアイコン)問題

で、今回このステータスバーが操作不能になるという事象が発生した。

ステータスバーにカーソルを合わせるとレインボーカーソルになる

ステータスバーにカーソルを合わせるとレインボーカーソルになる

見た目ではこんな感じで、具体的には、

  • マウスカーソルを当てると、レインボーカーソルが表示され操作不能。時計も動かなくなる
  • その他のメニューバーは操作可能
  • OSそのものは操作可能
  • アプリケーションも操作可能

という内容。
このような事象なので、発生している事にすら気づかないこともあるかもしれない。

発生頻度はランダムだが、スリープ復帰直後に発生することが多いという印象は強かった。そして、1度発生すると再起動するまで直らない。

何に困ったか

こういう現象なので正直そこまで困る事はそんなに多くない。

ただ、僕は12インチMacBookを使う場合、インスタントホットスポット機能を多用する。

MacBookで簡単テザリング(インターネット共有)!Instant Hotspotが便利です

2016.11.24

この時Wi-Fiアイコンから接続するので、、、

Wi-Fiアイコンが操作できなくてネットに繋げられない!!

ってイライラする事が多かった。
再起動すれば復活するのは分かっているが、外出先だとその時間が惜しいこともある。

再起動無しで復活する方法はないものか、、、

そう思って調べたら、あった。

原因は『SystemUIServer』プロセスのフリーズ

調べてみると、この原因は『SystemUIServerというプロセスがフリーズ(応答無し)』となっていることだった。

早速、アクティビティモニタをチェックしてみると、、、

SystemUIServerが応答無しとなっていた

SystemUIServerが応答無しとなっていた

確かに応答無しとなっていた。

ダブルクリックで表示されるダイアログから終了を選択

ダブルクリックで表示されるダイアログから終了を選択

基本的には上記プロセスをダブルクリックしてそのダイアログから『強制終了』とすれば、再起動できるのだが、それが出来ない事もあるのでその場合は、このプロセスを再起動すればいいことになる。

なんて事をサラッとかいているが、僕はSE(システムエンジニア)の仕事をしているのでその辺りがサクッと理解できるのだが、普通はよくわからないと思うので、以降に記載する方法をそのままコピペで実施していただけらと思う。

SystemUIServerを再起動する方法

まず、Mac側の操作でターミナルアプリを立ち上げる。Finder操作だと、

  1. Finder起動
  2. アプリケーションを選択
  3. ユーティリティを選択
  4. 『ターミナル』をダブルクリックで起動

という感じになる。

ターミナル起動直後の画面

ターミナル起動直後の画面

起動するとこんな画面が表示される。Windowsだとコマンドプロンプトと呼ばれている、いわゆるコマンド入力の画面だ。

その画面で、以下のコマンドをそのまま貼り付けて欲しい。

killall SystemUIServer

するとほぼ一瞬で終了し、ステータスバーが再表示されるはずだ。

ターミナルでのコマンド実行結果

ターミナルでのコマンド実行結果

これで終了。
内容的にはSystemUIServerプロセスを強制終了させたことになる(その後OS側の制御で自動的に再起動される)。

SPONSORED LINK

SystemUIServerを一瞬で再起動する方法

基本的にこれで問題は解決なのだが、このコマンドを覚えておくのが面倒くさい。というか、忘れそうで毎回コマンドをググったりするのが手間だなと思った。

というわけで、僕はこれを自動化する事にした。
シェルスクリプトという、コマンドを実行するファイルを作成し、そのファイルを起動すれば前述のコマンドを流してもらうというもの。

システム関係の仕事をしている方なら特に驚く話ではないと思うが、一般的にはマニアックな方法なので、一応やり方を紹介しておこうと思う。

まずは、エディタアプリ(僕はCotEditorを使っている)を立ち上げて、上記コマンドを貼り付ける。

killall SystemUIServerとかくだけ

killall SystemUIServer
とかくだけ

こんな感じだ。

拡張子を「sh」、実行権限を付与する

拡張子を「sh」、実行権限を付与する

そして、保存するときに『任意の名前.sh』で保存する。
この時『実行権限の付与』のチェックも付けておく。

ファイルの詳細表示を行う

ファイルの詳細表示を行う

保存したファイルをFinder上で詳細表示(右クリック)で『情報を見る』を選択し、

ターミナルappに関連づける

ターミナルappに関連づける

『このアプリケーションで開く』からターミナルを関連付ける

これで設定は完了。

以後は、このファイルをダブルクリックで起動すれば、

自動的にコマンドを実行してくれる

自動的にコマンドを実行してくれる

このような感じで自動的にターミナルアプリが立ち上がり、コマンドを実行してくれる。

というものだ。

終わりに

僕が使っているMacは2017年1月現在は2台ある。

その両方で発生するので、ハード起因ではなく、恐らくOSまたはアプリとの相性問題が原因だと思っている。

とはいえ、今回調べて対処がほぼ自動化もできたので、いくらでもかかってこいと言えるようになった。

ステータスバーの虹色アイコンに困っている方は、是非試してみて欲しい。

Macのまとめページ

あわせて読みたい

SPONSORED LINK