
В других операционных системах есть способы увидеть, какой процесс или событие вывели их из спящего режима. Я часто оставляю свой ноутбук на несколько дней в спящем режиме, иногда обнаруживая, что он сам себя разбудил и нагревает поверхность, на которой он лежит :)
Есть ли способ узнать, что его разбудило, чтобы предотвратить повторение этого? На Ubuntu 12.04 (элементарная Luna).
решение1
Единственное, что я знаю, что обычно используется для принудительного пробуждения (помимо, как я полагаю, аппаратных прерываний) — это команда rtcwake
. Источник для этого использует ioctl()
вызовы на устройстве часов реального времени (по умолчанию, /dev/rtc0
), что означает, что у него должны быть привилегии (то есть это не может быть что-то, что вы запускаете на своем рабочем столе как обычный пользователь).
Я был бы очень удивлен, узнав, что в Ubuntu есть привилегированная служба, настроенная на что-то подобное (зачем?). Однако я заметил, чтоизредкаспящая система проснулась без видимых причин, когда ее оставили одну. У меня нет кошки, поэтому я предполагаю, что это что-то, вызвавшее вибрацию мыши, или, может быть, какие-то странные колебания напряжения, или какая-то другая случайная причина.
Если это происходит регулярно, это может указывать на ошибку в драйвере ACPI.