Let’s Encryptの証明書更新を自動化してくれる便利な win-acme。 ある日突然、タスクスケジューラで「起動に失敗しました(エラー値: 2147942402)」と出て更新が止まってしまうことがあります。
今回は、このエラーの原因と、最短で復旧させる手順を解説します。
エラーコード 2147942402 は、Windowsシステムにおいて 「ファイルが見つかりません(ERROR_FILE_NOT_FOUND)」 を意味します。
よくあるパターン: 最初は
Downloadsフォルダでとりあえず実行して設定したけれど、後でフォルダを整理したり、別の場所に移動したりしませんでしたか? タスクスケジューラは律儀に「最初に入っていた場所」を探しに行き、いなくなったwacs.exeを見て立ち尽くしている状態です。
まずは wacs.exe を含むフォルダを、誤って消したり移動したりしない場所に配置します。
C:\tools\win-acme や C:\Program Files\win-acme など新しい場所にある wacs.exe を右クリックし、「管理者として実行」 します。 このとき、画面に Scheduled task points to different location(タスクの場所が違うよ!)と警告が出ていれば、ツールが正しく問題を検知しています。
メニューから以下の順に操作して、タスクスケジューラの設定を書き換えます。
Do you want to specify the user the task will run as? (y/n*) と聞かれます。y を押すとユーザー名の入力を求められて複雑になるため、そのまま Enter(デフォルトの No) を押すのがコツです。SYSTEM アカウント権限で自動登録されます。win-acmeの自動更新エラーは、「プログラムの場所を固定して、ツール内からタスクを上書き更新する」 だけで簡単に直ります。
wacs.exe を開き、タスクを更新するこれで次回の更新期限も安心ですね!
もしこれでも直らない場合は、一度タスクスケジューラから該当のタスクを削除して、再度 win-acme から作り直すのが確実です。