Я обновил свою систему с 15.10 (Ubuntu + xfce = XUbuntu) до 16.04, а потом это происходит на 50%, когда я отправляю систему в «Сон через« меню «Пуск»> выключить> спящий режим », что экраны пустые, а аппаратное обеспечение продолжает работать ( Я слышал, что поклонники поворачиваются). Я не могу переключиться на консоль (ctrl + alt + f2) или сделать что-нибудь еще. Я ищу способ проследить эту проблему. Я не нашел ничего в следующих журналах:
/var/log/syslog.1
May 1 01:05:01 lampa CRON[7380]: (root) CMD (command -v debian-sa1 > /dev/null && debian-sa1 1 1)
May 1 01:14:27 lampa NetworkManager[884]: <info> [1462058067.4749] manager: sleep requested (sleeping: no enabled: yes)
May 1 01:14:27 lampa NetworkManager[884]: <info> [1462058067.4749] manager: sleeping...
May 1 01:14:27 lampa whoopsie[796]: [01:14:27] offline
May 1 01:14:27 lampa NetworkManager[884]: <info> [1462058067.4750] manager: NetworkManager state is now ASLEEP
May 1 01:14:27 lampa systemd[1]: Reached target Sleep.
May 1 01:14:27 lampa systemd[1]: Starting Suspend...
May 1 01:14:27 lampa systemd-sleep[7497]: Failed to connect to non-global ctrl_ifname: (nil) error: No such file or directory
May 1 01:14:27 lampa systemd-sleep[7499]: /lib/systemd/system-sleep/wpasupplicant failed with error code 255.
May 1 01:14:27 lampa systemd-sleep[7497]: Suspending system...
/var/log/syslog.1 [ ! d3]
Последняя строка слишком старая, с: Вт 26 апр 19:44:13 CEST 2016: Закончено. Файл 'pm-suspend.log' пуст.
/var/log/kern.log
...
Apr 30 21:26:34 lampa kernel: [ 8420.249061] Key type cifs.idmap registered
May 1 01:14:27 lampa NetworkManager[884]: <info> [1462058067.4749] manager: sleep requested (sleeping: no enabled: yes)
May 1 01:14:27 lampa NetworkManager[884]: <info> [1462058067.4749] manager: sleeping...
May 1 01:14:27 lampa NetworkManager[884]: <info> [1462058067.4750] manager: NetworkManager state is now ASLEEP
May 1 08:01:21 lampa kernel: [ 0.000000] Initializing cgroup subsys cpuset
...
Я искал журнал Xorg, но я не знаю какие лог-линии принадлежат этому моменту времени. Когда я смотрел на него по дате файла (файлы Xorg.0.log и Xorg.0.log.old), эти файлы довольно короткие и без ошибок, они заканчиваются на:
[ 11.084] (II) This device may have been added with another device file.
[ 12.912] (II) RADEON(0): Allocate new frame buffer 2048x768 stride 2048
[ 12.912] (II) RADEON(0): VRAM usage limit set to 931309K
[ 1258.032] (II) AIGLX: Suspending AIGLX clients for VT switch
[ 1259.227] (II) AIGLX: Resuming AIGLX clients after VT switch
и [ ! d9]
[ 10.176] (II) RADEON(0): Allocate new frame buffer 2048x768 stride 2048
[ 10.176] (II) RADEON(0): VRAM usage limit set to 931309K
/var/log/kern.log
Я не могу найти dmesg.0 в своей системе, я вижу только «dmesg» и он пуст.
Где искать дальше?
Изменить: Я обнаружил, что это происходит только после запуска «эмулятора вина с Battle.net в игру StarCraft 2». Я пытался убить все те процессы, которые появляются и остаются после игры. Мне интересно, не переключится ли моя графическая карта на какой-то режим, который не может спать.
У меня все еще есть эта проблема, но я проверил множество возможных исправлений. Суть проблемы в том, что приостановленное задание терпит неудачу, зависает.
Я пробовал ловить рыбу через журналы ядра по очереди, но не знаю точно, что это вызывает. Я думал, что проблема связана с видео, но теперь подозревают, что это поддержка сети и / или USB-C.
Когда приостановка завершится неудачей, войдите в систему снова, откройте терминал. Если в выводе ps aux вы видите что-то вроде этого, тогда вы находитесь в той же ситуации.
$ ps aux | grep sus
root 22926 0.0 0.0 8668 840 ? Ss 23:07 0:00 /lib/systemd/systemd-sleep suspend
Эта работа, 22926, может быть убита, что приведет к немедленному приостановке ПК. [!d4 ]
$ sudo kill -9 22926
На этой неделе я нашел довольно хороший способ избежать этого. Создайте файл сценария, подобный этому:
sudo /etc/init.d/network-manager stop
sudo /etc/init.d/networking stop
sudo systemctl suspend
Для меня это уменьшает задержку при приостановке и еще никогда не сработало
Когда вы перезагружаетесь, вам нужно помнить, запускайте сеть вручную.
sudo /etc/init.d/network-manager stop
sudo /etc/init.d/networking stop
sudo /etc/init.d/networking start
sudo /etc/init.d/network-manager start
Это снова говорит о том, что сеть закрывается, просто для удовольствия и перезапускает ее.
Это решение высокого уровня. Я был в сорняках, меняя множество деталей в сценариях приостановки. Ничего не работало так хорошо, как это.
Другой интересный поток, который я нашел на этом, заключался в том, что аппаратные устройства работают неправильно и вызывают ложное пробуждение. Я попробовал это, но ничего не выиграл. Я не думаю, что приостановленная работа все равно будет неудачной, если это будет реальная проблема.
У многих людей такая же проблема, похоже, может быть много возможных причин. Проверьте ловушку через журналы ядра по строкам . Некоторые из моих фаворитов:
16.04 - systemd приостанавливает систему, но после возобновления ядра затем входит в сон, а компьютер для пробуждения не может приостановить или спящий режим (просыпается через 2-5 секунд без взаимодействия с пользователем). Немедленное пробуждение от приостановление, вызванное пробуждением устройств USB 3.0 - Как предотвратить немедленное пробуждение из-за приостановки и / или спящего режима? 14.04 - Ubuntu просыпается после нескольких секунд снаЭто сработало для меня (Xubuntu 16.04):
sudo apt-get remove light-locker
sudo apt-get install xscreensaver
У меня была такая же проблема.
Sep 26 17:26:15 pavel-kjsdfk systemd-sleep[8022]: Failed to connect to non-global ctrl_ifname: (nil) error: No such file or directory
Sep 26 17:26:15 pavel-kjsdfk systemd-sleep[8023]: /lib/systemd/system-sleep/wpasupplicant failed with error code 255.
Итак, я искал любые решения в течение всего дня, и ничто не помогло мне.
Открыть /lib/systemd/system-sleep/wpasupplicant
Удалить /sbin/wpa_cli и resume из файла, чтобы:
#!/bin/sh
set -e
if [ "$2" = "suspend" ] || [ "$2" = "hybrid-sleep" ]; then
case "$1" in
pre) /sbin/wpa_cli suspend ;;
post) /sbin/wpa_cli resume ;;
esac
fi
становится:
#!/bin/sh
set -e
if [ "$2" = "suspend" ] || [ "$2" = "hybrid-sleep" ]; then
case "$1" in
pre) suspend ;;
post) ;;
esac
fi