Come bloccare una coppia mouse / tastiera su ogni schermo?


11

Utilizzando ATI Catalyst Control Center (fglrx), installo due desktop (l'opzione multidesktop) tramite dual-head. Ora ho due mouse e tastiere (USB) collegati che, usando, xinputpossono essere inseriti in due gruppi separati. Posso bloccare ciascun gruppo su una schermata? E come può essere fatto in modo permanente? In alternativa, sono apprezzate anche le istruzioni per trasformare questa configurazione "lite multiseat" in multiseat.

Questo è xorg.conf come impostato da Catalyst Center:

Section "ServerLayout"
    Identifier     "amdcccle Layout"
    Screen      0  "amdcccle-Screen[1]-0" 0 0
    Screen         "amdcccle-Screen[1]-1" 1400 0
EndSection

Section "Module"
    Load  "glx"
EndSection

Section "Monitor"
    Identifier   "0-CRT1"
    Option      "VendorName" "ATI Proprietary Driver"
    Option      "ModelName" "Generic Autodetecting Monitor"
    Option      "DPMS" "true"
    Option      "PreferredMode" "1400x1050"
    Option      "TargetRefresh" "60"
    Option      "Position" "0 0"
    Option      "Rotate" "normal"
    Option      "Disable" "false"
EndSection

Section "Monitor"
    Identifier   "0-DFP1"
    Option      "VendorName" "ATI Proprietary Driver"
    Option      "ModelName" "Generic Autodetecting Monitor"
    Option      "DPMS" "true"
    Option      "PreferredMode" "1400x1050"
    Option      "TargetRefresh" "60"
    Option      "Position" "0 0"
    Option      "Rotate" "normal"
    Option      "Disable" "false"
EndSection

Section "Device"
    Identifier  "Default Device"
    Driver      "fglrx"
EndSection

Section "Device"
    Identifier  "amdcccle-Device[1]-0"
    Driver      "fglrx"
    Option      "Monitor-DFP1" "0-DFP1"
    BusID       "PCI:1:5:0"
EndSection

Section "Device"
    Identifier  "amdcccle-Device[1]-1"
    Driver      "fglrx"
    Option      "Monitor-CRT1" "0-CRT1"
    BusID       "PCI:1:5:0"
    Screen      1
EndSection

Section "Screen"
    Identifier "Default Screen"
    DefaultDepth     24
    SubSection "Display"
    EndSubSection
EndSection

Section "Screen"
    Identifier "amdcccle-Screen[1]-0"
    Device     "amdcccle-Device[1]-0"
    DefaultDepth     24
    SubSection "Display"
        Viewport   0 0
        Depth     24
    EndSubSection
EndSection

Section "Screen"
    Identifier "amdcccle-Screen[1]-1"
    Device     "amdcccle-Device[1]-1"
    DefaultDepth     24
    SubSection "Display"
        Viewport   0 0
        Depth     24
    EndSubSection
EndSection

Section "DRI"
    Group        "vglusers"
    Mode         0660
EndSection

(quest'ultima voce proviene da VirtualGL , vedi questa domanda , qui dovrebbe essere irrilevante)


Grazie a tutti per le risposte. Non sarò in grado di testarlo per un po ', quindi non posso ancora accettare una risposta, ma assegnerò la risposta di tmow per aver citato un po' di più
Tobias Kienzler,

Risposte:


5

Se ho capito le tue esigenze devi associare uno schermo, una tastiera e un mouse a un ServerLayout e gli altri al secondo.

http://cambuca.ldhs.cetuc.puc-rio.br/multiuser/

Section "ServerLayout"
    Identifier "Layout0"
    Screen 0 "Screen0"
    InputDevice "Mouse0" "CorePointer"
    InputDevice "Keyboard0" "CoreKeyboard"
EndSection

Section "ServerLayout"
    Identifier "Layout1"
    Screen 0 "Screen1"
    InputDevice "Mouse0" "CorePointer"
    InputDevice "Keyboard0" "CoreKeyboard"
EndSection

Questo è, per quanto ne so, l'unico modo per procedere.

Anche Arch come un buon tutorial:

https://wiki.archlinux.org/index.php/Xorg_multiseat

E Linux Toys ti mostra persino come realizzare una configurazione a 6 posti

http://www.linuxtoys.org/multiseat/multiseat.html


Grazie. tuttavia il primo collegamento è correlato a XFree86, funziona ancora con X11? Inoltre, hai incollato il collegamento Arch ...
Tobias Kienzler il

Sì, certo, si applica anche a X.org. Ci scusiamo per l'errore, l'ho risolto e in realtà quel link dovrebbe spiegarti molto meglio una configurazione multi-sede
tra il

3

Una possibilità interessante che ho dimenticato è la risposta di Tyler Szabo alla mia domanda Giochi multiseat? @ gaming.SE suggerisce:

Vorrei usare VMWare. Questo potrebbe essere possibile con il solo lettore VMWare (sarà necessario essere in grado di allocare un mouse su una singola VM) oppure potrebbe essere necessario provare la workstation VMWare (per la quale sono abbastanza sicuro che funzioni). L'hardware / software necessario è il seguente:

  • Più set di input USB (mouse / tastiera / ecc.)
  • Una licenza per VMWare Workstation (o un altro sistema VM)

    1. Imposta una VM come faresti normalmente e spegnila.
    2. Configurare il controller USB (disponibile in "Modifica impostazioni macchina virtuale") su "Mostra tutti i dispositivi di input USB"
    3. Avvia la VM.
    4. Nel menu Passa a VM -> Dispositivi rimovibili e seleziona gli input da indirizzare esclusivamente alla VM. (Ora una delle combinazioni tastiera / mouse verrà indirizzata solo a quella VM.)

A questo punto hai una finestra completamente isolata con una serie di input che andranno solo ad essa. Puoi farlo per tutte le VM che puoi gestire (e per tutti i set di input che puoi gestire - ho provato solo con 2). L'unica cosa irritante che può accadere è che hai solo 2 set di input (nel mio caso la tastiera del mio laptop, la mia tastiera USB e 2 mouse USB). Ho impostato una VM con la mia combinazione tastiera / mouse USB e l'ho massimizzata su un monitor (per farlo sono necessari gli strumenti VMWare). Per l'altro ho avuto il problema che il mio mouse poteva sfuggire da una VM all'altra (una funzione di strumenti); per ovviare a ciò ho messo la mia seconda VM in "modalità exculsive" catturando così il mio input "host"; Avrei potuto anche avere una seconda combinazione tastiera / mouse.

La cosa migliore è che non hai nemmeno bisogno di più monitor, puoi farlo in stile schermo diviso con un sacco di macchine virtuali + tastiere + mouse.


questa è l'unica soluzione con cui ho lavorato finora ...
Tobias Kienzler,

3

Hai provato qualcosa come MDM ? Sembra che possa gestire le mappature tastiera / video / mouse nel suo file di configurazione.



2

Le altre risposte erano certamente sulla strada giusta, ma la documentazione MDM / multiseat è piuttosto carente e dispersa. Alcuni dei link forniti qui erano obsoleti, facendo riferimento a XFree86, il predecessore di Xorg. Alcuni scavi mostrano che la maggior parte delle configurazioni MDM utilizza Xephyr.

Ecco un HOWTO sulla creazione della configurazione Xisyr Multiseat:

http://en.wikibooks.org/wiki/Multiterminal_with_Xephyr

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.