ryg

Команда терминала pmset

Синтаксис

     pmset [-a | -b | -c | -u] [setting value] [...]
     pmset -u [haltlevel percent] [haltafter minutes] [haltremain minutes]
     pmset -g [option]
     pmset schedule [cancel] type date+time [owner]
     pmset repeat cancel
     pmset repeat type weekdays time
     pmset relative wake seconds
     pmset [touch | sleepnow | displaysleepnow | lock | boot]

Описание

 
Утилита pmset управляет настройками управления электропитания в mac OS X, такими как время простоя до перехода в режим сна, автоматическом перезапуске при потере питания, пробуждение из режима сна и тому подобное.
 
Режим сна - когда питание оперативной памяти сохраняется.
Режим гибернации или глубокого сна, когда состояние оперативной памяти сохраняется на жестком диске и питание компьютера полностью отключается.
 
 
Необходимо помнить, что могут существовать процессы способные переопределять настройки, сделанные pmset. В случае обнаружения таких процессов в OS X утилита выводит список данных процессов. Подробнее в caffeinate (8).
 
Утилита может изменять любые значения управления электропитанием, перечисленные ниже. Можно указать дополнительными параметрами, для каких режимов производится изменение параметров. Это делают флаги -a (для всех режимов), -b (при работе от батареи), -c (от внешнего источника), -u (от источника бесперебойного питания).
 
Чтобы отключить режим сна для диска или дисплея необходимо параметр времени простоя установить в 0 минут.
 
Для работы c утилитой pmset необходимо обладать правами суперпользователя.
 

Параметры

displaysleep
- время простоя в минутах (0 - отключает данный режим), до отключения дисплея. Заменил параметр "dim" в Mac OS X 10.4.
 
disksleep -время простоя до отключения вращения жесткого диска. Заменил параметр "spindown" в Mac OS X 10.4. (Устанавливается в минутах, 0 отключает режим).
sleep - время простоя до засыпания системы. (Устанавливается в минутах, 0 отключает режим).
womp - просыпаться от обращения к компьютеру по ethernet (значения параметра могут быть 0/1).
ring - просыпаться от обращения к компьютеру по модему (значения параметра могут быть 0/1).
autorestart - автоматический перезапуск после пропадания электропитания. (Значения параметра могут быть 0/1).
lidwake
- просыпаться при открытии крышки ноутбука. (Значения параметра могут быть 0/1).
acwake - просыпаться, когда меняется источник питания (Аккумулятор/блок питания). Значения параметра могут быть 0/1.
lessbright - снижать яркость дисплея при переходе на заданный источник питания. Значения =1/0.
halfdim - дисплей будет использовать промежуточный режим половинной яркости, между режимами полностью включено и выключено. Значения =1/0.
sms - использование режима парковки головок жесткого диска при срабатывании датчика резкого движения. Значения =1/0.
hibernatemode -изменить режим гибернации. Использовать с осторожностью (в качестве параметра используется целое число).
hibernatefile
-изменяет размещение файла, сохраняющего данные при гибернации. Файл может находиться только в корневом томе. Использовать с осторожностью (в качестве параметра используется путь к файлу).
ttyskeepawake
- предотвратить засыпание системы, если любой tty активен (например, удаленная сессия). tty считается неактивным в случае, когда время его простоя превышает время простоя для засыпания. Значения =1/0.
networkoversleep
-предоставление общих сетевых услуг во время сна компьютера. Не работает на ряде платформ, изменение невозможно.
destroyfvkeyonstandby - уничтожать файл Vault Key при переходе в режим ожидания. По умолчанию файл паролей сохраняется. Если включить уничтожение файла, то пользователю будет необходимо вводить пароль при выходе из режима ожидания. Возможные значения: 1- уничтожать, 0 - сохранять.
autopoweroff
- Поддерживается не на всех системах там, где он поддерживается, включен по умолчанию. После заданного периода, указанного в минутах, система будет создавать файл гибернации и переходить в режим минимального энергопотребления чипсета. Выход из режима сна в таком случае занимает больше времени, чем обычно. В случае если имеются подключенные внешние устройства, при работе от батарей или сетевой активности выключения питания не будет.
autopoweroffdelay - время ожидания перед переходом в режим autopoweroff. Указывается в минутах.

Получение информации

