Я не думаю, что упомянутое вами урегулирование имеет какое-либо отношение к этому.
Проверьте /var/log/pm-suspend.log
и посмотрите, дает ли это какую-либо подсказку.
Эти проблемы обычно связаны с тем, что некоторые процессы не позволяют системе приостановить работу.
Делать
dmesg -T|grep Freez -A4
и искать эти записи:
--
[sun mar 3 15:19:48 2013] Freezing user space processes ...
[sun mar 3 15:20:08 2013] Freezing of tasks failed after 20.01 seconds (3 tasks refusing to freeze, wq_busy=0):
[sun mar 3 15:20:08 2013] mount.nfs D e8631aa0 0 5518 5517 0x00800004
[sun mar 3 15:20:08 2013] e8631b10 00000086 f7bc0e00 e8631aa0 c1053cb4 c1809020 c192ee00 c192ee00
--
Проверьте отметки времени, чтобы увидеть, какие из зарегистрированных проблем связаны с вашей попыткой приостановить. В этом случае именно mount.nfs
это вызывает проблемы.
Теперь вставьте сценарий /etc/pm/sleep.d/
, сценарии будут выполняться при приостановке и возобновлении. Имя файла должно начинаться с порядкового номера, 00-49 для пользовательских сценариев (подробнее см. man pm-suspend
).
Сценарий может выглядеть так
#!/bin/sh
(killall -9 mount.nfs; exit 0)
с соответствующими записями для других процессов, которые вызвали проблемы, если таковые имеются.
Скобки и exit 0
есть хитрость: если процесс не найден, killall
выйдет с кодом выхода 1, который отменит весь приостановить. Выше будет работать killall
в под-оболочке, которая завершится с 0.
Если у вас возникли проблемы, /var/log/pm-suspend.log
установите флажок , чтобы записать попытку приостановить и запустить ваш скрипт.