Вопрос или проблема
usbguard-notifier больше не отображает всплывающее уведомление при подключении USB-устройства. Как узнать, почему? Debian 12 с KDE и Wayland. Уведомления отображались до недавнего времени. Если это должно работать с Wayland, возможно, есть какие-то журналы, связанные с уведомлениями, которые нужно проверить.
При выполнении usbguard-notifer
в консоли и подключении USB-устройства вывод не отображается. У меня нет отключенного или явно заблокированного идентификатора устройства, поэтому должно показываться уведомление с запросом разрешения или блокировки устройства, как это было раньше при подключении USB-устройства.
sudo journalctl -b | grep usbguard-notifier
показывает следующий вывод за последние часы, но не имеет вывода для последних попыток, когда я вставил USB-устройство еще несколько раз для тестирования:
usbguard-notifier[25776]: Соединение установлено
usbguard-notifier[25776]: завершение вызвано после выбрасывания экземпляра 'std::runtime_error'
usbguard-notifier[25776]: что(): Не удалось показать уведомление
#7 0x000055e4e6caa8ba n/a (usbguard-notifier + 0x48ba)
#8 0x000055e4e6cac8db n/a (usbguard-notifier + 0x68db)
#4 0x000055e4e6cab569 n/a (usbguard-notifier + 0x5569)
#7 0x000055e4e6cab661 n/a (usbguard-notifier + 0x5661)
drkonqi-coredump-processor[26202]: "/usr/bin/usbguard-notifier" 25776 "/var/lib/systemd/coredump/core.usbguard-notifi.1000.longid1.25776.longid.zst"
sudo journalctl -b | grep usbguard
показывает (заменены имя usb устройства
, серийный id
и долгий hash
):
usbguard-daemon[1120]: uid=0 pid=1038 result="SUCCESS" device.rule="блокировать id 042a:6257 serial "серийный id" name "имя usb устройства" hash "долгий hash" parent-hash "долгий hash2" via-port "1-3" with-interface 08:06:50 with-connect-type "горячая замена"" device.system_name="/devices/pci0000:00/0000:00:14.0/usb1/1-3" type="Устройство.Удалить"
usbguard-daemon[1120]: uid=0 pid=1038 result="SUCCESS" device.rule="блокировать id 042a:6257 serial "серийный id" name "имя usb устройства" hash "долгий hash" parent-hash "долгий hash2" via-port "1-3" with-interface 08:06:50 with-connect-type "горячая замена"" device.system_name="/devices/pci0000:00/0000:00:14.0/usb1/1-3" type="Устройство.Вставить"
usbguard-daemon[1120]: uid=0 pid=1038 result="SUCCESS" device.system_name="/devices/pci0000:00/0000:00:14.0/usb1/1-3" target.new='блокировать' device.rule="блокировать id 042a:6257 serial "серийный id" name "имя usb устройства" hash "долгий hash" parent-hash "долгий hash2" via-port "1-3" with-interface 08:06:50 with-connect-type "горячая замена"" target.old='блокировать' type="Политика.Устройство.Обновить"
Как узнать, почему?
Как и любой пользовательский сервис systemd, его можно мониторить с помощью systemctl status --user
, а журналы будут отображаться в journalctl --user
. Если вы хотите фильтровать сообщения только за этот b
oot, используйте journalctl -b --user -u usbguard
.
Он должен работать с Wayland. На самом деле, он не должен вообще волноваться об этом. Он вовсе не взаимодействует с системой отображения; он использует libnotify
для отправки уведомлений через dbus компоненту, который отображает уведомления.
Ответ или решение
Почему usbguard-notifier больше не отображает уведомления?
Введение
Если ваше приложение usbguard-notifier больше не выводит уведомления при подключении USB-устройства, это может быть связано с множеством факторов, включая настройки системы, конфликты программного обеспечения или ошибки самого приложения. В данной статье мы постараемся разобраться в возможных причинах данной проблемы и предоставим рекомендации по устранению неполадок.
Проблемы с уведомлениями
Вы уже отметили, что уведомления раньше появлялись при подключении USB-устройства, но в последнее время перестали. Учитывая, что вы используете Debian 12 с KDE на Wayland, это предоставляет особые условия для работы с уведомлениями:
-
Работа с Wayland: Существует предположение, что usbguard-notifier может иметь проблемы совместимости с графической средой Wayland. Однако, как вы упомянули, приложение должно работать с этой системой, так как оно использует libnotify для отправки уведомлений через D-Bus.
-
Отсутствие вывода в консоли: Вы указали, что команда
usbguard-notifier
не показывает выходных данных, когда вы подключаете USB-устройство. Это может означать, что приложение не запускается или не получает сигналы о подключении устройств должным образом. -
Журнал ошибок: В выводах
journalctl -b
, вы отметили, что приложение выдает ошибки. Сообщение "terminate called after throwing an instance of ‘std::runtime_error’" и "Failed to show notification" указывает на то, что приложение, вероятно, сталкивается с непредвиденной ошибкой при попытке отобразить уведомление. В данном случае, core dump указывает на критическую ошибку, связующуюся с библиотекой уведомлений.
Рекомендации по устранению неполадок
-
Проверка статуса usbguard: Используйте команду
systemctl status --user usbguard
для проверки статуса сервиса. Убедитесь, что он активно запущен и не содержит ошибок. Также проверьте логи с помощьюjournalctl --user -u usbguard
. -
Проверка D-Bus: Убедитесь, что служба D-Bus работает корректно. Попробуйте выполнить
dbus-send --print-reply --dest=org.freedesktop.Notifications /org/freedesktop/Notifications org.freedesktop.Notifications.GetCapabilities
для проверки доступных возможностей для уведомлений. -
Проверка прав доступа: Убедитесь, что ваш пользователь имеет необходимые права для отображения уведомлений. Если вы используете систему, требующую аутентификации, это может быть причиной проблемы.
-
Логи usbguard: Команда
sudo journalctl -b | grep usbguard
показывает, что usbguard даёт сигналы о блокировке устройств. Проверьте, существуют ли правила, блокирующие подключаемое устройство. Если оно заблокировано в policy, это может объяснить отсутствие уведомлений. Попробуйте временно отключить usbguard, чтобы проверить, будет ли проблема сохраняться. -
Повтора доступа к системе: Иногда необходимо перезагрузить систему или выйти и зайти в сессию, чтобы обновить механизмы уведомлений, особенно если недавно установлены обновления программного обеспечения.
-
Изучение документации и форумов поддержки: Найдите информацию на официальном репозитории usbguard-notifier или на форумах поддержки для получения последних новостей о возможных проблемах с совместимостью или ошибках.
Заключение
Отсутствие уведомлений от usbguard-notifier может быть связано с ошибками в приложении, настройками системы, или режимом работы Wayland. Следуя вышеизложенным рекомендациям, вы сможете диагностировать и устранить проблему. Если ни один из предложенных шагов не поможет, рекомендуется обратиться к разработчикам приложения или участникам сообщества за дополнительной поддержкой.