Как бороть фриз на ядрах 4.x.y не знаю.
Как справиться с вылетающим окном ошибки после выхода из STR на ноутбуке HP Compaq nx6110.
После пяти чашек кофе и пяти сигарет подряд удалось выяснить:
На ядрах 4.9.x-std-def окно с ошибкой
Получена ошибка при
попытке завершения сеанса
Did not receive a reply. Possible causes include: the
remote application did not send a reply, the message
bus security policy blocked the reply, the reply
timeout expired, or the network connection was
broken.
гарантированно вылазит если:
- вход в STR осуществляется через команду, включая висящую как кнопка на панели
$ time -f %e xfce4-session-logout --suspend
Command exited with non-zero status 1
30.27
- вход в STR осуществляется через опцию
Ждущий режим меню
Системные действия (в трее)
$ ps -eo user,args|grep -i системные|grep -v grep
builder /usr/lib/xfce4/panel/wrapper-1.0 /usr/lib/xfce4/panel/plugins/libactions.so 2 12582945 actions Системные действия Завершение сеанса, блокировка экрана или другие системные действия
user /usr/lib/xfce4/panel/wrapper-1.0 /usr/lib/xfce4/panel/plugins/libactions.so 22 12582947 actions Системные действия Завершение сеанса, блокировка экрана или другие системные действия
(здесь мультисессия через gdm2.20 и опцию
Переключение пользователя меню
Системные действия)
Мню так (имхо конечно):
Вылет окна с ошибкой это альтовый косяк. Команда завершает свою работу после выхода из STR и последующего после него фриза от 15-ти секунд и больше. Появилась надежда, что в Слаке такого не будет, поскольку команда входа в STR в Слаке завершается _до_ входа в STR и долгий фриз на неё влияния не оказывает. Но сам фриз придётся терпеть.
Окно с ошибкой не вылазит если:
- Вход в STR происходит через
Меню Xfce > Выйти > Ждущий режим
- Вход в STR происходит командой вызова окна
Выход из системы$ xfce4-session-logout
с последующим выбором опции Ждущий режим.
- Если используется команда (которая может висеть кнопкой на панели)
$ pkexec /usr/sbin/xfce4-pm-helper --suspend
# sed "" /etc/polkit-1/rules.d/60-xfce4-pm-helper.rules
polkit.addRule(function(action, subject) {
if (action.id == "org.xfce.power.xfce4-pm-helper" && subject.isInGroup("xgrp") )
{
return polkit.Result.YES;
}
});
несмотря на то, что время фриза на выходе из STR около 22-ух секунд.
(см. man pkexec и там же description в обязательном порядке, без исключений)
(рулез и pkexec позволяет непривилегированному пользователю через xfce4-pm-helper уходить в suspend и hibernate; это не предложение использования, это комментарий при дайвинге проблемы; само же использование рулеза для pkexec подлежит вдумчивому обсуждению; но при его отсутствии, для какого-то старого железа, создание кнопки suspend на панели станет невозможным (если учитывать окно с ошибкой что совсем не есть хорошо))
Фриз на выходе из STR это проблема всех ядер 4-той линейки.
Отсюда ноги у проблемы и растут.
Возможно эта проблема проявляться в sysv-lxde не будет.
(Например по причине отсутствия в lxde /usr/lib/xfce4/panel/plugins/libactions.so)
Причина интереса к проблеме и многих раздражений, это целевое назначение дистрибутива:
- Это полнофункциональный минималистичный дистрибутив с классическим init который должен обеспечивать поддержку железа в самом широком диапазоне мощностей. Слов, старое железо, новое железо, для него существовать не должно.