Portál AbcLinuxu, 10. května 2025 08:16

Dotaz: libnotify a root

Jakub Lucký avatar 30.8.2012 19:16 Jakub Lucký | skóre: 40 | Praha
libnotify a root
Přečteno: 129×
Odpovědět | Admin
Programuju v Pythonu jednoduchého démona na sledování teplot, upozorňování a spouštění větráku a chtěl bych o situaci informovat uživatele pomocí libnotify...

Píšu to v Py3k a potíž nastává ve chvíli, kdy celou legraci spustím pod rootem (kvůli nastavování větráku)

Kód:
import notify2
notify2.init("systempd")
notify.Notification("Text","more text")
vyvolá při init() následující:

dbus.exceptions.DBusException: org.freedesktop.DBus.Error.NoReply: 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.

Pod uživatelem to běží dobře a v průběhu googlení jsem zjistil, že je to skutečně rootem, který to chce posílat sobě a ne současnému uživateli. Ale nejsem si jist, ja s tím naložit správně...
If you understand, things are just as they are; if you do not understand, things are just as they are.
Nástroje: Začni sledovat (1) ?Zašle upozornění na váš email při vložení nového komentáře.

Odpovědi

1.9.2012 14:49 smazáno | skóre: 18 | blog: smazáno
Rozbalit Rozbalit vše Re: libnotify a root
Odpovědět | | Sbalit | Link | Blokovat | Admin
No, tohle je doopravdy "na hrane" a pouzivaji se ruzna reseni - tady jedno nejlepsi reseni neni.

Muzes ten script jednodusse modifikovat aby bezel cely pod uzivatelem krome te casti co nastavuje vetrak (ale tady me nenapada jak poresit bezpectnost co se tyce uchovani root hesla)? Nebo by si mohl dat ty binarce co nastavuje vetrak suid bit a omezat prava jen na sebe a roota.

Nebo jestli ti nevadi to spoustet pod rootem tak muzes zkusit pred volanim libnotify pouzit setuid.

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.