💻 Инструкция: закрытая крышка
Как не дать Mac уснуть, даже когда крышка MacBook закрыта
Закрытие крышки - это не тайм-аут простоя, это сон на уровне железа, и именно поэтому caffeinate здесь ничего не делает. Ниже: три реальных способа, команды, подвохи и один переключатель, который делает всё это без единой из проблем.
Бесплатный пробный период 14 дней · единоразово $39.99 · без телеметрии · macOS 13+
Сначала: почему твой привычный трюк не сработал
Почти каждый сначала пробует caffeinate, закрывает крышку и обнаруживает, что Mac всё равно уснул. Это не баг и не твои флаги.
caffeinate - и любое приложение в меню-баре в стиле «amphetamine» - создаёт power assertion, который блокирует сон по простою: тот сон, что наступает, когда ты отошёл от клавиатуры. Закрытие крышки - совсем другое событие. macOS обрабатывает переключатель крышки на уровне железа/прошивки и усыпляет машину напрямую, а assertion простоя тут ни при чём.
Отсюда следствие: чтобы пережить закрытие крышки, тебе нужен либо официальный режим clamshell от Apple, либо что-то, что переключает системный флаг отключения сна - другой, куда более грубый механизм. Это единственные две двери.
1. Режим clamshell (официальный, гарантированный способ Apple)
Режим clamshell - это поддерживаемый способ работать с MacBook при закрытой крышке. Он полностью надёжен - просто у него есть ценник в виде железа.
- Подключи питание. Подключи Mac к зарядке или к доку с питанием. Только от батареи clamshell не удержится.
- Подключи внешний дисплей. HDMI, USB-C или Thunderbolt. Это та часть, где нет обходного пути - нет дисплея, нет clamshell.
- Подключи внешнюю клавиатуру или мышь. Проводную или Bluetooth (убедись, что в Настройках включено «Разрешить устройствам Bluetooth выводить компьютер из режима сна»).
- Закрой крышку. Mac продолжает работать, и внешний дисплей берёт управление на себя. Нажми клавишу на внешней клавиатуре, если экран не вернулся.
Подвох: тебе нужно таскать с собой монитор, клавиатуру и зарядку. За столом это нормально и совершенно бесполезно, как только ты в движении - в кафе, в поезде или с Mac в сумке. А ещё это значит, что clamshell никогда не поможет, если весь смысл в том, чтобы уйти вместе с машиной.
2. sudo pmset -a disablesleep 1 (мощно и легко пожалеть)
Грубый инструмент. Он ставит общесистемный флаг, который говорит macOS вообще не засыпать - в том числе при закрытии крышки. Ему нужен root, и он остаётся включённым, пока ты его не сбросишь.
# Отключить сон во всей системе (переживает закрытие крышки на многих Mac с Apple Silicon)
sudo pmset -a disablesleep 1
# Проверить, включён ли он сейчас (1 = сон отключён, 0 = обычный режим)
pmset -g | grep SleepDisabled
# Вернуть всё как было - НЕ забудь про эту команду
sudo pmset -a disablesleep 0 Затем закрой крышку - и Mac продолжит работать. Это хорошая новость. Теперь честная часть.
Ему нужен sudo, каждый раз
И установка, и сброс флага запрашивают твой пароль администратора. Безопасно заскриптовать это никак не получится.
Он постоянный и о нём легко забыть
Ничто тебе не напомнит. Включил во вторник, забыл - и твой Mac больше никогда не засыпает: батарея разряжена в ноль, вентиляторы работают, горячий ноутбук запечатан в мягкой сумке.
Встроенный дисплей может оставаться под питанием
Под закрытой крышкой внутренняя панель может впустую продолжать потреблять энергию - потерянная батарея и лишнее тепло ровно там, откуда ему некуда деться.
Всё или ничего
Он не привязан к сборке, рендеру или запуску агента, которые тебе на самом деле важны. Это «этот Mac никогда не спит», 24/7, пока ты не вспомнишь.
И это не гарантировано: Apple принудительно усыпляет при закрытии крышки на некоторых моделях с Apple Silicon независимо от этого флага. Проверь свою машину, прежде чем доверить ей долгий процесс - запусти что-нибудь, закрой крышку на минуту, снова открой и убедись, что процесс продолжился.
Бесплатный пробный период 14 дней · единоразово $39.99 · без телеметрии · macOS 13+
3. Обычные приложения бодрствование (они не переживают закрытие крышки)
Стоит сказать прямо, потому что это спасает целый вечер: классические утилиты в меню-баре в стиле «amphetamine» в основном оборачивают тот же assertion сна по простою, что использует caffeinate. Они отлично держат Mac от засыпания посреди загрузки и не делают ровным счётом ничего, когда крышка закрывается. Если инструмент явно не сказано, что справляется со сном при закрытой крышке, считай, что он не справляется.
Все способы при открытой крышке смотри в честном обзоре всех способов не дать Mac уснуть.
4. Простой способ: один переключатель в AwakeMate
В AwakeMate есть опция Не давать уснуть с закрытой крышкой - в Настройки › Опции или прямо в онбординге. Включи её, одобри одноразовый хелпер - и это вся настройка. Ни Terminal, ни монитора, ни флага, который надо помнить.
От набора команды pmset вручную это отличает область действия: AwakeMate удерживает сон отключённым только пока действительно работает выбранный тобой инструмент. Когда твоя сборка, рендер или агент завершаются, обычный сон сразу возвращается.
Привязано к реальной работе
Удержание бодрствования с закрытой крышкой действует, пока работает отслеживаемый инструмент - Xcode, ffmpeg, Claude Code - а не постоянно.
Оно гасит экран
Встроенный дисплей затемняется под закрытой крышкой, чтобы не жечь батарею и не добавлять тепла, а яркость восстанавливается, когда ты её открываешь.
Оно откатывается само
Выключи опцию или закрой AwakeMate - и настройка откатывается, а яркость восстанавливается. Ничего лишнего не остаётся.
Оно никогда не трогает твои настройки энергии
Твои сохранённые настройки Экономии энергии / Батареи остаются ровно такими, какими ты их задал. По умолчанию опция выключена.
Честная оговорка, та же, что и выше: это работает на большинстве Mac с Apple Silicon, но на некоторых моделях Apple принудительно усыпляет. Закрой крышку один раз с запущенным процессом, чтобы убедиться, что твой держит. Если нет - режим clamshell остаётся гарантированным запасным вариантом.
Сценарий, ради которого это создавалось: запусти долгий прогон агента или сборку, закрой крышку, брось Mac в сумку, раздай ему интернет с телефона и по дороге проверяй ход с телефона. В этом вся идея - полный разбор смотри в агент в твоей сумке.
Бесплатный пробный период 14 дней · единоразово $39.99 · без телеметрии · macOS 13+
Ручной pmset против AwakeMate
pmset AwakeMate sudo, каждый раз без исключений Один переключатель, одноразовое одобрение хелпера Гоняешь агентов ночью? Смотри почему ИИ-агентам нужно, чтобы Mac не спал.
Частые вопросы
Как не дать MacBook уснуть с закрытой крышкой?
Три способа. Режим clamshell (питание + внешний дисплей + внешняя клавиатура или мышь) - официальный, гарантированный путь Apple, но требует железа. sudo pmset -a disablesleep 1 ставит общесистемный флаг отключения сна, который работает на многих Mac с Apple Silicon, но он постоянный, требует root и о нём легко забыть. Или включи Не давать уснуть с закрытой крышкой в AwakeMate: он удерживает сон отключённым только пока действительно работает выбранный тобой инструмент, и откатывается сам.
Работает ли caffeinate с закрытой крышкой?
Нет. caffeinate создаёт power assertion против сна по простою, а сон при закрытии крышки - это не сон по простою: он срабатывает на уровне железа/прошивки в тот момент, когда магнит крышки замыкается. Assertion просто перекрывается. Именно поэтому привычный трюк из Terminal тут не работает.
Можно ли использовать режим clamshell без внешнего дисплея?
Официально нет. Режим clamshell от Apple требует, чтобы Mac был на питании с подключённым внешним дисплеем, плюс внешняя клавиатура или мышь, чтобы его разбудить. Без дисплея закрытие крышки усыпляет Mac. Установка флага отключения сна (или использование опции закрытой крышки в AwakeMate) - единственный способ оставаться бодрым без подключённого монитора.
Безопасна ли команда sudo pmset -a disablesleep 1?
Она ничего не повреждает, но на практике рискованна. Она общесистемная и постоянная, так что если ты о ней забудешь, Mac никогда не уснёт - разрядит батарею в ноль, будет греться и может лежать, запекаясь, внутри закрытой сумки. Всегда проверяй её через pmset -g | grep SleepDisabled и сбрасывай через sudo pmset -a disablesleep 0, когда закончишь.
Как проверить, отключён ли сейчас сон?
Запусти pmset -g | grep SleepDisabled. Значение 1 означает, что сон отключён во всей системе; 0 - обычное поведение сна. Отмени это через sudo pmset -a disablesleep 0.
Как заставить Mac работать у меня в сумке?
Включи в AwakeMate опцию закрытой крышки, запусти нужную работу, раздай Mac интернет с телефона, если ему нужна сеть, и закрой крышку. AwakeMate затемняет встроенный экран, чтобы он не жёг батарею под крышкой. Используй сумку с воздухообменом и держи Mac на питании или на повербанке для долгих прогонов.
Работает ли удержание бодрствования с закрытой крышкой на каждом Mac?
Нет, и никто не может честно это обещать. Apple принудительно усыпляет при закрытии крышки на некоторых моделях с Apple Silicon независимо от флага отключения сна, так что та же оговорка касается и pmset, и AwakeMate. Проверь свой один раз: запусти процесс, закрой крышку на минуту, открой и убедись, что работа продолжилась. Режим clamshell - единственный гарантированный способ.