Сон и питание
Не давайте Mac уснуть из Терминала с помощью caffeinate
Команда caffeinate не даёт Mac уснуть, пока выполняется задача. Она входит в macOS и не меняет никаких настроек.
Симптомы
- Загрузка, сборка или скрипт останавливается, когда Mac засыпает.
- Удалённый сеанс или SSH-подключение обрывается через несколько минут без ввода.
- Вам нужно, чтобы Mac не засыпал во время одной задачи, но менять настройки сна не хочется.
Вероятные причины
- Сон при бездействии. macOS переводит Mac в режим сна, если какое-то время нет ввода с клавиатуры или мыши. Одна лишь сетевая активность не всегда этому мешает.
- Сон дисплея. Дисплей выключается по собственному таймеру. На некоторых Mac после этого засыпает и система.
- Крышка. Если закрыть крышку ноутбука Mac, он уснёт.
caffeinateэтого не меняет. См. Работа ноутбука Mac с закрытой крышкой.
Как проверить
Откройте Терминал. Посмотрите, какие процессы сейчас не дают Mac уснуть.
pmset -g assertionsВывод Список утверждений (assertions) вроде
PreventUserIdleSystemSleepи процесс, который удерживает каждое из них.Посмотрите, какие настройки сна действуют сейчас.
pmset -g
Как исправить
Чтобы Mac не засыпал, пока выполняется одна команда, поставьте перед ней
caffeinate -i. Утверждение снимается, когда команда завершается.caffeinate -i makeЧтобы Mac не засыпал заданное время, укажите его в секундах с
-t. В этом примере — два часа.caffeinate -i -t 7200Чтобы Mac не засыпал, пока не завершится процесс, укажите ID процесса с
-w.caffeinate -i -w 12345Чтобы не выключался и дисплей, добавьте
-d.caffeinate -d -iЧтобы остановить
caffeinate, запущенный без команды, нажмите Control-C.Чтобы Mac не засыпал автоматически при выключенном дисплее, измените настройку. На ноутбуке Mac выберите меню Apple > «Системные настройки» > «Аккумулятор» > «Параметры». Включите «Предотвращать автоматический переход в режим сна при питании от адаптера, когда дисплей выключен».
На настольном Mac выберите меню Apple > «Системные настройки» > «Энергосбережение». Включите «Предотвращать автоматический переход в режим сна, когда дисплей выключен».
С Kilobat
Kilobat может не давать Mac уснуть, пока загрузка не затихнет, а затем разрешить сон. Откройте Kilobat в строке меню. Нажмите на чашку и выберите «До конца загрузок».
CLI делает то же самое. Он останавливается, когда скорость 3 минуты держится ниже 16 KB/s.
kilobat awake --until-quietЧтобы Mac не засыпал, пока выполняется одна команда, и чтобы увидеть, сколько данных она передала, используйте
awake --.kilobat awake -- make releaseЭти функции бесплатны. Шаги для приложения, CLI и MCP — в рецепте.
Вопросы
Не даёт ли caffeinate Mac уснуть с закрытой крышкой?
Нет. caffeinate отключает сон при бездействии. Если закрыть крышку, ноутбук Mac всё равно уснёт, если только к нему не подключены внешний дисплей, клавиатура и питание. См. Работа ноутбука Mac с закрытой крышкой.
Что делает параметр -s?
-s отключает системный сон. В man-странице сказано, что он работает, только когда Mac питается от сети.
Меняет ли caffeinate мои настройки?
Нет. Она создаёт утверждения питания (power assertions). Они снимаются, когда caffeinate завершается.
Источники
- caffeinate(8), man-страница из macOS 27.2
- pmset(1), man-страница из macOS 27.2
- Поддержка Apple: настройка параметров сна и пробуждения на Mac
Источники проверены 29 октября 2026 г. Man-страницы — те, что установлены вместе с macOS; откройте любую командой man <name> в Терминале.