-g -без параметров. Будет отображать текущие значения настроек электропитания.
-g live - отобразить текущие настройки электропитания.
-g custom -показать настройки для каждого источника питания.
-g cap -показать настройки для текущего источника 
-g shed - показать запланированные события для выключения или пробуждения.
-g ups -показать критические пороги для ИБП
-g ps/batt - показать состояние ИБП/аккумулятора
-g pslog - показать журнал ИБП
-g rawlog - показать журнал аккумулятора, прочитанный непосредственно с батареи.
-g term - Показать параметры температур, влияющие на производительность процессора. Работает не на всех платформах.
-g termlog -показать журнал уведомлений по температурам процессора, влияющим на его производительность. Работает не на всех платформах.
-g assertions
- Отобразить сводку утверждений по управлению потреблением. Утверждения могут предотвратить системный сон или отключение дисплея. Доступно начиная с версии 10.6.
-g assertionslog -показывает журнал assertions. Доступно начиная с версии 10.6.
-g sysload -отображает "system load advisory" - обобщенная системная активность доступна из SystemLoadAdvisory IOGetSystemLoadAdvisory  SystemLoadAdvisory API. Доступно начиная с версии 10.6.
-g sysloadlog -отображает журнал событий "system load advisory". Доступно начиная с версии 10.6.
-g ac / adapter
-показывает информацию о подключенном блоке питания. Поддерживается только на Apple MacBook и MacBook Pro 
-g log -отображает журнал событий, связанных с управлением электропитанием. Засыпание, просыпание и другие события. Предназначен для администратора системы и отладки.
-g uuid -показать текущий режим UUID сна/пробуждения.
-g uuidlog -показать текущий режим UUID сна/пробуждения и показывать новые UUID по мере установки в системе.
-g history -используется для отладки. Выводит временную ленту сна/пробуждения, если включена функция bootarg  io=0x3000000.
-g historydetailed - выводит тайминг на уровне драйвера сна/пробуждения. В качестве параметра задается UUID.
-g powerstate [class names] - вывести текущее состояние питания для устройств I/O.  При вызове может быть задан один или несколько классов устройств (через пробел), если класс не задан, то будет выведена информация для всех классов
-g powerstatelog [-i interval] [class names]
-периодически выводит информацию о состоянии электропитания для ряда устройств и их драйверов. Интервал задается в секундах и по умолчанию равен 5 секунд. Если классы не заданы, то будет выведена информация из корня IOPower.
-g stats показывает количество переходов в режим сна с момента последней перезагрузки.
-g systemstate
-выводит статус системы и возможности устройств по настройке.
-g everything - Максимально подробный отчет.

Параметры режима гибернации (safe sleep)

Режим гибернации hibernatemode задается как набор битов, определяющих поведение компьютера в данном режиме. Значение 0 отключает данный режим, оставляя только обычный сон.
 
1 в нулевом бите. Позволяет использовать режим гибернации на компьютере. Заставляет Mac OS X записывать состояние оперативной памяти на жесткий диск во время сна. При пробуждении (если первый бит не установлен) операционная система будет возобновлять работу, считывая содержимое файла с содержимым оперативной памяти и состояния с диска, при засыпании компьютер будет сразу переходить в режим гибернации. 
 
1 в первом бите. В сочетании с установленным в 1 нулевом бите, система будет сохранять данные и электропитание оперативной памяти, пока уровень заряда батарее не опустится ниже допустимого значения, после этого компьютер перейдет в режим гибернации. 
 
1 в третьем бите. Поощряет динамическое сохранение неактивных страниц памяти, для уменьшения объема поддерживаемой под питанием памяти.
 
1 в четвертом бите. Более агрессивно поддерживает сохранение страниц на диск до начала гибернации.
 
Не рекомендуется менять значения гибернации. Изменения, которые Вы сделаете, могут не поддерживаться, если вы решили, несмотря на предупреждение изменить настройки данного режима, то лучше использовать одно из трех значений. Ради безопасности ваших данных, используйте только 0, 3 или 25.
 
hibernatemode = 0 (двоичный 0000) По умолчанию используется на настольных моделях. Нет режима гибернации, память постоянно находится под питанием, в случае пропадания питания в сети данные будут потеряны. 
 
hibernatemode = 3 (двоичный 0011) По умолчанию используется на ноутбуках. Mac OS X делает копию памяти на диск и продолжает поддерживать питание оперативной памяти. При пробуждении, если емкости батареи хватило, то восстановление идет из оперативной памяти, если нет, то с жесткого диска.
 
 hibernatemode = 25 (двоичный 0001 1001) Данный режим можно установить только с помощью pmset. Система сохраняет образ памяти на диск и выключает компьютер. При пробуждении всегда память считывается из сохраненного диска. Это более медленный режим возобновления работы, но он позволяет увеличить время автономной работы ноутбука Apple.
 
Замечание. Файл, в котором сохраняется образ памяти, может быть расположен только на корневом томе.

Параметры режима ожидания. (standby)

В случае, если данный режим поддерживается компьютером, то он отображается командой pmset -g. Он обеспечивает переход в режим гибернации после заданного промежутка времени. Работает только, если включен режим гибернации параметром hibernatemode 3 или 25.
 
