2014年1月18日土曜日

OSX Serverの修復(AFP接続エラー)

木曜日の晩に「復元ディスクアシスタント」でなんとか復旧した"OS X Server"(Mountain Lion)だったが、金曜日の朝業務の開始時間まもなくスタッフより「ファイルサーバーに接続出来ません。」との報告が入る。

いや、そんなはずはない。OS再インストールでサービスが復旧したのは確認した。
ファイルサーバーへの接続が出来るかも当然確認した。
試しに報告をくれたスタッフのアカウントを使って自宅から接続してみたところ問題なく接続出来た。

連絡のあったスタッフに「入れないのは一人だけ?」と確認すると、その部署のメンバーは全滅との話。
そんな事は無いはずだと、事務所のMac miniへ"画面共有"で接続し、接続障害の出ているスタッフのアカウントでOSX Serverにログインしてみたところ、共有ボリュームがマウント出来ない。

???

特にエラーなどのアラートも出ないのだが、Finderのウィンドウには「接続出来ません」のメッセージが残るだけ。
再度自分のアカウントや、上司のアカウントを試してみると共有ボリュームに問題なくアクセス出来る。

どうやら特定のグループに属するアカウントだけがおかしな事になっている様子で、コンソールでログを確認してみると
2014/01/17 14:07:08.098 NetAuthSysAgent[85944]: NAHSelectionAcquireCredential complete: iakerb 708CD051-A6E4-3D8E-5833-C1FFF191FD01 - [username]: GSSCred: 0x7fb2fb6170a0 <MC: iakerb [username]@WELLKNOWN:COM.APPLE.LKDC>
2014/01/17 14:07:08.182 NetAuthSysAgent[85944]: AFP error -5014 mapped to EIO
のように"AFP error -5014 mapped to EIO"というエラーが出ていた。
検索してみると"5014"のエラー事例はそこそこ見つかるのだけれど、決定的な解決策が見つからない。
Appleのディスカッションサイトでは「AFPサーバーの初期設定ファイルを捨てたら治った」ようなコメントも見つけたので試してみたけれど効果無し。

ただ不思議な事に"Finder"のウィンドウからだと上記のエラーでマウント出来ないのだが、"Finder"の「移動」メニューにある「サーバへ接続(Command + K)」から接続するとエラーの発生するアカウントでも問題なく共有ボリュームがマウント出来るというおかしな状態である事も確認出来た。

こうなると、破損と言うよりはパーミション絡みのエラーっぽいので、OSX Serverの"DiskUtility"で再度「アクセス権の修復」を試みてみた。
すると思ったより共有絡みのファイルで「エラー&修復」のログがはき出された。
“Library/Preferences/com.apple.alf.plist”上のグループが一致しません。80 であるはずですが、グループは 0 になっています。
“Library/Preferences/com.apple.alf.plist”を修復しました
警告:SUID ファイル“System/Library/CoreServices/RemoteManagement/ARDAgent.app/Contents/MacOS/ARDAgent”は変更済みで、修復されません。
“System/Library/Frameworks/CoreGraphics.framework/CoreGraphics”上のアクセス権が一致しません。lrwxrwxrwx  であるはずですが、lrwxr-xr-x  になっています。
“System/Library/Frameworks/CoreGraphics.framework/CoreGraphics”を修復しました
“System/Library/Frameworks/CoreGraphics.framework/Resources”上のアクセス権が一致しません。lrwxrwxrwx  であるはずですが、lrwxr-xr-x  になっています。
“System/Library/Frameworks/CoreGraphics.framework/Resources”を修復しました
“System/Library/Frameworks/CoreGraphics.framework/Versions/Current”上のアクセス権が一致しません。lrwxrwxrwx  であるはずですが、lrwxr-xr-x  になっています。
“System/Library/Frameworks/CoreGraphics.framework/Versions/Current”を修復しました
“Users”上のアクセス権が一致しません。drwxr-xr-x  であるはずですが、drwxr-x---  になっています。
“Users”を修復しました
“Users/Shared”上のアクセス権が一致しません。drwxrwxrwt  であるはずですが、drwxrwxrwx  になっています。
“Users/Shared”を修復しました
修復後は問題のあったアカウントも問題なくアクセス出来る様になったため、結果としてはパーミッションエラーであったことは間違いなさそうです。

意外とGUIが起動できなかったのもパーミッションの問題だけだったような気がします。
長い時間かけてOSの再セットアップなどする前にシングルユーザーモードで起動して"fsck"コマンド試してみれば良かった。

ま、同じ失敗しないように備忘録です。

0 件のコメント :

コメントを投稿