Multiseat unter SuSE 10 3 Hinweise

Aus Linupedia.org
Version vom 6. Januar 2008, 21:42 Uhr von Haveaniceday (Diskussion | Beiträge) (Hinweise zur Erstellung der xorg.conf)
Wechseln zu: Navigation, Suche

Konfiguration Multiseat

Neben der Konfiguration für den Xserver muss auch noch KDE/Gnome/XDM für einen Multiseat Betrieb vorbereitet werden. Unten findet Ihr auch, wie ich meine Konfiguration manuell erstellt habe.

Windowmanager konfiguration

  1. KDE:
    Entgegen der Dokumentation ging unter KDE3 (SuSE 10.3) die Modfikation von Xservers (siehe XDM) nicht.
    Statt dessen musste ich /opt/kde3/share/config/kdm/kdmrc anpassen.
    1. entferne ,:1 von ReserveServer
    2. Füge ,:1 zu StaticServers hinzu
    3. Füge die passenden Optionen für den zweiten Xserver hinzu.
    Also als Einstellung:
    StaticServers=:0,:1
    ReserveServers=:2,:3
    [X-:1-Core]
    ServerArgsLocal=-layout Layout[seat2] -sharevts
  2. Gnome:
    Fehlt noch.Wenn dass jemand mit Gnome Konfigurationsahnung ergänzen könnte wäre das schön.
  3. XDM:
    Ungetested
    Die Konfiguration des zweiten Platzes sollte über /etc/X11/xdm/Xservers gehen.
    Ergänze dort die Zeile:
    :1 local /usr/bin/X :1 -sharevts -br vt8 -layout Layout[seat2]

Hinweise zur Erstellung der xorg.conf

Die Konfiguration X.org.conf Multiseat unter SuSE 10.3 ist das Ergebnis. Seat1 arbeitet mit einem 1920x1200 und einem 1280x1024 Bildschirm. Beide haben eine getrennte KDE-Session, die aber mit einem Login gestartet wird.