standbydelay - задает время в секундах для перехода из режима сна в режим гибернации и отключения питания.
 

Параметры использования ИБП

 
Параметры настройки работы с ИБП действительны только в случае следования за ключом -u. Данные параметры также имеют варианты включения/отключения. Для отключения конкретной настройки, вместо минут и процентов необходимо указать -1.
 
haltlevel - уровень заряда батареи ИБП, при котором происходит аварийное выключение, задается в процентах.
 
haltafter - Время работы компьютера от батареи, после которого, происходит аварийное выключение. Задается в минутах или 0 для отключения параметра.
 
haltremain - Задает время, когда до окончания емкости батареи остается заданное количество минут или 0 для отключения параметра.
 
Замечание: Данные параметры не работают на ноутбуках. Настройки работы с ИБП предназначены для настольных систем и серверов.
 

Параметры запланированных событий.

 
Утилита pmset позволяет спланировать выключение, включение компьютера, переход в сон или пробуждение. Используется для настройки ежедневного и еженедельного управления электропитанием компьютера.
 
Замечание: Возможно использование только одной пары событий, такой как вкл/выкл. Для цикличных задач необходимо задавать "относительное" время в секундах с момента засыпания системы, ног данное действие не может быть отменено и имеет некоторую погрешность.
 
Вид команды
pmset schedule параметры
 
В параметрах указывается:
 
Тип - один из sleep, wake, poweron, shutdown, wakeorpoweron
 
date/time - в кавычках в 24-х часовом формате "MM/dd/yy HH:mm:ss"
 
time  - HH:mm:ss
 
weekdays - день недели. Подстрока, состоящая из символов MTWRFSU. Возможно использование как одного дня, так и группы. Например: "М" и "MTWRF".
 
владелец - необязательная строка, описывающая пользователя или программу.
 
Параметры при работе от внешнего источника питания.
 
-g batt или -g ps параметры, которые показывают состояние подключенных источников питания.
 
- g pslog или -g rawlog параметры, обычно используемые для отладки и изоляции проблемы.
 

Другие параметры:

 
boot  - сообщить ядру, делать полноценную загрузку, полезно для пользователей Darwin
 
force - сообщает pmset о необходимости немедленного применения настроек. Они не записываются на диск и могут быть легко перезаписаны. Полезно в случае, когда плагин configd не был запущен.
 
touch - сообщает утилите о необходимости считать параметры настроек с диска.
 
noidle -устаревшая команда, предотвращающая "засыпание" системы. Лучше использовать caffeinate (8).
 
sleepnow - немедленный переход в ждущий режим
 
displaysleepnow -немедленный переход дисплея в ждущий режим.
 
resetdisplayambientparams - сбрасывает параметры настроек внешнего освещения для некоторых дисплеев Apple.
 
 

Примеры

 
pmset -b displaysleep 5
Устанавливает отключение дисплея через 5 минут простоя при работе от батареи. Остальные параметры остаются без изменений, в  том числе и работа дисплея при работе внешнего источника.
 
pmset -a displaysleep 10 disksleep 10 sleep 30 womp 1
Устанавливает режим ожидания для дисплея в 10 минут, для жесткого диска в 10 минут, засыпания системы в 30 минут и включает режим WakeOnMagicPacket для всех источников питания.
 
pmset -u haltlevel 40
При работе от ИБП при достижении уровня заряда его батареи в 40% выключить компьютер.
 
pmset -u haltlevel 25 haltremain 30
При работе от ИБП выключает компьютер, если произойдет одно из событий: заряд батареи ИБП достигнет 25% или оставшееся расчётное время составит меньше 30 минут.
 
pmset -u haltafter 2
Для системы с подключенным ИБП будет выполнено выключение через две минут работы от батареи источника.
 
pmset schedule wake "05/30/14 20:00:00"
Автоматический выход из режима сна 30 мая 2014 года в 20-00.
 
pmset repeat shutdown TWRFS 11:00:00
Выключение компьютера в 11:00 во вторник-субботу.
 
 

Файлы

 
Все изменения и настройки сохраняются в файле 
/Library/Preferences/SystemConfiguration/com.apple.PowerManagement.plist
 
График плановых включений/выключений хранится в файле
/Library/Preferences/SystemConfiguration/com.apple.AutoWake.plist
 
Данные файлы использует и "Системные Настройки -> Электропитание".
 
 

Упомянутые и связанные команды:

 
configd  - Демон управления конфигурацией в Mac OS X
plutil     - Утилита для работы с файлами настроек plist в Mac OS X
scutil    - Управление системными параметрами
systemsetup - Изменить системные настройки компьютера
 
Все команды bash в алфавитном порядке