Portál AbcLinuxu, 25. května 2025 21:30

Dotaz: Přístup k DBUS session jiného uživatele

7.5.2020 14:55 Odpadlik
Přístup k DBUS session jiného uživatele
Přečteno: 198×
Odpovědět | Admin

Nevíte náhodou někdo jak se jako root můžu připojit k DBUS soketu sezení jiného uživatele? Je to stroj s CENTOS-7.

Ani nevím kde ten soket pořádně hledat

Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

Josef Kufner avatar 7.5.2020 20:58 Josef Kufner | skóre: 70
Rozbalit Rozbalit vše Re: Přístup k DBUS session jiného uživatele
Odpovědět | | Sbalit | Link | Blokovat | Admin
Musíš nastavit adresu sběrnice (proměnná DBUS_SESSION_BUS_ADDRESS) a pak potřebuješ mít svolení sběrnice, viz ~/.dbus-session.conf.

Druhá možnost je udělat su na toho uživatele a zkopírovat si tu proměnnou, např.: su $user -c "qdbus --bus unix:path=/run/user/$uid/bus"
Hello world ! Segmentation fault (core dumped)
11.5.2020 10:06 Odpadlik
Rozbalit Rozbalit vše Re: Přístup k DBUS session jiného uživatele

Dík za osvětu.

Jen doplním, že na CENTOS-7 se proměnná DBUS_SESSION_BUS_ADDRESS nevyplňuje, ale systém místo toho zapíše adresu do souboru v adresáři ~/.dbus/session-bus. Proměnná ukazuje na abstraktní socket v /tmp

Na novějších systémech (CENTOS-8) je dbus startován pomocí SystemD a je to vždy socket v /var/run/$uid/bus. K tomu aby se tam v obou případech člověk připojil AFAIK stačí jen dvě věci:

  • mít správně nastavenou proměnnou DBUS_SESSION_BUS_ADDRESS
  • mít UID toho uživatele

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.