経緯
Xcode8ベータを試そうとしたら10.11.4を要求されたので、自機をElCapitanにあげました。
...今までSIP回りでめんどくさかったので、プライベートの方は放置していたのですがしょうがない。
OSアップデートを終え、
たまには再起動しようと思いメニューバーから再起動を選択したんですが、なぜか終了してくれない。
すべてのアプリが終了したにもかかわらず、
FinderだけDockで生き続ける現象に遭遇しました。
調査
DockのFinder右クリックでは応答なしとなっている。
この状態でDockアプリをクリックするとアプリの起動はできるようだったので、
アクティビティを開いて今起動しているサービスを見ることにしました。
そこでには幾つか終了されていない常駐サービスがありました。
なので一個づつ切っていくことで原因が分かると思ってKillしていきました。
そうして分かったのが、
WacomのBambooというペンタブレット製品があるのですが
そのドライバー周りがどうやらKillできないらしい。
確かにドライバー周りは何もしていない。
この辺り本業の方とかは気にしながらOSの更新とかするんだろうけど。
とりあえず、ElCapitanに対応したドライバーをインストール...治らない。
よく見たらガイドにはアンインストールしてからと書いてあるので、素直に実施。
アンインストールして気になったのがログイン時に起動する項目。
あそこに確かWacomのドライバーがログイン項目として追加されていたはず。
しかし削除不可な項目になっていたので今までいじっていませんでした。
今回はドライバ自体削除したので消えているんだろうなと期待してましたが
実際のところ消えていませんでした...すごく気持ち悪い。
画像にあるようなマイナスキーでも項目削除が出来ないため、
plistをいじる必要があります。
ログイン項目をターミナルで削除
# システム配下かユーザ配下なのかは項目で異なるので両方見に行く
$ cd /Library/Preferences
$ ls -la *login*.plist
$ plutil -p *login*.plist
$ cd ~/Library/Preferences
$ ls -la *login*.plist
$ plutil -p *login*.plist
今回目当ての設定はシステム配下だったので、loginと付くplistを全て確認して
リレーションがある場合は削除を行いました。
※plistの内容と各ファイルの整合性を確認してから実施すること
$ sudo rm /Library/Preferences/*login*.plist
しかしこのコマンドは効きません。
El Capitanではファイル所有がrootなので、
一旦以下の操作が必要です。
$ sudo chown -R $(whoami) /Library/Preferences/*login*.plist
そうしたら再度削除を通します。
これでログイン項目が消えます。
本来はplistは削除せずにdefaults deleteでもよかったのかもしれませんが、
設定項目がドライバだけだったので削除が手っ取り早いと判断しました。
その後ドライバをインストールして再起動も通るようになりました。
あとがき
一直線で書き起こしましたが、
rootでログインして再起動してみたり、
ターミナルでrebootしてみたりで紆余曲折ありました笑
なんでメニューバーからは失敗してコマンドの終了は通ったのか。
タスクキルの実行レベルに違いがある?