Найти в Дзене
Сисадмин

Как удаленно выключить или перезагрузить mac?

Оглавление

Как удаленно перезагрузить или выключить mac?
Как удаленно перезагрузить или выключить mac?

«Сначала разреши Mac’у немного обнажиться»

Для начала — настрой сам Mac. Без этого он будет как ворчливая бабка у подъезда — ничего не пустит.

  1. Открой:

    Системные настройки → Общий → Общий доступ (или Sharing, если по-английски)
  2. Включи галочку "Удалённый вход" (Remote Login)

    Это активирует
    SSH-сервер — без него ты сможешь только мысленно подключиться к Mac (что бесполезно, поверь).
  3. Убедись, что пользователь, к которому ты хочешь подключаться, имеет пароль (а не «отпечаток пальца и ласковое слово»).
  4. Не забудь про настройки энергосбережения, чтобы мак не уснул в самый нужный момент.

Рекомендуемые способы перезагрузки и выключения Mac удалённо:

1. Через shutdown (рекомендуется)

macOS поддерживает стандартную утилиту shutdown, как в Unix:

Выключить:

sudo shutdown -h now
  • Перезагрузить:
sudo shutdown -r now

Если нужно выполнить через SSH — просто подключитесь и введите эти команды. sudo обязательно, и вам потребуется пользователь с правами администратора.

2. Через osascript (AppleScript из командной строки)

Если вы не хотите использовать shutdown, можно использовать AppleScript:

  • Выключение:
osascript -e 'tell application "System Events" to shut down'
  • Перезагрузка:
osascript -e 'tell application "System Events" to restart'

⚠️ Требует, чтобы вы запускали от пользователя, у которого есть GUI-сессия, и чтобы System Events имел доступ. Лучше использовать из GUI-терминала или из GUI-автоматизации (не через SSH).

3. Через launchctl (если не работает reboot)

Иногда reboot не работает из-за SIP (System Integrity Protection). Можно использовать launchctl:

Перезагрузка:

sudo launchctl reboot system
  • Выключение:
sudo launchctl poweroff

Эти команды работают только в новых версиях macOS и при наличии нужных прав. sudo обязателен.

4. Проверка наличия System Integrity Protection (если команды не работают)

Если reboot не срабатывает с Operation not permitted, возможно, включён SIP:

Проверьте его статус:

csrutil status

SIP можно отключить только через recovery mode, но это не рекомендуется, если нет крайней необходимости.

🔐 Проверьте, есть ли у пользователя sudo-права

Убедитесь, что пользователь может выполнять sudo, и что нет ограничений в /etc/sudoers.

Пример: как корректно перезагрузить Mac через SSH

ssh user@macname
sudo shutdown -r now

Надеюсь, этот гайд поможет тебе не ехать в командировку в другой город или бежать на другой этаж офисного здания, чтобы ребутнуть или выключить яблочный девайс твоего шефа.