El capitanにアップデートしたらローカルユーザのログオンが凄く遅くなった話
iMacをEl capitanにアップデートした。
ドメインのユーザは問題なくログインできるんだけど
もともといたユーザがうまくログインできなかった。
やった処理は
1.アクセス権の修復
検証→sudo /usr/libexec/repair_packages --verify --standard-pkgs /
修復→sudo /usr/libexec/repair_packages --repair --standard-pkgs --volume /
el capitanではディスクユーティリティから実行できなくなったので
コマンドでアクセス権を修復。本当は自動で修復していくらしいけど、検証をした限りやってくれてなかったので。
2.LoginHookを解除
sudo defaults delete com.apple.loginwindow LoginHook
どうしても直らなかったので、なんとなくLoginHookを解除。
ローカルユーザは処理の最初のほうでexitするようにしていたんだけど、
判定方法をLoginHookの引数($1)で判定していた。
これがなんと_mbsetupuser とかいうユーザになってた!!
しかし$USERはroot。他のユーザ名でログオンしてるのに、ローカルユーザーでログインしているときは、そうなるみたい。
これが原因で、exitしないで処理しようとして、_mbsetupuserのファイルなどを作成しようとしてログインできなかったみたい。
exitの方法を普通にユーザ名($USER)で判定するようにして解決。
しかし_mbsetupuserって、el capitanへのバージョンアップ用ユーザー?って情報がネットにでてたけどそれだけじゃないのかしら。Appleの技術文書もなし。
ユーザ数が違うからだろうけど、Macの障害はWindowsに比べると情報が少ない。
壊れにくいわけじゃないと思う。Macもよく変な動きはする。
LuanchAgentやLuanchDeamonの動きをみたり予想したりして
がんばるしかないんかな。