Difference between revisions of "Multiseat"

From A-Eskwiki
Jump to: navigation, search
 
(5 intermediate revisions by 3 users not shown)
Line 1: Line 1:
 
[[category:sysop]]
 
[[category:sysop]]
  
Bij A–Eskwadraat staan de workstation in de gezelligheidskamer ingesteld als dual-seat. Dit houdt in dat er op iedere computer 2 werkplekken beschikbaar zijn.
+
Bij A–Eskwadraat staan de [[workstations]] in de werkkamer ingesteld als '''quad-seat'''. Dit houdt in dat er op iedere workstation vier werkplekken (seats) beschikbaar zijn. Tegenwoordig word het instellen van de quad-seat configuratie gedaan met loginctl. Met loginctl worden udev regels geproduceert welke de muis, toetsenbord, en video kaart aan een seat toewijzen. Een werkende set udev regels is te vinden in de salt configuratie. Verander de instellingen van loginctl dus alleen als het niet anders kan! Lees de handleiding van loginctl voor meer informatie over het toewijzen van devices aan seats.
  
Om deze functionaliteit te bieden hebben de computers een extra videokaart gekregen, waardoor er een tweede X-server kan draaien. Deze wordt dan gekoppeld met, in udev gespecificeerde, input devices. Waarbij alle input devices die op een bepaalde usb-poort worden aangesloten, toegewezen worden aan de secundaire-seat. De overige input devices worden standaard toegewezen aan de primaire-seat.
+
<pre>
 +
loginctl --help
 +
</pre>
  
== Wijzigingen in configuratie ==
+
Een lijst van de momenteel ingelogde gebruikers is te verkrijgen met:
In de volgende bestanden zijn wijzigingen aangebracht voor multiseat:
+
<pre>
* ''/etc/udev/rules.d/99-seats.rules'' (voor het onderscheiden van de input)
+
loginctl
* ''/etc/X11/xorg.conf'' (voor het bepalen welke input en videokaart bij de primaire-seat horen)
+
</pre>
* ''/etc/X11/xorg_secondary.conf'' (voor het bepalen welke input en videokaart bij de secondaire-seat horen)
+
 
* ''/etc/gdm/gdm.conf'' (voor het starten van de login-schermen op zowel :0 als :1)
+
Soms laten gebruikers een werkplek achter en vergeten deze weer te unlocken. Gebruik de volgende toetsencombinatie om de gebruiker uit te loggen. Let wel op dat de gebruiker bestanden kan kwijtraken.
 +
<pre>
 +
ctrl + alt + backspace
 +
</pre>
 +
 
 +
=== Seat Instellen ===
 +
Om een device toe te wijzen aan een seat zijn twee stappen nodig. Op een verse installatie is alle hardware aan seat0 toegewezen. Eerst zoek je de device ID met:
 +
<pre>
 +
loginctl seat-status <seat id>
 +
</pre>
 +
 
 +
Vervolgens wijs je de seat toe aan een seat met:
 +
<pre>
 +
loginctl attach <seat-id> <device ID>
 +
</pre>
 +
 
 +
=== Multiseat met Nvidia drivers ===
 +
Ondanks dat de NVidia drivers Multiseat zou moeten ondersteunen, werkt dit niet geheel. Xorg zal onze configuratie juist detecteren, maar de Nvidia driver zelf zal vervolgens de verkeerde GPU aan de verkeerde seat toewijzen. Als jij een idee hebt om dit op te lossen, dan kun je de volgende configuratie alvast gebruiken.
 +
 
 +
Deze configuratie vertelt Xorg om niet zomaar GPU's aan seats toe te passen. Daarnaast word aangegeven dat deze schermen "bestaan":
 +
<pre>
 +
Section "ServerFlags"
 +
    Option "AutoAddGPU" "off"
 +
EndSection
 +
 
 +
Section "ServerLayout"
 +
    Identifier    "Layout0"
 +
    Screen      0  "Screen0"
 +
    Screen      1  "Screen1"
 +
    Screen      2  "Screen2"
 +
    Screen      3  "Screen3"
 +
EndSection
 +
</pre>
 +
 
 +
Vervolgens is voor iedere seat een soorgelijke sectie nodig. Met een "Screen" word een Monitor aan een Device gehangen. Gebruik BusID en MatchSeat om de juiste grafische kaart aan de juiste seat te hangen.
 +
<pre>
 +
Section "Device"
 +
    Identifier    "Device0"
 +
    Driver        "nvidia"
 +
