====== Linux Multiseat Workstation ====== ===== Plan ===== 1 PC mit 4 Konsolen als 4 einzelnen Arbeitsplaetzen ===== Ergebnis ===== laeuft ===== Teile ===== * 1 Miditower, beige, Label: "multiseat" * 4 Videokarten, Matrox * USB-PCI-Karte * 4 USB-Hubs * 4 USB-Maeuse * 4 Keyboards * n PS/2-USB-Adapter * 4 Monitore, 1024x786 (?) * 2-PC-Netzteile fuer die Monitore * 2 Breakoutkabel PC-Stromstecker -> Klinke * Kabelkanal ===== Software-Config ===== * Debian Squeeze * Linux >= 2.6.36 * btrfs ==== udev ==== * Weist Input- und Output-Devices den Seats zu. * Devices in /dev/input/by-seat/seat-$id-* und /dev/fb/by-seat/seat-$id. * Weist Tag für Xorg zu. ==== X-Server ==== * Ein X-Server pro Seat ==== Seat ==== * btrfs-snapshot vom passenden System * PID- und Netzwerk-Namespace * Netzwerk mittels macvlan; jeder Seat hat eine eigene MAC- und IP-Adresse Irgendwas mit Linux-Containern. undocumented :-( ===== Aufbau ===== * Je USB-Port am Rechner einen USB-Hub einstecken * An jeden USB-Hub, ausser für Seat 0, '''ein''' Keyboard und '''eine''' Maus anschliessen, ggf. dafuer einen USB-PS/2-Adpter verwenden * Die Ps/2-Anschluesse am Rechner können für Seat 0 verwendet werden * Die Mengen an Kabeln im Kabelkanal unterbringen ===== Things To Know ===== * die zuordnung maus-keyboard-console findet anhand des usb-controllers statt. * jedes terminal braucht also einen usb-plug am rechner, an dem ein usb-hub abgeschlossen ist, der maus und keyboard aufnimmt. ===== TODO ===== * Doku * Error-Checks im C-Part