Bug 40963

Summary: Ошибки из /usr/lib/rpm/systemd-user.filetrigger
Product: Sisyphus Reporter: Ivan A. Melnikov <iv>
Component: systemdAssignee: Alexey Shabalin <shaba>
Status: NEW --- QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: arseny, shaba
Version: unstable   
Hardware: x86_64   
OS: Linux   

Description Ivan A. Melnikov 2021-09-20 12:03:26 MSK
Актуальный Сизиф. В последнее время при некоторых обновлениях получаю от файлтриггеров такие сообщения об ошибках:

Failed to connect to bus: $DBUS_SESSION_BUS_ADDRESS and $XDG_RUNTIME_DIR not defined (consider using --machine=<user>@.host --user to connect to bus of other user)
Failed to connect to bus: $DBUS_SESSION_BUS_ADDRESS and $XDG_RUNTIME_DIR not defined (consider using --machine=<user>@.host --user to connect to bus of other user)

Оказалось, это /usr/lib/rpm/systemd-user.filetrigger. При этом он не падает (его exit code 0), но не знаю, делает ли он то, что должен.
Comment 1 Alexey Shabalin 2021-11-23 23:42:25 MSK
Предположу, что пытается рестартовать (или перечитать) не основной systemd, а пользовательский (--user).
Есть ли у пользователя в этой сессии эти переменные окружения?
Comment 2 Ivan A. Melnikov 2021-11-24 13:26:55 MSK
(In reply to Alexey Shabalin from comment #1)
> Предположу, что пытается рестартовать (или перечитать) не основной systemd,
> а пользовательский (--user).

Ой, а как это должно работать, если у меня несколько сеансов от разных пользователей?

> Есть ли у пользователя в этой сессии эти переменные окружения?

Для обновления я чаще всего запускаю sudo apt-shell и там уже даю какие-то команды. Под sudo, естественно, ничего такого нет:

$ set | egrep '^XDG_RUN|^DBUS'
DBUS_SESSION_BUS_ADDRESS=unix:path=/run/user/500/bus
XDG_RUNTIME_DIR=/run/user/500
$ sudo sh -c "set | egrep '^XDG_RUN|^DBUS'" | wc -l
0

У рута в login shell, кстати, тоже:

$ sudo su -
# set | egrep '^XDG_RUN|^DBUS' | wc -l
0