Настраиваем спящий режим в Mac
В сентябре прошлого года Apple выпустила обновление до macOS Mojave. Операционная система вышла на редкость стабильной, однако иногда проблемы всё же могут встречаться. Одна из наиболее известных неполадок — быстрый разряд аккумулятора MacBook в спящем режиме. В особо запущенных случаях, ноутбук может полностью разрядиться всего за ночь. Чаще всего проблема кроется в самой macOS, а это значит что её будет легко устранить своими силами. Нужно лишь воспользоваться командной строкой.

Итак, как устранить проблему с быстрой разрядкой аккумулятора MacBook в спящем режиме?
- Запускаем приложение «Терминал» используя Spotlight или любым другим удобным способом.

- В окне командной строки нам предстоит ввести следующую команду:
pmset -g assertions

- Будут выведены параметры для детальной настройки управления питанием. Команда позволит выявить проблемное приложение или службу, которая не позволяет вашему Mac заснуть. Если напротив параметров «PreventSystemSleep» или «PreventUserIdleSystemSleep» стоит цифра 1, это означает что часть процессов не может быть завершена для перехода в спящий режим. Если же рядом стоит цифра 0 — это значит спящий режим функционирует верно.
В том случае, если ручное завершение службы или процесса не дало нужного эффекта, используем поочередно следующие команды в командной строке:
sudo pmset -a hibernatemode 25
sudo pmset -a standby 1
sudo pmset -a standbydelaylow 60
sudo pmset -a standbydelayhigh 60
Применение этих команд позволит вашему Mac корректно переходить в режим сна, дополнительных действий со стороны пользователя не потребуется.
Предлагаем подписаться на наш канал в «Яндекс.Дзен». Там вы сможете найти эксклюзивные материалы, которых нет на сайте.
Вики IT-KB
Настройка режима сна с помощью командной строки в OS X
Для того чтобы узнать количество минут, спустя которые компьютер уйдёт в режим сна нужно выполнить:
sudo systemsetup -getcomputersleep
Например, чтобы настроить переход компьютера в режим сна через 1 час бездействия:
sudo systemsetup -setcomputersleep 60
Для того чтобы выключить переход в режим сна:
sudo systemsetup -setcomputersleep 0
sudo systemsetup -setcomputersleep Never
Как и в любой другой современной ОС, OS X имеет несколько режимов сна. Простой сон — оперативная память компьютера продолжает потреблять питание. Глубокий сон (гибернация) — содержимое оперативной памяти копируется на жёсткий диск.
По умолчанию, режим гибернации включен только на MacBook, на остальных моделях его можно включить. Посмотрим текущие настройки электропитания:
sudo pmset -g
Нас интересует параметр hibernatemode. Он может принимать несколько значений:
0 — гибернация выключена;
3 — гибернация включена, содержимое оперативной памяти копируется на диск, но питание не отключается;
25 — гибернация включена, содержимое оперативной памяти копируется на жёсткий диск, затем отключается питание.
С помощью параметра standbydelay можно задать время в секундах, спустя которое компьютер будет автоматически переходить с режима сна в режим гибернации.
Для экономии электроэнергии можно настроить настольный Mac следующим образом: Включаем режим гибернации с автоматическим отключением питания через 15 минут.
sudo pmset hibernatemode 3 standbydelay 900
Или включаем более экономный режим, который будет отключать питание сразу после копирования оперативной памяти
sudo pmset hibernatemode 25
Так же, можно вручную отправить Mac в сон
pmset sleepnow
В процессе использования OS X некоторые пользователи могут заметить, что система перестала уходить в режим сна автоматически, а все настройки на первый взгляд будут верными. Для того чтобы разобраться с ситуацией, посмотрим сводку энергопотребления, выполним в терминале:
pmset -g assertions
Нас интересует параметр «PreventUserIdleSystemSleep», если он имеет значение «1», то значит в системе запущено какое-то приложение или служба не позволяющая OS X засыпать. Если взглянуть на вывод внимательнее, то в «Listed by owning process» можно будет увидеть службу, которая мешает автоматическому переходу в режим сна. Вывод с моего компьютера:
Assertion status system-wide: BackgroundTask 0 ApplePushServiceTask 0 UserIsActive 1 PreventUserIdleDisplaySleep 0 PreventSystemSleep 0 ExternalMedia 1 PreventUserIdleSystemSleep 1 NetworkClientActive 0 Listed by owning process: pid 30(powerd): [..] 121:05:39 ExternalMedia named: "com.apple.powermanagement.externalmediamounted" pid 31(com.apple.serve): [..] 00:14:04 PreventUserIdleSystemSleep named: "com.apple.collabd" pid 75(hidd): [..] 00:01:52 UserIsActive named: "com.apple.iohideventsystem.queue.tickle" Timeout will fire in 21 secs Action=TimeoutActionRelease Kernel Assertions: 0x10c=USB,BT-HID,MAGICWAKE level=255 0x4=USB mod=09.03.15, 18:44 description=EHC1 owner=AppleUSBEHCI level=255 0x100=MAGICWAKE mod=09.03.15, 19:36 description=en0 owner=en0 level=255 0x8=BT-HID mod=01.01.70, 3:00 description=com.apple.driver.IOBluetoothHIDDriver owner=BNBMouseDevice level=255 0x8=BT-HID mod=01.01.70, 3:00 description=com.apple.driver.IOBluetoothHIDDriver owner=AppleBluetoothHIDKeyboard
Как видно, мешает «com.apple.collabd», этот компонент входит в набор утилит OS X Server, и запускается даже если у Вас нет настроенных служб. Насколько мне удалось понять, эта служба необходима для wiki сервисов которые можно поднять с помощью OS X Server.
Для того чтобы отключить службу, необходимо выполнить:
sudo serverctl disable service=com.apple.collabd
Затем можно снова выполнить просмотр сводки, если значение «PreventUserIdleSystemSleep», изменилось на «0», то при отсутствии других проблем, автоматический переход в режим сна должен заработать.
Проверено на следующих конфигурациях:
| Версия ОС |
|---|
| Apple OS X Yosemite (10.10) |

