| Summary: | Некорректная работа usbguard-notifier после переключения локали на английскую | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Product: | Branch p10 | Reporter: | Tatyana Gagina <tatyana> | ||||||||
| Component: | usbguard-notifier | Assignee: | sirius <sirius> | ||||||||
| Status: | CLOSED NOTABUG | QA Contact: | qa-p10 <qa-p10> | ||||||||
| Severity: | normal | ||||||||||
| Priority: | P5 | CC: | fomchenkovda, sirius | ||||||||
| Version: | не указана | ||||||||||
| Hardware: | x86_64 | ||||||||||
| OS: | Linux | ||||||||||
| Attachments: |
|
||||||||||
Дополнительное исследование: - на KDE не переключается локаль на английскую; - на MATE и XFCE - два уведомления на русском и на английском. См. kde/xfce (воспроизведение на mate - скриншот "два уведомления"). Стенды p10: Education KDE/XFCE x86-64 Workstation K x86-64 Шаг №2 для: KDE: Меню приложений -> Параметры системы -> Запуск и завершение -> Автозапуск приложений Нажать кнопку "Добавить", в списке найти или выбрать usbguard-notifier, нажать "ОК" Перезагрузить систему ____________________ XFCE: Меню приложений -> Настройки -> Диспетчер настроек -> Сеансы и запуск -> Автозапуск приложений Нажать кнопку "Добавить", ввести следующие параметры: Имя: usbguard-notifier Описание: usbguard-notifier Команда: /usr/bin/usbguard-notifier Запуск: при входе в систему Нажать "Ок" Перезагрузить систему Created attachment 16101 [details]
xfce
Created attachment 16102 [details]
kde
Sisyphus: Workstation K x86-64 Не уверен, что проблема в модуле, т.к. если установить вручную переменные LANG*=en_US.UTF-8 (например, в .bashrc) перевод текста уведомлений работает корректно. Из-за того, что не меняется локаль системы при изменении файла "/etc/sysconfig/i18n" (а также "/etc/locale.conf"), сложно сделать вывод, что проблему нужно искать в модуле. P10: Education KDE/XFCE x86-64 Не удалось воспроизвести проблему с двумя уведомлениями. А проблема с только русским переводом решается путём изменения файла "/etc/locale.conf" (достаточно только его). Не искал причину, почему не работает вариант изменения локали путём изменения "/etc/sysconfig/i18n". Снова же не уверен, что проблема в usbguard-notifier. Могу предположить, что проблема с двумя уведомлениями возникает, если проделать шаги описанные здесь: https://bugzilla.altlinux.org/show_bug.cgi?id=50350#c1. Предполагаю, что в системе два процесса usbguard-notifier. Один запускается systemd, другой - из автозапуска. Прикладываю информацию по запущенным процессам и доп.настройкам (на P10): На Education KDE/XFCE - одно уведомление на русском. Если перейти снова в файл /etc/sysconfig/i18n, то можно убедиться, что файл изменился, локаль стоит только для русского языка. Поэтому и одно уведомление только на русском (возможно, автоматически сбросились настройки). Если снова прописать для английского, то ошибка снова воспроизводится, 1 уведомление на русском. Решается проблема, если в файле /etc/locale.conf прописать LANG=en_US.UTF-8 и перезагрузиться. Запущено процессов на момент воспроизведения: # ps -ef | grep usbguard-notifier test 3062 3049 0 13:37 ? 00:00:00 /usr/bin/usbguard-notifier test 3414 3049 0 13:37 ? 00:00:00 /usr/bin/usbguard-notifier root 3539 3525 0 13:39 ? 00:00:00 /usr/bin/usbguard-notifier root 3731 3541 0 13:42 pts/0 00:00:00 grep --color=auto usbguard-notifier _____ На Workstation x86-64 - 2 уведомления на русском и на английском. Запущено процессов на момент воспроизведения: # ps -ef | grep usbguard-notifier test 2790 2780 1 13:56 ? 00:00:00 /usr/bin/usbguard-notifier root 3185 3176 0 13:56 ? 00:00:00 /usr/bin/usbguard-notifier root 3231 3187 0 13:56 pts/0 00:00:00 grep --color=auto usbguard-notifier Аналогично, если в файле /etc/locale.conf прописать LANG=en_US.UTF-8 и перезагрузиться, то ошибки не будет, появится уведомление на английском как и положено. _____ На Workstation K x86-64 Запущено процессов на момент воспроизведения: # ps -ef | grep usbguard-notifier root 3349 3331 0 14:03 ? 00:00:00 /usr/bin/usbguard-notifier test 3485 3476 0 14:03 ? 00:00:00 /usr/bin/usbguard-notifier test 3817 3476 0 14:03 ? 00:00:00 /usr/bin/usbguard-notifier root 3941 3356 0 14:04 pts/0 00:00:00 grep --color=auto usbguard-notifier Аналогично, если в файле /etc/locale.conf прописать LANG=en_US.UTF-8 и перезагрузиться, то ошибки не будет, появится уведомление на английском как и положено. Итог: 1. Добавление в автозапуск не нужно (согласно https://bugzilla.altlinux.org/show_bug.cgi?id=50350#c0 не выполнять только шаг №2); 2. В файле /etc/locale.conf достаточно прописать LANG=en_US.UTF-8 (на шаге №3). |
Created attachment 16099 [details] два уведомления Стенд P10: ALT Workstation x86-64 Версия: usbguard-notifier-2.1-alt1 Шаги: 1) Выполнить: # apt-get install usbguard usbguard-notifier Включить usbguard и usbguard-dbus: # systemctl enable usbguard # systemctl enable usbguard-dbus # systemctl start usbguard # systemctl start usbguard-dbus Сгенерировать политики для usbguard, чтобы не блокировались встроенные устройства: # usbguard generate-policy > /etc/usbguard/rules.conf 2) Меню приложений -> Центр управления -> Запускаемые приложения -> Персональные -> Нажать кнопку "Добавить", ввести следующие параметры: Название: usbguard-notifier Команда: /usr/bin/usbguard-notifier Нажать "Добавить" Перезагрузиться: # reboot 3) Изменить файл /etc/sysconfig/i18n исправив русскую локаль на английскую: LANG=en_US.UTF-8 SUPPORTED=en_US.UTF-8 Сохранить файл и перезагрузиться: # reboot 4) Настроить правила для сценария reject, добавив в /etc/usbguard/rules.conf правила: reject with-interface all-of { 08:*:* } reject with-interface all-of { 03:*:* } reject with-interface all-of { 06:*:* } reject with-interface all-of { 0e:*:* } reject with-interface all-of { ff:*:* } reject with-interface all-of { e0:*:* } reject with-interface all-of { 0b:*:* } reject with-interface all-of { 07:*:* } Сохранить файл. Перезагрузить usbguard для применения изменений в правилах: # systemctl restart usbguard # systemctl restart usbguard-dbus 5) Подключить по USB любое устройство. Результат: появляется 2 уведомления на русском и на английском (см. "два уведомления"). Ожидаемый результат: появляется уведомление только на английском. Проверялось на Sisyphus, ошибка не воспроизводится. Версия: usbguard-notifier-2.1-alt1