Ich habe ein Live-Debian-Squeeze-System auf einem USB-Laufwerk, das ein Skript enthält, mit dem ich ein Image eines anderen Laufwerks verwende. Dieses Skript dient udiskszum Mounten eines Laufwerks nach Label, funktioniert jedoch nicht über eine serielle Konsole. Der Grund dafür ist, dass die der seriellen Konsole zugeordnete Sitzung nicht "aktiv" zu sein scheint. Dies bedeutet, dass udisksFolgendes fehlschlägt:
user@my-live-usb:~$ udisks --mount /dev/disk/by-label/image-data --mount-options ro
Mount failed: Not Authorized
Das Ändern des allow_anySchlüssels /usr/share/polkit-1/actions/org.freedesktop.udisks.policyhilft nicht, daher möchte ich wissen, wie ConsoleKit mitgeteilt wird, dass die serielle Konsole "aktiv" ist. Der Versuch, dies über die DBUS-Schnittstelle zu tun, schlägt fehl:
user@my-live-usb:~$ dbus-send --system --print-reply --dest="org.freedesktop.ConsoleKit" /org/freedesktop/ConsoleKit/Session7 org.freedesktop.ConsoleKit.Session.Activate
Error org.freedesktop.DBus.GLib.UnmappedError.CkSeatError.Code0: Unable to activate session
Session7 ist diejenige, die als / dev / ttyS0 aufgeführt ist.
Wie kann ich ConsoleKit dazu bringen, die serielle Konsole als aktive Sitzung zu erkennen?
(In meinem Fall ist die udisks-Version 1.0.1 + git20100614-3, consolekit ist 0.4.1-4.)
Es ist wahrscheinlich auch erwähnenswert, dass das Debian-Live-System den Live-Benutzer automatisch auf allen 6 Videokonsolen und der seriellen Konsole anmeldet.
ck-launch-session bashund ausführeck-list-sessions, hat die Konsole noch Zeitactive = FALSEfür diese Sitzung.