#    VendorName    "NVIDIA Corporation"
 +
    Option        "GLXVBlank" "true"
 +
#    BoardName      "GeForce GT 710"
 +
    Option        "NoLogo" "1"
 +
    BusID          "PCI:2:0:0"
 +
    Option        "ProbeAllGpus" "false"
 +
    MatchSeat      "seat0"
 +
    #Screen        0
 +
EndSection
 +
 
 +
Section "Monitor"
 +
    Identifier    "Monitor0"
 +
EndSection
 +
 
 +
Section "Screen"
 +
    Identifier    "Screen0"
 +
    Device        "Device0"
 +
    Monitor        "Monitor0"
 +
EndSection
 +
</pre>
 +
 
 +
'''Vergeet niet de Nouveau driver uit te schakelen:'''
 +
In ''/etc/default/grub'', voeg ''nouveau.blacklist=1'' toe aan ''GRUB_CMDLINE_LINUX.
 +
Vervolgens kun je deze grub configuratie wegschrijven dmv het volgende commando:
 +
<pre>
 +
grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg
 +
</pre>

Latest revision as of 22:22, 12 December 2016


Bij A–Eskwadraat staan de workstations in de werkkamer ingesteld als quad-seat. Dit houdt in dat er op iedere workstation vier werkplekken (seats) beschikbaar zijn. Tegenwoordig word het instellen van de quad-seat configuratie gedaan met loginctl. Met loginctl worden udev regels geproduceert welke de muis, toetsenbord, en video kaart aan een seat toewijzen. Een werkende set udev regels is te vinden in de salt configuratie. Verander de instellingen van loginctl dus alleen als het niet anders kan! Lees de handleiding van loginctl voor meer informatie over het toewijzen van devices aan seats.

loginctl --help

Een lijst van de momenteel ingelogde gebruikers is te verkrijgen met:

loginctl

Soms laten gebruikers een werkplek achter en vergeten deze weer te unlocken. Gebruik de volgende toetsencombinatie om de gebruiker uit te loggen. Let wel op dat de gebruiker bestanden kan kwijtraken.

ctrl + alt + backspace

Seat Instellen

Om een device toe te wijzen aan een seat zijn twee stappen nodig. Op een verse installatie is alle hardware aan seat0 toegewezen. Eerst zoek je de device ID met:

loginctl seat-status <seat id>

Vervolgens wijs je de seat toe aan een seat met:

loginctl attach <seat-id> <device ID>

Multiseat met Nvidia drivers

Ondanks dat de NVidia drivers Multiseat zou moeten ondersteunen, werkt dit niet geheel. Xorg zal onze configuratie juist detecteren, maar de Nvidia driver zelf zal vervolgens de verkeerde GPU aan de verkeerde seat toewijzen. Als jij een idee hebt om dit op te lossen, dan kun je de volgende configuratie alvast gebruiken.

Deze configuratie vertelt Xorg om niet zomaar GPU's aan seats toe te passen. Daarnaast word aangegeven dat deze schermen "bestaan":

Section "ServerFlags"
    Option "AutoAddGPU" "off"
EndSection

Section "ServerLayout"
    Identifier     "Layout0"
    Screen      0  "Screen0"
    Screen      1  "Screen1"
    Screen      2  "Screen2"
    Screen      3  "Screen3"
EndSection

Vervolgens is voor iedere seat een soorgelijke sectie nodig. Met een "Screen" word een Monitor aan een Device gehangen. Gebruik BusID en MatchSeat om de juiste grafische kaart aan de juiste seat te hangen.

Section "Device"
    Identifier     "Device0"
    Driver         "nvidia"
#    VendorName     "NVIDIA Corporation"
    Option         "GLXVBlank" "true"
#    BoardName      "GeForce GT 710"
    Option         "NoLogo" "1"
    BusID          "PCI:2:0:0"
    Option         "ProbeAllGpus" "false"
    MatchSeat      "seat0"
    #Screen         0
EndSection

Section "Monitor"
    Identifier     "Monitor0"
EndSection

Section "Screen"
    Identifier     "Screen0"
    Device         "Device0"
    Monitor        "Monitor0"
EndSection

Vergeet niet de Nouveau driver uit te schakelen: In /etc/default/grub, voeg nouveau.blacklist=1 toe aan GRUB_CMDLINE_LINUX. Vervolgens kun je deze grub configuratie wegschrijven dmv het volgende commando:

grub2-mkconfig -o /boot/efi/EFI/centos/grub.cfg