Автор первичной редакции:
Виталий Якоб
Время публикации: 09.03.2016 14:45
Оптимизация OS X для продления жизни SSD
Привет, Geektimes! Если вы купили SSD и заинтересованы в том, чтобы твердотельный накопитель прослужил как можно дольше, то добро пожаловать под кат.

Хоть компания OCZ и предоставляет пятилетнюю гарантию на SSD серии Vector и Vertex, вы в состоянии увеличить срок службы самостоятельно. И без сторонних утилит – только с помощью «Терминала» и других стандартных инструментов OS X.
Поскольку SSD имеют ограниченное количество циклов перезаписи, немаловажно беречь накопитель от дополнительного износа, которому способствуют кэши, режим гибернации, файл подкачки и так далее. Эти и многие другие процессы можно оптимизировать в системе и заметно отсрочить время, когда число циклов перезаписи приблизится к максимальному.
Отключение гибернации
Важный шаг к оптимизации OS X для работы с SSD. При включенной гибернации данные оперативной памяти оказываются на накопителе каждый раз при отключении компьютера. Удобно, если у ноутбука внезапно сядет аккумулятор, но также сильно изнашивает диск, особенно SSD. Так что после отключения гибернации вы приобретете заметно больше, чем потеряете.
Открываем «Терминал» и вводим команду для проверки режима гибернации:
sudo pmset -g | grep hibernatemode > ~/Desktop/current_mode.txt

Затем обязательно вводим пароль от своей учетной записи.
После этого на рабочем столе появится файл с информацией, которая впоследствии поможет вам вновь активировать гибернацию, если появится такое желание.
Затем вводим команду непосредственно для отключения гибернации:
sudo pmset -a hibernatemode 0
Для её повторной активации нужно будет сменить значение параметра hibernatemode с 0 на то число, которое указано в файле current_mode.txt (в нашем случае это 3).

