ユーザアカウントがロードしない件を解決・・・

ここ数ヶ月、ラボのマックサーバが重かったんだけど、原因不明だったもので無視していた(オイ!)。ところが昨日、たまたま、デフォルトでログインするユーザーを設定しようとしてシステム環境設定を開いたら、ユーザアカウント一覧が読み込めないという現象に遭遇。これは気持ち悪いなあ。ということで、トラブルシュートを開始した。別ユーザーでログインしてもその問題が解決しないことから、これはハードウェアかシステムがダメなんだな、と推測。ハードウェアトラブルシュート用のCDが近くに見当たらなかったので、とりあえずシステム再インストールをしてみた。その際に現存のユーザーアカウントを保存したまま再インストール、というオプションでやったのですが、それでも直らない。うーん。ということは、ユーザアカウント設定の大元が悪いか、今度こそほんとにハードウェアの問題なのだな。という結論に達したところで、昨日は夕方5時になったのでさっさと帰宅。

で、今日は土曜日だったのですが、気になってしょうがなかったので、ちょっと調べてみたところ、同じような現象にあった人がいたことがわかり、NetInfoデータベースに問題がありそうだと気付いた。家からラボのサーバにログインして、おそるおそる、データベースを編集し、さっき、たまたま外出する用事があったので、ラボに立ち寄ってサーバをリブートして様子をみてみたら、無事、直ってた。

というわけで、今回の一連の手順を自分の為にメモ。

(1)Unix のウィンドウから、nidump passwd /とタイプして、ユーザアカウントの一覧を表示。
(2)ユーザのリストの中で、問題のあるアカウントを識別。
(私の場合は、昔あったアカウントが完全に消去されておらず、不完全な形で残っていた)
(3)sudo nidump passwd . > passwd で、ユーザファイルを書き出す
(4)テキストエディターで問題のあるアカウントを削除(その行を消去してファイルを保存)
(5)sudo niload -m -d passwd . < passwdで、(4)で作った正しい設定ファイルを読み込ませる。

参考:
http://macwiki.sourceforge.jp/wiki/index.php/NetInfo
http://forums.macosxhints.com/archive/index.php/t-63122.html