Macで Adobe Illustrator を起動していると、一定時間放置しても画面(ディスプレイ)が真っ暗にならない。Illustrator を終了すると正常にスリープする——この症状の原因と、確実な解決手順をまとめます。
症状のチェック
以下に当てはまるなら、この記事の内容が参考になります。
- Illustrator を起動している間だけ画面が消えない
- 電源ボタンの軽押しやスクリーンセーバー(ロック画面)にはなるが、その後も画面が点灯し続ける
- Illustrator を終了すると、通常どおり画面が消える
- ディスプレイは外部モニターを使っている(内蔵・外部は問わず発生します)
原因
犯人は Illustrator 本体ではなく、Illustrator に付属する「ホーム/チュートリアル」用の拡張パネルです。
- 拡張パネルの正体は
CEPHtmlEngineという Chromium ベースの内部プロセス - このプロセスが
com.adobe.illustrator.OnBoarding(起動時に出るホーム画面・チュートリアル)を動かしている - Chromium の動画再生防止機能「Video Wake Lock」を掴んだままになり、macOS に「画面を消すな」と指示し続ける
つまり Illustrator の環境設定をいくら見ても、この項目は存在しません。OS の省エネ設定の問題でもありません。バックグラウンドの拡張パネルが原因です。
解決法
目的別に3つあります。手っ取り早く直したいだけなら【方法1】、根本的に断ちたいなら【方法2】、毎日繰り返すのが面倒なら【方法3】。
方法1:原因プロセスをその場で終了する(一時対処)
ターミナル(command(⌘)+ スペース → terminal と入力して起動)を開いて以下を貼り付けて実行します。Illustrator は終了しません(消えるのは起動時のホーム画面だけ)。
PID=$(pmset -g assertions | awk '/pid [0-9]+\(CEPHtmlEngine\).*Video Wake Lock/ {match($0,/pid [0-9]+/); print substr($0,RSTART+4,RLENGTH-4); exit}'); \if [ -n "$PID" ]; then ps -p "$PID" -o comm= | grep -q CEPHtmlEngine && kill "$PID" && echo "killed $PID"; else echo "対象なし"; fi; \pmset -g assertions | grep PreventUserIdleDisplaySleep
実行後、最後の行が PreventUserIdleDisplaySleep 0 になっていれば成功です。これで画面が消えるようになります。
まず原因を自分の目で確認したい場合
いきなり kill するのが不安なら、先に「誰が画面を消させないでいるか」を確認できます。
pmset -g assertions | grep -B1 -A1 PreventUserIdleDisplaySleep
PreventUserIdleDisplaySleepが 1以上 なら、画面スリープを止めているプロセスがいる- リストに
pid ○○○(CEPHtmlEngine) ... "Video Wake Lock"と出ていれば、それが犯人です
方法2:毎日決まった時刻に自動で終了させる(自動化)
「恒久対策までは踏み切りたくないが、毎回手で実行するのは面倒」という場合は、cron で自動実行させます。以下は毎日22時に自動で原因プロセスを終了する例です。
ターミナルで crontab -e を実行し、以下の1行を追記して保存します。
0 22 * * * PID=$(pmset -g assertions | awk '/pid [0-9]+\(CEPHtmlEngine\).*Video Wake Lock/ {match($0,/pid [0-9]+/); print substr($0,RSTART+4,RLENGTH-4); exit}'); if [ -n "$PID" ]; then ps -p "$PID" -o comm= | grep -q CEPHtmlEngine && kill "$PID"; fi
時刻を変えたい場合は先頭の 0 22(分・時)を書き換えます。例:夜0時30分なら 30 0。
引っかかりポイント(重要)
実際にやってみると詰まりやすい箇所
❌ “Video Wake Lock” だけで検索して kill してはいけない
最大の注意点です。 「Video Wake Lock」という名前は Chromium 共通のため、Google Chrome や Electron 製アプリ(動画再生中など)も同じ名前で使っています。プロセス名を絞らずに kill すると、関係のない Chrome を巻き添えで落とします(実際にやらかしました笑)。
この記事のコマンドは \(CEPHtmlEngine\) でプロセス名を限定し、さらに ps で二重チェックしているので安全です。
⚠️ kill しても、しばらくすると再発することがある
感覚的に、他のAIデータを開いたり、Illustratorを再起動すると再発します。
また、拡張パネルは複数の CEPHtmlEngine プロセスに分かれていることがあり、1つ落としても別のプロセスがロックを持っている場合があります。方法1のコマンドをもう一度実行すれば、残りも順に片付きます。
⚠️ cron(方法2)は Mac がスリープ中だと動かない
指定時刻に Mac 自体がスリープしていると cron は実行されません。