Осталось только удалить остаточный файл при помощи команды, размещенной ниже, а затем перезагрузить Mac.
sudo rm /private/var/vm/sleepimage
Перенос файлов на HDD
Захламлять SSD мусором и мелкими неважными файлами не рекомендуется, поэтому все лишнее с накопителя лучше удалить. Лучше всего, если на вашем Mac установлен и SSD, и HDD: тогда на последнем можно разместить папку пользователя, разгрузив тем самым твердотельный накопитель.
Сделать это можно в системных настройках. Открываем раздел «Пользователи и группы», снимаем защиту паролем администратора и правым кликом по имени пользователя выбираем «Дополнительные параметры».
В графе «Папка пользователя» изменяем путь до неё и отправляем на HDD.
Отключение noatime
Полезная функция для сокращения количества циклов перезаписи. Она записывает последний доступ к файлу на диске, и ничего критичного не произойдет, если её отключить. А вот SSD, наоборот, скажет вам спасибо.
В папке /Library/LaunchDaemons/ создаём файл com.hdd.noatime.plist со следующим содержимым:
Label com.hdd.noatime ProgramArguments mount -vuwo noatime / RunAtLoad

Снимаем защиту с файла и даем права на него с помощью этой команды:
sudo chown root:wheel /Library/LaunchDaemons/com.hdd.noatime.plist
Перезагружаем Mac и проверяем работоспособность:
mount | grep noatime
Но и это лишь малая часть способов оптимизации OS X для SSD.
Включение TRIM

С релизом OS X El Capitan стали доступны многие утилиты, в том числе и бесплатные, которые прекрасно справляются с активацией TRIM, отключая электронную подпись расширений ядра (.kext). О некоторых из них мы не так давно говорили, и самая простая в освоении – Chameleon SSD Optimizer. Просто скачиваете программу, запускаете её и наделяете правами администратора, после чего активируете TRIM и перезагружаете компьютер. Пожалуй, главное преимущество этой утилиты – она бесплатная.
Диски, не спать!
Поскольку SSD и так отличаются низким энергопотреблением, лишний раз переводить их в режим сна не стоит. Даже при питании ноутбука от аккумулятора включать эту функцию нецелесообразно, поэтому лучше её отключить в разделе «Экономия энергии» системных настроек, причем сделать это и для аккумулятора, и для сетевого адаптера.

И тем более не нужно, чтобы Mac выполнял резервное копирование, находясь в режиме сна – он отлично справляется с этим в режиме активной работы. Выключите Power Nap при питании от аккумулятора и сетевого адаптера.
Отключаем кэширование
Для повышения срока службы твердотельного накопителя многие советуют отключить дефолтный в OS X поиск Spotlight, поскольку он индексирует содержимое диска и способствует износу SSD. Современные накопители, как правило, устойчивы к этому и адаптированы под использование поискового инструмента, тем более многие владельцы Mac не представляют свой рабочий процесс без Spotlight. А вот кэширование в браузере, будь то Safari или Chrome, отключить стоит. В Safari меню отключения расположено во вкладке «Разработка».

Если же вы уверены, что Spotlight сильно увеличивает нагрузку на SSD, а оставаться без поиска не хочется: зайдите в системные настройки – Spotlight и настройте поиск по отдельным категориям, исключив все лишнее.
Держите диск в чистоте
Как ни странно, лучший способ продлить срок жизни SSD – не захламлять его. Выполняйте резервное копирование Time Machine раз в день и очищайте компьютер от лишних файлов, особенно тех, которые Mac относит к категории «Другое».
Где они могут храниться? Как вариант – резервные копии, созданные программой iTunes. Держите бэкапы в облаке, а с компьютера такое лучше удалить. Сюда же относятся кэши и временные файлы, но их намного удобнее чистить сторонними утилитами вроде CleanMyMac, DaisyDisk, MacClean и так далее.
Отключение Sudden Motion Sensor
Забудьте про SMS – он нужен был для HDD и блокировки головки диска, но у SSD крутящихся элементов нет, за счет чего они заметно компактнее. Это ненужная служба, которая никак не влияет на износ твердотельного накопителя, однако при этом лежит мертвым грузом. Проще всего отключить её при помощи «Терминала»:
sudo pmset -a sms 0
Проверить отключение Sudden Motion Sensor можно другой командой:
-sudo pmset -g