Seat2 sind 2 Bildschirme mit je 1280x1024. Diese Bildschirme werden als eine Session genutzt.

  • Grundlage für alle Versuche unten
    • Der Rechner sollte im Runlevel 3 gestartet werden. ( Keine graphische Oberfläche )
    • Login als root => Sehr vorsichtig sein, was man tut. Man könnte theoretisch alles löschen/kaputt machen.
    • Versuche mit einer bestimmten Konfiguration gehen z.B. für einen X-Server :1 (Karte 1) mit der Layoutsektion "Layout[seat2]" so:
      X :1 -sharevts -br vt8 -layout Layout[seat2]
    • Ohne -layout ... wird die Sektion Layout[all] aus /etc/X11/xorg.conf genutzt.
    • Ein gestarteter X-Server lässt sich mit <strg>+<alt>+<Backspace> beenden.
    • Wenn ein X-Server gestartet ist kommt man mit <strg>+<alt>+<F1-Funktionstaste> z.B. in die erste Terminalsession (F1).
    • Zum X-Server kommt man aus einer Terminalsession mit <alt>+<F7> bzw. <alt>+<F8> zu einem X-Server mit dem Parameter vt8 gestarteten X-Server zurück.
    • Protokolle des X-Servers werden in /var/log/Xorg.<Karte>.log also im Beispiel oben /var/log/Xorg.1.log abgelegt.


  1. Nutze z.B. sax2 um die Graphikkarten zu erkennen.
    sax2 -p
    Chip: 0 is -> NVidia GeForce FX 5200 (0x0322) 00:08:0 0x10de 0x0322 PCI nv
    Chip: 1 is -> NVidia GeForce4 Ti 4200 with AGP8X 01:00:0 0x10de 0x0281 AGP nv
  1. Seat1: (primäre, z.B. AGP Karte )
    Erstelle eine reguläre Konfiguration z.B. hier mit: sax2 -c1
    Sichere die erstellte Datei /etc/X11/xorg.conf als /etc/X11/xorg.conf.seat1
  2. Seat2:
    Erstelle eine reguläre Konfiguration z.B. hier mit: sax2 -c0
    Sichere die erstellte Datei /etc/X11/xorg.conf als /etc/X11/xorg.conf.seat2
  3. Grundkonfiguration
    Nimm die Datei /etc/X11/xorg.conf.seat1 als Kopie für /etc/X11/xorg.conf
  4. Ändere die Identifier/Namen, etc. von folgenden Sektionen in xorg.conf.seat2 damit sich diese von den wahrscheinlich gleichen Namen in xorg.conf.seat1 unterscheiden.
    Section "Modes" Identifier in eindeutige Namen, z.B. Auflösung "Mode1280". Achtung die Namen müssen in der Gesamtdatei eindeutig sein. Man kann aber bei gleichen Bildschirmen auch eine einzige Section "Modes" mit nur einem Namen verwenden.
    Section "Monitor" Identifier in z.B. "SEAT2-rightscreen", "SEAT2-leftscreen". Die UseModes "..." nicht vergessen auf die Werte von oben anzupassen.
    Section "Device" eindeutig für Identifier. Achtung: die Screen "0" oder Screen "1" Werte beziehen sich auf die Karte. Also nicht Screen "2" und Screen "3" verwenden. Bitte auch die BusID "PCI:..." zu der Section "Device".
    Section "Screen" eindeutig für Device, Identifier, Monitor (die o.a. Namen von den Änderungen in der Section "Monitor", "Device" müssen dazu passen).
    Section "ServerLayout" eindeutig für Identifier z.B. "Layout[seat2]". Ergänze hier auch die Option "IsolateDevice" mit der passenden PCI-Adresse und evtl. die Screen 0/1 Namen.
  5. Jetzt sind wir soweit diese Änderungen zu Testen. Mouse und Keyboard kommen später dran.
    Starte den X-Server für die "Seat2" Konfiguration mit X :1 -sharevts -br vt8 -layout Layout[seat2] -config /etc/X11/xorg.conf.seat2
    Schau was an Fehlermeldungen kommt. Das Konfigurieren klappt bestimmt nicht auch anhieb. :) /var/log/Xorg.0.log ist dabei hilfreich. Falls es doch auf Anhieb mit der zweiten Karte klappt: herzlichen Glückwunsch, X-Server wie oben beschrieben mit <strg>+<alt>+<backspace> beenden.
  6. Jetzt sind Tastatur und Maus dran. Steck die zweite Tastatur (USB) und die zweite Maus an, wenn noch nicht geschehen. Die Befehle um die Devices zu finden sind:
    ls -l /dev/input/by-id
    ls -l /dev/input/by-path
    Bei der Section "InputDevice" für die Mouse kann man jetzt die Option "Device" /dev/input/by-path/..." eingeben. Leider geht dieses mit by-patch nicht für das Keyboard. Die Section "InputDevice" für das Keyboard muss mit Option "Device" "/dev/input/event..." auf ein "event" zeigen. Folge also /dev/input/by-id/..keyboard.. und nimm das passende event?, also z.B. im Beispiel event3.
    Passe die "Identifier" Namen für Keyboard und Mouse in xorg.conf.seat2 an. (Section "InputDevice" und in Section "ServerLayout" die Benutzung )
  7. Teste jetzt wie oben ( Starte X-Server :1...) ob z.B. _nur_ die richtige Maus eindeutig den Zeiger im X-Server bewegt. (Achtung, falls später die Mouse oder das Keyboard nicht gehen: Nach einem Boot mit den eingesteckten Komponenten (USB-Keyboard,USB-Mouse) könnten diese geräte einen anderen Namen als beim Anstecken im Laufenden Betrieb erhalten (Speziell das Keyboard, welches über /dev/input/event... läuft.
  8. Änderungen in /etc/X11/xorg.conf ( für "seat1" )
    Passe InputDevice für Keyboard und Mouse mit der Option "Device" "/dev/input..." an, wie oben für xorg.conf.seat2 . Vergiss nicht die Eindeutigen Namen auch in Layout[all] einzutragen.
  9. Wenn das alles geklappt hat sind wir fast fertig! Füge die Konfiguration von xorg.conf.seat2 zu xorg.conf hinzu. (Copy/Paste von/etc/X11/xorg.conf.seat2 )
    Folgende Sectionen musst du übernehmen: (Section "" lass ich unten mal weg, bin schreibfaul).
    InputDevice ( Mouse + Keyboard )
    Monitor
    Modes ( wenn nicht alles einheitlich sein sollte, da alle Bildschirme gleich sind. Siehe oben)
    Screen
    Device
    ServerLayout
  10. Test der Server mit einer Konfig
    Erster X-Server:
    X :0
    korrigiere die Konfiguration in xorg.conf ( Fehlermeldungen sollten im Log /var/log/Xorg.0.log sein ). Bei dem Copy/Paste ist bestimmt was nicht korrekt...