Systemd: Hotplugging für Multiseats unter X.org
Lennart Poettering (Bild: Golem.de)

Systemd

Hotplugging für Multiseats unter X.org

Mit einem Patch für X.org soll es unter Linux-Distributionen mit der Dienstverwaltung Systemd möglich sein, Mehrfachsitzungen samt Hotplugging zu verwenden. Für das Hotplugging ist Udev zuständig.

Anzeige

Mit Systemd 3.0 erhält X.org Unterstützung für Mehrplatzrechner samt Hotplugging mit Udev. Lennart Poettering, Initiator von Systemd, hat den Patch für X.org und Udev in einer Mailingliste vorgestellt. Jede Sitzung kann auf Geräte per Udev zugreifen. Das Hotplugging-Framework kümmert sich um die Verwaltung von Geräten, indem es die Geräte mit ID-Tags versieht. Systemd definiert die gesamte Hardware, die einer bestimmten Sitzung zugeordnet ist, als sogenanntes Seat. In einem Seat wird zunächst mindestens eine Grafikkarte definiert.

In der Udev-Datenbank können weitere Geräte für die Verwendung in Seats bestimmt werden. Das gilt dann auch für etwaige Subdevices, etwa alle an einem USB-Hub angeschlossenen Geräte. Um die Zuweisung von Geräten beim Start zu beschleunigen, werden die mit einem bereits vordefinierten Seat-Tag erst dann initialisiert, wenn eine entsprechende Sitzung gestartet wird. Mit der Udev-Eigenschaft Autoseat hingegen können bereits beim Systemstart Seats zusammengestellt werden, die explizit in den Udev-Definitionen unter einem bestimmten Namen festgelegt sind.

Alle nicht konfigurierten Geräte werden automatisch Seat0 zugeordnet, den Systemd als Standard-Seat definiert. Dort enumerierte Geräte werden beim Systemstart immer initialisiert. Seat0 ist auf jedem System vorhanden, auch wenn es nicht als Mehrplatzrechner eingesetzt werden soll.

Standard ist Seat0

Displayserver müssen künftig über Seat-IDs die Grafikkarte und die Eingabegeräte initialisieren. Displaymanager, etwa GDM, hingegen müssen Geräte für Seats zunächst über die D-Bus-Schnittstelle des Anmeldedienstes Logind enumerieren und zwischenzeitlich neu erstellte Seats einbinden. Für jeden Seat muss der Displaymanager dann einen Xserver initialisieren und ein Loginfenster präsentieren. Bootsplash-Software wie Plymouth muss initialisierte Hardware dann freigeben, sobald ein Xserver gestartet wird. Seat-Informationen werden von Bootsplash-Software nicht ausgewertet.

Softwareentwickler, die direkt auf Kernel-Treiber zugreifen wollen, sollten Seat-Informationen ignorieren und Benutzern sämtliche Hardwaregeräte zur Verfügung stellen. Die Software sollte Device-Nodes regelmäßig über Inotify auslesen, um Informationen über deaktivierte oder neu aktivierte Sitzungen und dadurch veränderte Verbindungen zur Hardware zu überwachen. Die Anwendung muss mit der entsprechenden User-ID laufen.

Eine Benutzerschnittstelle für die Konfiguration von Seats und die Belegung spezifischer Hardware sollte sämtliche Hardware mit der Seat-ID unter Udev identifizieren und die entsprechende ID auslesen. Hardware kann per D-Bus-Aufruf Attachdevice über den Logind-Dienst erneut zugewiesen werden. Der Seatname wird von Logind aus Sysfs ausgelesen. Alternativ kann ein neuer Seat erstellt werden, in dem die Grafikkarte unter einem bisher nicht verwendeten Seat-Namen erneut initialisiert wird.

Mit dem neuen Code will Poettering nicht nur Systemd für Mehrplatzrechner erweitern. Gegenwärtig gibt es einige Probleme bei der Verwendung von Hotplugging in Mehrplatzumgebungen unter X.org. Normalerweise horchen alle aktiven Xserver an allen Peripherie-Geräten. Nur mit Inputdevice und abgeschaltetem Hotplugging funktioniert Multiseat auch korrekt. Werden dann Geräte abgezogen, können sie in einer Sitzung nicht nochmal initialisiert werden. Die Sitzung muss danach neu gestartet werden. Bei den Fluktuationen an USB-Anschlüssen, etwa wenn dort ein neues Gerät angeschlossen wird, können Mäuse oder Tastaturen die Verbindung zu der laufenden Sitzung verlieren.

Unter Freedesktop.org wird die Verwendung von Systemd, Udev und Seats beschrieben. Den Code für die Patches hat Poettering in einer E-Mail veröffentlicht.


Hello_World 26. Jul 2011

Abgesehen davon, dass das nicht stimmt (siehe z. B. http://lwn.net/Articles/429912/, die...

Kommentieren



Anzeige

  1. Sachbearbeiter (m/w) IT-Revision
    Sparkasse Mittelthüringen, Mittelthüringen
  2. IT-Consultant (m/w) Inhouse System Engineering
    Mediengruppe RTL Deutschland GmbH, Köln
  3. Datenbank-Entwickler MS SQL Server / Oracle (m/w) Automatisierungssysteme für die Automobilentwicklung
    KRATZER AUTOMATION AG, Unterschleißheim (bei München)
  4. SAP Application Manager (m/w) SD, CS, GTS
    über p3b, Winterthur (Schweiz)

 

Detailsuche


Folgen Sie uns
       


  1. Tiger and Dragon II

    Netflix bietet ersten Kinofilm gleichzeitig zur Premiere

  2. Darkfield VR

    Kickstart für Dogfights mit Oculus Rift

  3. Neue Red-Tarife

    Vodafone bucht Datenvolumen automatisch nach

  4. Freies Betriebssystem

    FreeBSD-Kernel könnte in Debian Jessie entfallen

  5. Kontonummerncheck

    Netflix akzeptiert Kunden einiger Sparkassen nicht

  6. Mittelerde Mordors Schatten

    6 GByte VRAM für scharfe Ultra-Texturen notwendig

  7. Ressl

    LibreSSL-Projekt erstellt nutzerfreundliches SSL-API

  8. Ausgründung

    Ebay und Paypal trennen sich

  9. OS X

    Apple liefert Patch für Shellshock

  10. Elektromagnetik

    Der Dietrich für den Dieb von heute



Haben wir etwas übersehen?

E-Mail an news@golem.de



Deutsche Telekom: 300.000 von Umstellung auf VoIP oder Kündigung betroffen
Deutsche Telekom
300.000 von Umstellung auf VoIP oder Kündigung betroffen
  1. Deutsche Telekom Umstellung auf VoIP oder Kündigung
  2. Entlassungen Telekom verkleinert Online-Innovationsabteilung stark
  3. Mobile Encryption App angeschaut Telekom verschlüsselt Telefonie

Nicholas Carr: Automatisierung macht uns das Leben schwer
Nicholas Carr
Automatisierung macht uns das Leben schwer
  1. HP Proliant m400 Moonshot-Microserver mit 64-Bit-ARM-Prozessoren
  2. Entwicklung vorerst eingestellt Notebooks mit Touch-Displays sind nicht gefragt
  3. Computerchip IBM stellt künstliches Gehirn vor

Bash-Lücke: Die Hintergründe zu Shellshock
Bash-Lücke
Die Hintergründe zu Shellshock
  1. Shellshock Immer mehr Lücken in Bash
  2. Linux-Shell Bash-Sicherheitslücke ermöglicht Codeausführung auf Servern

    •  / 
    Zum Artikel