Включить SMS обратно можно, изменив значение параметра sms с 0 на 1.
Очистка загрузочного кэша
Немаловажно, если вы заметили, что Mac с твердотельным накопителем на борту стал перезагружаться более 15 секунд. Здесь на помощь вновь приходит «Терминал» и одна-единственная команда (потребуется ввести пароль администратора):
sudo kextcache -system-caches
Отключение FileVault
До релиза OS X Mavericks многие пользователи Mac с SSD жаловались на то, что с включенным шифрованием диск работал заметно медленнее. Затем, когда Apple перевела все свои компьютеры на твердотельные диски, функция была оптимизирована и на работоспособности системы никак не отражается. Тем не менее для накопителя это лишние «нервы», поэтому если вы не агент 007 или служащий госкорпорации, можете вполне обойтись стандартным паролем.
Отключение локальной Time Machine

Если у вас нет дополнительного диска для резервных копий Time Machine, система создает бэкап прямо на SSD. Это не столько влияет на износ самого накопителя, сколько занимает на нем лишнее место. Чтобы отключить создание локальных резервных копий, достаточно ввести в «Терминал» одну команду:
sudo tmutil disable local
Нужно ли это?
Вообще, многие согласятся, что «смертность» SSD от износа несколько преувеличена – современные накопители (в том числе от OCZ) прослужат вам долго даже при соблюдении элементарных основ, но многие предпочитают лишний раз перестраховываться и делают это не зря. Если же с диском возникнут какие-либо проблемы, их можно быстро выявить с утилитой SSD Guru и найти решение.
- Блог компании OCZ Storage Solutions
- Компьютерное железо
- Накопители
- Лайфхаки для гиков
Быстрый разряд
Многие пользователи последних версий macOS могли замечать, что оставленный на ночь MacBook в режиме сна потребляет много энергии: закрывали при заряде 100%, а на утро оставалось 60-70%.
Эта проблема вызвана тем, что в macOS начиная с версии 10.14 изменилась конфигурация питания: были добавлены два системных таймера которые отвечают за переход в режим гибернации при высоком и низком зарядах аккумулятора MacBook.
По какой-то причине Apple решили, что при высоком заряде аккумулятора компьютеру следует выждать 86400 секунд (24 часа), перед тем как перейти в режим гибернации. В итоге получается, что всю ночь компьютер фактически работает при выключенном дисплее: работает кулер, память, диск. Ввиду специфики новой схемы питания в системах с 10.14 и выше, данные действия не нужно проводить на более ранних системах: 10.13 и ниже, так как управления питанием там реализовано иначе и данная проблема не наблюдается.
Для исправления данной проблемы следует
1- отключить шнур питания ноутбука.
2- открыть приложение Терминал и ввести туда
pmset -g
Отобразится текущая конфигурация электропитания:

Опытным путём были получены оптимальные значения: 30 минут до гибернации при низком заряде аккумулятора и 1 час при высоком.
Для установки данных параметров вводим
sudo pmset -b standbydelaylow 1800
sudo pmset -b standbydelayhigh 3600
после ввода данных команд компьютер запросит пароль от текущего пользователя.
После этих манипуляций можем вновь ввести «pmset -g» и получим следующий результат:

Теперь ваш MacBook при работе от аккумулятора не будет сильно разряжать аккумулятор в режиме сна.
Если вы что-то сделали не так, не волнуйтесь, сбросить данные настройки очень просто, даже без использования терминала. Для этого нужно перейти в системные настройки, в пульт Экономия энергии и нажать на кнопку снизу: «Настройки по умолчанию».
За написание статьи, спасибо @ToporovS