Macがスリープするのを阻止するにはFermata
日付 タグ mac カテゴリ mac目次
君には眠らずに働き続けてもらうよ、24時間戦えますか?
いつの頃のCMだったか、かなり昔の栄養ドリンク剤で「24時間戦えますか?」を謳い文句にしたCMがありましたね。もうそんなことしていると、ブラック企業だと言われる時代になってきていますが。
Macに休まず働き続けてもらう、スリープに入らないようにしてもらうのに便利なアプリがFermata。
https://github.com/iccir/Fermata - macOS app to deactivate the lid close sensor
Fermata Fermata is a small macOS utility which prevents Lid Close Sleep under certain conditions:
The user manually checks the “Prevent Lid Close Sleep” menu item. A specified application is launched. A specified application prevents Idle Sleep (which is common for music-playing applications).
Lid Close Sleep
とは蓋を閉じた時のスリープのこと。Fermataを使えば、強制的にスリープを回避することができる。
つまりMacbookの蓋を閉めたままの状態でYoutubeをBGM的に流し続けるとかができるのだ。
そもそもこのソフトを知ったのは、仕事でgit cloneをするのが異常に時間がかかるプロジェクトがあり、帰り際にgit cloneをかけて、朝になったら、終わっているかと思ったら、朝になっても終わっておらず、途中で進まなくなっていたっぽいことが何度かあった。あれ、これってMacがスリープに入ってしまったのか?ということで、このFermateを試しに使ったら大丈夫だったというのがある。
その他にもブラウザ経由でダウンロードしていたのが、スリープに入ってダウンロードに失敗することが何度かあった時も、このFermataを使ったりする。
Fermataのインストール方法
アプリはFermataのGithubのreleaseページからダウンロードする
https://github.com/iccir/Fermata/releases
最新版のzipファイル(本日時点での最新版はFermata 1.2)をダウンロード。
ダウンロードしたzipを解凍すると、Fermata.appが出てくるので、これを/Applicationへ移動する。
あとは、Fermata.app起動時にセキュリティの確認と、
ヘルパーインストールが出てくるので、それを許可する。
Fermataでスリープ防止
さあ、インストールしたFermataからスリープ防止をONにするには、
「Prevent Lid Close Sleep」を選択。
するとどうだろう、もともとはMacのメニューであった「スリープ」の項目がこうあったのが、
以下のように「スリープ」の選択自体グレーアウトされ、できないようになった。
この状態になったところで、例えば、ブラウザでYoutubeを開く、BGM的な動画を何か再生したままでMacbookの天板のカバーを閉じても、そのままBGMが流れたままになる。
これで実際に蓋を閉めてもスリープに入らないようになったのが確認できる。
なお、Fermataは内部的にはpmset
というコマンドと同様のことをしているらしく、
pmset -g
で状態を調べたところ、(-gは設定値を出力するオプション)
「Prevent Lid Close Sleep」をチェック前
$ pmset -g
System-wide power settings:
SleepDisabled 0
Currently in use:
standbydelaylow 10800
standby 1
halfdim 1
hibernatefile /var/vm/sleepimage
gpuswitch 2
powernap 0
disksleep 0
standbydelayhigh 86400
sleep 1
autopoweroffdelay 28800
hibernatemode 3
autopoweroff 1
ttyskeepawake 1
displaysleep 2
Standby Battery Threshold 50
acwake 0
lidwake 1
「Prevent Lid Close Sleep」をチェック後
$ pmset -g
System-wide power settings:
SleepDisabled 1
Currently in use:
standbydelaylow 10800
standby 1
halfdim 1
hibernatefile /var/vm/sleepimage
gpuswitch 2
powernap 0
disksleep 0
standbydelayhigh 86400
sleep 1 (sleep prevented by Fermata)
autopoweroffdelay 28800
hibernatemode 3
autopoweroff 1
ttyskeepawake 1
displaysleep 2
Standby Battery Threshold 50
acwake 0
lidwake 1
SleepDisabledの項目に違いが出ていることが確認できた。
なお、「Prevent Lid Close Sleep」をオンにしっぱなしだと、スリープに入らず、バッテリーがどんどん消費されるので、必要のない時は再度OFFに戻しておくことを忘れずに。
OFFに戻す手順は簡単で、「Prevent Lid Close Sleep」を再度選択して、先ほどまでチェックが入っていたのが、チェック無し状態になっていることが確認できればOK。
pmsetコマンドを直に使えば、同様の制御はできる思うが、Fermataを使って素早く設定できるのは便利だ。
自分のケースのようにgit cloneを長時間に渡って実行させる場合とか、ダウンロードに時間かかっていてスリープに入っちゃうとなぜか途中で失敗する時とかにも使ってみて、問題が解決するか試してみると良いだろう。