macOS Server でプロファイルマネージャに関する問題を解決する

プロファイルマネージャが正しく機能しない場合に、問題を特定し、解決する方法をご案内します。

管理ページにアクセスできない場合

プロファイルマネージャの基本設定は、Server アプリで行います。Safari を使って、プロファイルマネージャの /mydevices Web ページと管理 Web ページにアクセスする必要があります。

管理ページにアクセスできるのは、サーバ管理者だけです。管理ページの URL 形式は次の通りです。

  • https://[お使いのサーバの完全修飾ドメイン名]/profilemanager

    • 例:https://www.example.com/profilemanager

iPhone、iPad、iPod touch、Mac は、以下の場所から登録します。

  • https://[お使いのサーバの完全修飾ドメイン名]/mydevices

    • 例:https://www.example.com/mydevices

Safari 以外の Web ブラウザで管理ページにアクセスできない場合は、Safari を試してください。Safari でもアクセスできない場合は、DNS サーバを確認してください。プロファイルマネージャの配備を管理する上で、DNS 設定は重要です。プロファイルマネージャが開かない場合は、お使いのサーバが信頼性の高い DNS サーバを参照しているか確認してください。

プロファイルまたはアプリをクライアントにプッシュできない場合

プロファイルまたはアプリをクライアントシステムにプッシュする際に問題が起きる場合は、コンソールでシステムログファイルを確認してください。このログに、サーバが Apple の APNS サーバに接続できないと記録されている場合は、ネットワークの構成を調べて、必要なポートがすべて開放されているか確認してください。

詳しくは、以下のターミナルコマンドを使って、APNS デバッグログを有効にしてください。

sudo defaults write /Library/Preferences/com.apple.apsd APSWriteLogs -bool TRUE

sudo defaults write /Library/Preferences/com.apple.apsd APSLogLevel -int 7

sudo killall apsd

該当するログは、コンソールアプリで com.apple.apsd および com.apple.apspd サブシステムにフィルタを適用して表示できます。

APNS トランザクションがログに記録されたら、以下のターミナルコマンドを使って、デバッグログを無効にしてください。

sudo defaults write /Library/Preferences/com.apple.apsd APSWriteLogs -bool FALSE

sudo defaults delete /Library/Preferences/com.apple.apsd APSLogLevel

sudo killall apsd

プロファイルマネージャに関してほかの問題が起きている場合

プロファイルマネージャのログは、プロファイルマネージャに関する問題を解決する上で参考になります。「/var/log」に「devicemgr」という名前のシンボリックリンクがあります。このファイルは「/ライブラリ/Logs/ProfileManager」を参照していて、ここには以下のログが入っています。

AuditLogs

  • このディレクトリ内のファイルは、対応するサービスログからのリクエストとレスポンス (たとえば、デバイスに送信されたすべてのコマンドや、特定のユーザが開始したすべてのアクション) を CSV フォーマットで記録したものです。各ファイルには、各列に記録されているデータを説明するヘッダがあります。

devicemgrd.log

  • Open Directory および Active Directory のユーザとグループについて、クエリと同期の状況が記録されます。

  • devicemgrd で実行されたクエリが原因で起きたエラーを報告します。

  • プッシュ通知の送信に関するエントリが表示されます。

  • DEP および VPP トランザクションに関するエントリが表示されます。

dmAuthService.log

  • Web ベースのユーザ認証の試行状況を記録します。

dmDeviceService.log

  • プロファイルマネージャと、その管理対象となるデバイスとの対話を記録します。

dmhttpd.log

  • プロファイルマネージャサービスのリクエストとレスポンスの概要をまとめた HTTP データを記録します。

dmPortalService.log

  • /mydevices ユーザポータルからのリクエストとエラーを記録します。

dmSCEPService.log

  • SCEP サービス (デバイスの登録中に使われるサービス) のリクエストとエラーを記録します。

dmWebAdminService.log

  • /profilemanager Web 管理ページの使用中のリクエストとエラーを記録します。

dm_helper.log

  • macOS ネットワークユーザからの MDM 関連のユーザ認証についての情報が記録されます。

dmrunnerd.log

  • プロファイルマネージャの Web ページ (/profilemanager および /mydevices) をサポートする、管理対象の ruby プロセスの開始と停止の状況が表示されます。このログは、空の場合もあります。

migration_tool.log

  • 以前のバージョンの Server.app からの移行について、その状況と詳細情報が表示されます。

php-fpm.log

  • 個々の php-fpm ヘルパープロセスの開始と停止の状況が表示されます。

php-fpm.devicemgr.log

  • PHP に関する問題は、このファイルに記録されます。

PostgreSQL-

  • プロファイルマネージャの PostgreSQL データベースとのクエリで、エラーになったものが記録されます。

  • データベーススキーマを変更するコマンドもこのファイルに記録されます。

servermgr_devicemgr.log

  • プロファイルマネージャサービスの開始と停止について記録されます。

以下のログには、Web サーバに関する有用な情報が記録されています。

  • /var/log/apache2/service_proxy_error.log

以下のターミナルコマンドは、補足情報を提示してくれます。

sudo log show --info --debug --predicate "(eventMessage contains[cd] 'devicemgr') or (category contains[cd] 'HTTPServer')"

トランザクションの「failures」(エラー) について

一部のログに、トランザクションの「failures」(エラー) または再試行について記録される場合があります。このようなエントリの大半は正常で、問題を示唆するものではありません。このように記録されているイベントは、基盤を支える PostgreSQL データベースの変更を同時に試行したことによる競合です。この類のエラーが起きた場合は、成功するまで再試行されます。

トランザクションの競合が起きている場合は、ログファイルに以下のような記載があるので、わかります。

  • Canceled on conflict out to pivot

  • could not serialize access due to concurrent update

  • @@@ Retry #X

  • @@@ Retry X

apspd CFPrefs ファイルを調べる

「/ライブラリ/Preferences/ApplePushServiceProvider」に移動し、「com.apple.apspd.plist」ファイルを選択して、「ファイル」>「情報を見る」の順に選択します。このファイルのサイズが 5 KB を上回っている場合は削除し、以下のターミナルコマンドを使って、apspd プロセスを再起動してください。

sudo killall apspd

verbose ログを使って詳細情報を入手する

ログのレベルを上げると、問題の解決方法について詳しい情報を入手できる場合があります。必要な情報を収集するには、ログのレベルを上げた後で問題を再現します。

終わったら、元のログレベルに戻してください。ログのレベルを高い設定のままにしておくと、起動ドライブの空き容量が減ってしまいます。

verbose のログ記録を有効にする

ログのレベルを上げるには、以下のターミナルコマンドを実行します。

sudo debugDeviceMgr 4

このコマンドを実行すると、プロファイルマネージャサービスが自動的に再起動します。

verbose のログ記録を無効にする

ログのレベルを元の設定に戻すには、以下のターミナルコマンドを実行します。

sudo debugDeviceMgr 1

このコマンドを実行すると、プロファイルマネージャサービスが自動的に再起動します。

関連情報

公開日: