最近、私のMacに「Month 13 is out out out」などの奇妙なメッセージが表示されています。
このエラーを修正するにはどうすればよいですか?Appleセンターから非常に離れているため、Antアップル認定修理センターに行くことができません
最近、私のMacに「Month 13 is out out out」などの奇妙なメッセージが表示されています。
このエラーを修正するにはどうすればよいですか?Appleセンターから非常に離れているため、Antアップル認定修理センターに行くことができません
回答:
このエラーはiOS 11およびmacOS 10.13で確実に記録されますが、どのプラットフォームでも特定の機能や問題が発生することはありません。
ここでは、「macOSのログが多すぎる」という主要な質問にリンクします。これは、議論に値する意見と印象だからです。本当に深刻な状態に対処する必要がない限り、メッセージがないと気分が良くなる人もいます。他の人は、何が起こっているのか、学ぶのか、測定するのかを知ることができるように、さらに詳細な情報を求めています。したがって、これらがどのように問題/分類/使用されるかはトレードオフになります。
いくつかのツールを持っている興味深い開発者の1人は、https: //eclecticlight.co/でブログを書いているHoward Oakleyです。
彼のダウンロードページには興味のある2つのアプリがあります(以下の製品バージョンはベータ版であり、1日または1週間は最新ではない可能性があるため、左のダウンロードリンクを使用してください)。
この問題の正当性を検証できます。昨日も同じ問題が発生し、再起動後、コンピューターはこのエラーのためほとんど役に立たなくなりました。何らかの理由で、コンピューターは今月に対処できず、データベースまたはデータベースが存在する場所にエラーをスローします。
これを修正するには:
アクティビティモニターを開きlsd
、2つのプロセスを強制終了します:、UserEventAgent
システム環境設定を開き、「日付と時刻」に移動します
「日付と時刻を自動的に設定する」のチェックを外します
カレンダーで、2017年12月より前の日付を選択し、[保存]を押します
場合UserEventAgent
またはlsd
問題を引き起こすし続け、その後、力は、日付を設定した後、再びそれらを終了します。
どうして?
私には、UserEventAgentが2つのplistファイルを使用しようとしていたようです。
System/Library/LaunchAgents/com.apple.UserEventAgent-Aqua.plist
そして
System/Library/LaunchAgents/com.apple.UserEventAgent-LoginWindow.plist
ピストンを使用しようとすると、エラーが発生しました:
Month 13 is out of bounds
UserEventAgent内で実際に何が起こったのかはわかりませんが、エラーが発生すると処理できず、CPUとRAMの使用率が高くなることは明らかです。
2017年12月の初めから、UserEventAgentのCPUとメモリの使用率が非常に高いという同じ問題が発生しました。上記のように、コンソールに「月の範囲外」エラーが表示されました。
ディスクユーティリティの「応急処置」、再起動、セーフモード(システムキャッシュをクリアするため)、NVRAMとSMDをクリアしようとしましたが、何も助けにはなりませんでした。CPUとメモリの使用量がセーフモードで急増しないことに気付きました。
@tgrayやu / kidtexasのように、ある時点で、すべてのカスタムLaunchd Plistを無効にすると、問題は発生しなかったことがわかりました。
最終的に、どのplistが問題の原因であるかをデバッグするために、以下の小さなスクリプトを書きました。最終的に、毎月1日に実行されるplistになりました。
<key>StartCalendarInterval</key>
<dict>
<key>Day</key>
<integer>1</integer>
<key>Hour</key>
<integer>03</integer>
<key>Minute</key>
<integer>00</integer>
</dict>
私のリストの多くはStartCalendarInterval
キーを使用し、以下のスクリプトを使用して、スパイクRAMとメモリの問題を引き起こしていないように見えることを示すことができました。とにかく、これは私がそれを整理した方法です。
読者は、コピーして貼り付けるだけでなく、スクリプトを調べて、スクリプトの機能を理解することを強くお勧めします。具体的には、書かれているように、これは~/Library/LaunchAgents
(/Library/LaunchDaemons
他にも)のリストでのみ機能し、意図的にファイル名と<key>Label</key>
特定のパターンに従うリストのみをテストしますcom.USERNAME.my_plist_name[.plist]
。それを実行する前に、私はbootout
すべての私のリストにワンライナーを使用しました:for plist in com."$(whoami)".*.plist; do launchctl bootout gui/"${MYUID}"/"${plist%.plist}" || true; done
そして、それらがlaunchctl list
結果の下に表示されなくなったことを確認しました。
#! /bin/bash
# /apple/307512/month-13-is-out-of-bounds
set -euf -o pipefail
MYUID="$(id -u)"
pushd "${HOME}"/Library/LaunchAgents
while IFS= read -r -d '' plist; do
echo "${plist}"
stats=($(ps ux | grep -v grep | grep UserEventAgent | awk '{ print $3, $5}'))
cpu="${stats[0]}"
vmem="${stats[1]}"
echo "CPU use and virtual memory size while disabled: ${stats[@]}"
launchctl bootstrap gui/"${MYUID}" "${plist}"
sleep 5
stats=($(ps ux | grep -v grep | grep UserEventAgent | awk '{ print $3, $5}'))
echo "CPU use and virtual memory size while enabled: ${stats[@]}"
echo "Change in vmem: $(( "${vmem}" - "${stats[1]}" ))"
echo
done < <(find . -iname "com.$(whoami).*.plist" -print0)
popd
bootout
いるユーザーへの注意:テスト対象のすべてのエージェントが既に無効になっていると想定しているため、n8henrieが推奨する(または同様の)実行に注意してください。
他の人と同様に、UserEventAgentからCPU使用率が高く、RAM使用量が膨大でした(上のコメントを参照)。日付を11月に変更し、UserEventAgentを強制的に終了して修正しました。これはすべて、再起動後の土曜日に開始されました。
私はこれを理解しました。問題を抱えている他の人にとっては、うまくいくと思います。
問題は、〜/ Library / LaunchAgentsにあるLaunchAgent plistでした。StartCalendarIntervalを呼び出す単純なplistファイルです。これは、起動されたplistの有効なキーです。LaunchAgentジョブは、月の最初の日にいくつかのファイルをバックアップの場所にコピーするシェルスクリプトを呼び出します。ジョブはまったく呼び出されていません-問題が発生しているカレンダーに対してロードされたジョブをチェックして起動されていると思います。このplistをアンロードし、ファイルをディレクトリから移動するとすぐに、UserEventAgentは正常に終了しました(強制終了後)。2番目にplistをロード(launchctl load xxxx)すると、UserEventAgentが異常終了しました。
StartCalendarIntervalは、こちらのAppleのドキュメントにあるように、launchdの有効なキーです。
そのため、問題がある人は、LaunchAgentディレクトリを確認し、StartCalendarIntervalキー(または他のカレンダー関連キー)を探してください。私は時間ベースのインターバル・プリストに関する問題を抱えていませんでした。
注:これは、「Month 13 out of bounds」エラーを修正するのではなく、クレイジーなUserEventAgentの動作だけを修正します。
これをAppleに報告し、エスカレーションチェーンをスケーリングした後、macOS 10.13.3で修正する必要があると言われました。
どうやら、これは非推奨NSDateプロシージャ 'descriptionWithCalendarFormat'を呼び出すアプリケーションが原因です。
詳しくはhttps://forums.developer.apple.com/thread/88417をご覧ください。
場合によっては、特定のplistファイルを編集または削除すると、プログラムが非推奨のプロシージャを呼び出すことができなくなりますが、実際の修正はOSの更新です。