#51 Le 05/02/2011, à 03:52
- olaf.10
Re : [Script] Configurez un Multiseat via une interface graphique
@ wlourf
Les liens vers les périphériques sont créés grâce aux "règles udev".
Pour ajouter de nouvelles règles c'est simple, on crée dans le dossier /lib/udev/rules.d un fichier qui en contient.
Par exemple, si on prend pour base ce fichier :
# Contenu du fichier /lib/udev/rules.d/60-persistent-input.rules livré avec Ubuntu 10.04 (udev version 151)
# Au démarrage de l'ordinateur les liens sont crées dans le dossier /dev/input/by-path
ACTION!="add|change", GOTO="persistent_input_end"
SUBSYSTEM!="input", GOTO="persistent_input_end"
KERNEL=="input[0-9]*", GOTO="persistent_input_end"
ENV{ID_INPUT}=="", IMPORT{program}="input_id %p"
SUBSYSTEMS=="usb", ENV{ID_BUS}=="", IMPORT{program}="usb_id --export %p"
ENV{ID_INPUT_KEYBOARD}=="?*", ENV{.INPUT_CLASS}="kbd"
ENV{ID_INPUT_MOUSE}=="?*", ENV{.INPUT_CLASS}="mouse"
ENV{ID_INPUT_TOUCHPAD}=="?*", ENV{.INPUT_CLASS}="mouse"
ENV{ID_INPUT_TABLET}=="?*", ENV{.INPUT_CLASS}="mouse"
ENV{ID_INPUT_JOYSTICK}=="?*", ENV{.INPUT_CLASS}="joystick"
DRIVERS=="pcspkr", ENV{.INPUT_CLASS}="spkr"
ATTRS{name}=="*dvb*|*DVB*|* IR *", ENV{.INPUT_CLASS}="ir"
ENV{.INPUT_CLASS}=="?*", ENV{ID_SERIAL}=="", ENV{ID_SERIAL}="noserial"
SUBSYSTEMS=="usb|platform", IMPORT{program}="path_id %p"
ENV{ID_PATH}=="?*", KERNEL=="mouse*|js*", ENV{.INPUT_CLASS}=="?*", SYMLINK+="input/by-path/$env{ID_PATH}-$env{.INPUT_CLASS}"
ENV{ID_PATH}=="?*", KERNEL=="event*", ENV{.INPUT_CLASS}=="?*", \
SYMLINK+="input/by-path/$env{ID_PATH}-event-$env{.INPUT_CLASS}"
SUBSYSTEMS=="usb|platform", ENV{ID_PATH}=="?*", KERNEL=="event*", ENV{.INPUT_CLASS}=="", \
SYMLINK+="input/by-path/$env{ID_PATH}-event"
LABEL="persistent_input_end"
on peut parfaitement se refaire un petit fichier perso correspondant plus à nos besoins (en l'occurence aux besoins de multiseatfx, pour répondre à la question 2 ) :
# Contenu du fichier custom /lib/udev/rules.d/60-persistent-multiseatfx-151.rules
# Au boot, les liens sont crées dans le dossier /dev/input/multiseatfx
ACTION!="add|change", GOTO="persistent_input_end"
SUBSYSTEM!="input", GOTO="persistent_input_end"
KERNEL=="input[0-9]*", GOTO="persistent_input_end"
ENV{ID_INPUT}=="", IMPORT{program}="input_id %p"
SUBSYSTEMS=="usb", ENV{ID_BUS}=="", IMPORT{program}="usb_id --export %p"
ENV{ID_INPUT_KEYBOARD}=="?*", ENV{.INPUT_CLASS}="kbd"
ENV{ID_INPUT_MOUSE}=="?*", ENV{.INPUT_CLASS}="mouse"
ENV{ID_INPUT_TOUCHPAD}=="?*", ENV{.INPUT_CLASS}="mouse"
ENV{ID_INPUT_TABLET}=="?*", ENV{.INPUT_CLASS}="mouse"
ENV{ID_INPUT_JOYSTICK}=="?*", ENV{.INPUT_CLASS}="joystick"
DRIVERS=="pcspkr", ENV{.INPUT_CLASS}="spkr"
ATTRS{name}=="*dvb*|*DVB*|* IR *", ENV{.INPUT_CLASS}="ir"
ENV{.INPUT_CLASS}=="?*", ENV{ID_SERIAL}=="", ENV{ID_SERIAL}="noserial"
SUBSYSTEMS=="usb|platform", IMPORT{program}="path_id %p"
# Ligne "mouse*|js*" supprimée
ENV{ID_PATH}=="?*", KERNEL=="event*", ENV{.INPUT_CLASS}=="?*", \
SYMLINK+="input/multiseatfx/$env{ID_SERIAL}-$env{ID_PATH}-$env{.INPUT_CLASS}"
SUBSYSTEMS=="usb|platform", ENV{ID_PATH}=="?*", KERNEL=="event*", ENV{.INPUT_CLASS}=="", \
SYMLINK+="input/multiseatfx/$env{ID_PATH}-empty-input"
Euh... pour la question 3 concernant le son : malheureusement seul pulseaudio sait gérer à peu près convenablement les flux audio pour un multiseat. Pour t'aider, je m'installe une Crunchbang ce week-end et on essaiera de configurer ça ensemble.
@ zdid
Voici un bout de code pour récupérer tout ça d'un coup :
if [ `uname -m` = "x86_64" ];
then architecture="amd64"
else architecture="i386"
fi
mkdir -p /tmp/noyaux/linux-2.6.35.10
cd /tmp/noyaux/linux-2.6.35.10
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.35.10-maverick/linux-headers-2.6.35-02063510_2.6.35-02063510.201101192005_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.35.10-maverick/linux-headers-2.6.35-02063510-generic_2.6.35-02063510.201101192005_${architecture}.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.35.10-maverick/linux-image-2.6.35-02063510-generic_2.6.35-02063510.201101192005_${architecture}.deb
mkdir /tmp/noyaux/linux-2.6.36.3
cd /tmp/noyaux/linux-2.6.36.3
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.36.3-natty/linux-headers-2.6.36-02063603_2.6.36-02063603.201101081207_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.36.3-natty/linux-headers-2.6.36-02063603-generic_2.6.36-02063603.201101081207_${architecture}.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.36.3-natty/linux-image-2.6.36-02063603-generic_2.6.36-02063603.201101081207_${architecture}.deb
mkdir /tmp/noyaux/linux-2.6.37
cd /tmp/noyaux/linux-2.6.37
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.37-natty/linux-headers-2.6.37-020637_2.6.37-020637.201101050908_all.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.37-natty/linux-headers-2.6.37-020637-generic_2.6.37-020637.201101050908_${architecture}.deb
wget http://kernel.ubuntu.com/~kernel-ppa/mainline/v2.6.37-natty/linux-image-2.6.37-020637-generic_2.6.37-020637.201101050908_${architecture}.deb
Une fois les kernels téléchargés, tu les installes dans cet ordre-là : linux-headers*, linux-headers-*-generic, linux-image-*-generic, donc non, il n'y a rien de spécial à faire, à part redémarrer pour changer de noyau.
Dernière modification par olaf.10 (Le 05/02/2011, à 03:59)
Hors ligne
#52 Le 05/02/2011, à 10:34
- wlourf
Re : [Script] Configurez un Multiseat via une interface graphique
salut olaf et merci pour ces précisions, udev est un terrain inconnu pour moi et d'après la doc ce n'est pas rien à appréhender !
Pour le son, il n'y a pas d'urgence !
Pour le dual-screen, la fréquence automatique pour un écran dans le xorg créé par le script n'était pas terrible, j'ai donc rajouter ça au "Screen" concerné :
Option "metamodes" "CRT: 1280x1024_75 +0+0, DFP: nvidia-auto-select +1280+0"
merci nvidia-settings
Hors ligne
#53 Le 05/02/2011, à 17:01
- zdid
Re : [Script] Configurez un Multiseat via une interface graphique
Bonjour,
Aujourd'hui j'ai acheté une carte 8400gs.
Donc maintenant la config est avec:
2 clviers usb
Gpu0: nvidia 8200
gpu1: nvidia 8400gs
Après installation j'ai remarqué 2 comportements différents entre Ubuntu 10.04.lts et 10.10.
10.04.lts: nvidia-settings voit les deux GPU
10.10 maverick n'en voit qu'un.
De ce fait, j'ai installé multiseatfx sur la 10.04, le resultant est probant, dans la mesure où je suis bien avec mes 2 ecrans et claviers séparés avec toutes les deux le driver nvidia.
Maintenant il me reste à régler
- le problème du son je n'ai plus de son sur la télé pour l'instant
- lorsque je lance mthtv(0.24) il me bloque les deux souris.
En tout cas MERCI.
Je vais quand même faire l'essai avec le nouveau noyau sur la maverick et je tiens au courant.
A plus
Hors ligne
#54 Le 06/02/2011, à 00:01
- zdid
Re : [Script] Configurez un Multiseat via une interface graphique
Bonsoir ou bonne nuit,
En tout cas elle sera bonne pour moi grâce à Olaf.
Suite des essais 10.04.lts avec multiseatfx
les 2 problèmes sont réglés
- pour le son j'ai supprimé pulse et j'ai attaché le groupe audio au user de mythtv => ca marche (je ne sais pas sur laquelle des 2 actions) mais j'ai le résultat attendu
- pour la souris je ne sais pas pourquoi mais cela ne s'est plus reproduit
Essais 10.10 maverick avec multiseatfx
J ai essayé les 3 noyaux indiqués par OLAF, avec chacun des trois cela fonctionne, (et je retrouve bien mes 2 GPUs dans nvidia-settings).
BRAVO OLAF
Cette solution maintenant en place en 10.04 chez moi me permet de faire exactement ce que je voulais faire. J ai maintenant le choix de monter ou pas en Maverick
Une petite précision, après avoir installé le noyau souhaité faire un petit "grub-install /dev/sda" histoire de le voir dans grub.
A l'installation de multiseatfx, il est indiqué que c'est pour les ubuntu 9.10 et 10.04, il faut maintenant que tu rajoutes maverick 10.10 (avec un chargement de noyau en plus)
MERCI ENCORE
Hors ligne
#55 Le 06/02/2011, à 00:04
- zdid
Re : [Script] Configurez un Multiseat via une interface graphique
Encore une petite question,
Je souhaiterais que la session s'ouvre automatiquement sur la session consacré au multimedia.
J'ai essayé vainement de modifier le kdmrc, mais cela ne fonctionne pas.
Aurais tu une idée?
Complément:
Pour le son je n'ai plus de problème, il y a la carte son utilisée par mythtv liée à la sortie hdmi de la carte video 8200 (avec la paramétrage dans mythtv)
Pour le deuxième écran, après avoir réinstaller pulse audio, j ai choisi la deuxieme carte son.
Les deux fonctionnent simultanément.
ZDID
Dernière modification par zdid (Le 07/02/2011, à 20:18)
Hors ligne
#56 Le 28/02/2011, à 20:34
- zdid
Re : [Script] Configurez un Multiseat via une interface graphique
Bonjour,
La station est depuis le 6 février fonctionnelle.
Le poste n'est jamais éteint.
Je n'ai pas réglé le problème de la connexion automatique.
Pour le son, j'ai désinstallé pulse-audio et j'utilise alsa directement avec 1 carte différente par utilsateur.
KDM est utilisé pour les connexions.
Le seat1 tourne sous xfce4 avec mythtv en permanence.
Le seat2 tourne sous gnome je rencontre des pbs
- la touche flèche vers le haut me provoque des captures d'écran ( c'est très gênant dans le mode terminal)
- gel de gnome si pas d'activité pendant un cerain temps idem avec KDE
J'ai ajouté un script, dans les applications au démarrage de gnome.
#!/bin/sh
xset -dpms
xset s off
Pour la fleche vers le haut, j'ai essayé Xmodmap sans resultat
A bientôt
Dernière modification par zdid (Le 03/03/2011, à 14:50)
Hors ligne
#57 Le 19/04/2011, à 11:06
- Dededede4
Re : [Script] Configurez un Multiseat via une interface graphique
Salut !
Quand j'essaye d'installer le .deb version 0.4.7, il me demande kdm comme dépendance. Mais je suis sous gnome, donc je préfère utiliser GDM.
Il y a une solution ?
Merci !
N'hésitez pas à me contacter sur jabber : dededede4(at)jabber.ubuntu-fr.org
Bill gate ? Il adore linux, d'ailleurs il est toujours habillé en pingouin.
Hors ligne
#58 Le 07/05/2011, à 23:58
- Paulic_64
Re : [Script] Configurez un Multiseat via une interface graphique
Bonjour à tous,
Merci Olaf.10 pour ce script qui me semble très intéressant !
Je trouve la technique du multiseat très intéressante. Surtout à l'heure des économie d'énergie de ressources. Et toutes les familles n'ont pas les moyens d'acheter et d'entretenir autant d'ordinateurs récents que d'enfants !
Je souhaite l'utiliser dans mon bureau (2 seats) et dans le bureau de ma compagne (2 seats) je fais du dessin et du graphisme...
Et la faire partager au sein du LUG http://euskalug.org/
http://euskalug.org/fr/content/3eme-ren … e#comments
Le gros problème c'est que n'arrive pas à configurer ma machine de test en multiseat malgré un certain nombre d'essais infructueux !
La machine :
Carte mère : ASUS M4A89TD PRO/USB3 (AMD 890FX) - ATX
Sans puce graphique intégrée
Par contre : 2 port PCIe
Processeur : AMD Phenom II X6 1055T (2.8 GHz) - 6-Core Socket AM3
Carte graphique : 2 ASUS EAH4350 SILENT/DI/1GD2 - 1 Go DVI/HDMI - PCI Express (ATI Radeon HD 4350)
8 Go (kit 2x 4 Go) DDR3-SDRAM 1333 MHz PC3-10600 CL9
Le système d'exploitation :
Ubuntu Version 10.04 (Lucid) LTS 64 bit
Noyaux linux 2.6.32.31-generic
GNOME 2.30.2
2 cartes graphiques sur port PCIe :
jean-paul@argi-alde:~$ lspci | grep VGA
02:00.0 VGA compatible controller: ATI Technologies Inc RV710 [Radeon HD 4350]
07:00.0 VGA compatible controller: ATI Technologies Inc RV710 [Radeon HD 4350]
jean-paul@argi-alde:~$
1 seat par carte graphique
Le port DVI de chacune carte est connecté à son écran. Les deux écrans sont identiques LCD Prolite E260WS 26".
2 souris USB + 2 clavier USB complète le tout.
Donc question matériel je suis conforme.
Mes essais se font sur un disque de test avec une installation complète et neuve d'Ubuntu 10.04 64 bit.
La procédure suivie :
- Installation d'ubuntu
- mise à jour
- installation du pilote propriétaire ATI/AMD por carte graphique FGLRX
- téléchargement du paquet debian 0.4.7 all deb sur http://olaf.10.free.fr/
- installation du paquet multiseatfx 0.4.7
Lancement du script :
- je lance en console sudo multiseatfx ;
- le script se "déroule" ;
- je choisis "Configurer deux postes" ;
- je trouve mes deux claviers ; mes deux souris ; mes deux cartes graphiques ;
- je sélectionne les périphériques pour chacun des seats ;
- je sélectionne "GDM" puisque je suis sur Gnome ;
- le système me préviens que ma configuration est sauvegardée ;
- je fais 'Editer les fichiers de configuration" ; (Je ne sais pas trop ce que cela vaut dire car avant une petite icon me dit que c'est sauvegardé)
- Puis redemarrer...
Je m'attends à avoir sur chacun de mes deux écrans un écran de connection pour que chacun de deux utilisateurs puissent se connecter.
L'écran qui est connecté sur la première carte PCIe la plus haute reçoit l'écran de connection GDM. Ecran sur lequel je peux me connecter. Les 2 souris et les deux claviers réagissent sur cet utlisateur 1 connecté.
Le second écran reste désespérement vide sans même de recevoir de signal (diode non activée - ou : pas de signal DVI). Les deux écrans et les deux cartes graphiques ont été testés par inversion des cartes graphiques sur les ports PCIe. Je n'ai pas essayé le port PCIe 2 seul sans carte dans le port PCIe 1.
Après mon installation j'ai deux fichiers supplémentaires :
1 fichier xorg.conf
Section "Screen"
Identifier "Default Screen"
DefaultDepth 24
EndSection
Section "Module"
Load "glx"
EndSection
Section "Device"
Identifier "Default Device"
Driver "fglrx"
EndSection
1 fichier : xorg.conf-multiseatfx
Qui contient entre autre :
Section "Device"
Identifier "videocard1"
BusID "PCI:02:00:0"
Driver "fglrx"
Option "NoLogo" "1"
Option "NoTwinViewXineramaInfo" "0"
EndSection
Section "Device"
Identifier "videocard2"
BusID "PCI:07:00:0"
Driver "fglrx"
Option "NoLogo" "1"
Option "NoTwinViewXineramaInfo" "0"
EndSection
Section "Device"
Identifier "videocard3"
BusID "PCI:XX:XX:X"
Driver "XX"
Option "NoLogo" "1"
Option "NoTwinViewXineramaInfo" "0"
EndSection
Par contre je n'ai pas de gdm.conf
Je suis le script simplement et je n'arrive pas a configurer la machine !
Est-ce que les experts, Olaf.10 ou d'autres, en multiseat pourraient me donner un coup de main pour me dire ce que je ne fais mal ?
De plus je me suis engagé à montrer une machine configurée dans un RLLL... je ne savais pas que j'aller galérer autant car disons que je ne suis pas tout à fait novice, merci de votre aide...
Cordialement,
Paulic_64
Hors ligne
#59 Le 29/11/2011, à 20:46
- backtolinux
Re : [Script] Configurez un Multiseat via une interface graphique
@Paulic_64 : désolé pour ta démo.
il te manque plusieurs choses, et je ne suis pas devant mon écran.
Mais de tête :
Je ne vois pas de section layout
Section ServerLayout "layout0"
Screen 0 "Screen0" 0 0
InputDevice "Keyboard0" "CoreKeyboard"
InputDevice "Mouse0" "CorePointer"
EndSection
Section ServerLayout "layout1"
Screen 1 "Screen1" 0 0
InputDevice "Keyboard1" "CoreKeyboard"
InputDevice "Mouse1" "CorePointer"
EndSection
Et dans les device, ajouter lequel correspond à quel écran
Section "Device"
Identifier "videocard0"
BusID "PCI:02:00:0"
Driver "fglrx"
Option "NoLogo" "1"
Screen 0
Option "NoTwinViewXineramaInfo" "0"
EndSection
Section "Device"
Identifier "videocard1"
BusID "PCI:07:00:0"
Driver "fglrx"
Option "NoLogo" "1"
Screen 1
Option "NoTwinViewXineramaInfo" "0"
EndSection
Et enfin, les input device :
Section "InputDevice"
Identifier "keyb0"
Driver "evdev"
Option "Device" "/dev/input/TON-KEYBOARD0"
Option "XkbLayout" "fr"
Option "XkbVariant" "oss"
EndSection
Section "InputDevice"
Identifier "keyb1"
Driver "evdev"
Option "Device" "/dev/input/TON-KEYBOARD1"
Option "XkbLayout" "fr"
Option "XkbVariant" "oss"
EndSection
Section "InputDevice"
Identifier "mouse0"
Driver "evdev"
Option "Device" "/dev/input/TA-MICE0"
Option "ZAxisMapping" "4 5"
Option "Emulate3Buttons" "0"
EndSection
Section "InputDevice"
Identifier "mouse1"
Driver "evdev"
Option "Device" "/dev/input/TA-MICE1"
Option "ZAxisMapping" "7 6 "
Option "Emulate3Buttons" "0"
EndSection
Et pour terminer, il manque les sections screen
Section "Screen"
Identifier "screen0"
Device "videocard0"
Option "TwinView" "0"
DefaultDepth 24
EndSection
Section "Screen"
Identifier "screen1"
Device "videocard1"
Option "TwinView" "0"
DefaultDepth 24
EndSection
Gdm s'installe ;-)
Pour Xdm, (voir internet qui est ton seul vrai ami)
Pour kdm, vois dans /vqr/lib/share/config/kdm/kdmrc (ou quelque chose d'approchant), et copie colle une section
[X-*:CORE]
en
[X-0:CORE] et [X-1:CORE]
ou quelque chose d'approchant.
pour tester, avoir 2 utilisateurs bien sûr. Démarrer en init 3 (dans /etc(inittab, changer le 5 en 3 dans initdefault et rebooter)
ouvrir 2 sessions sur 2 consoles différentes.
Sur la première console, taper
startx -- :0 -sharevts vt8
Sur la seconde, taper
startx -- :1 -sharevts vt9
Et tu devrais avoir tes 2 sessions (ctrl+alt+F8 et ctrl+alt+F9) indépendantes, mais pas les claviers, souris réglés.
Mais au moins, tu avance.
Je vois que tu as des ATI, j'en ai eu et j'ai du démarer sur la PCI pour que la mayonnaise prenne.
FW(2NICs) : Mandriva2010.2 x64 + 3DVB-S+Phoenix(039) (abonné C+, CSat, Freebox V6) + SSD 96Go + 2To SATA (0.5 + 1.5)
HPTC : Mandriva2010.2 x86 + 2DVB-S client du FW
HTPC-Client : Optiplex GX520+Mandriva2010.2 x86 + XBMC
2 stations XP-SP3
Hors ligne
#60 Le 11/01/2012, à 19:59
- Paulo Roberto
Re : [Script] Configurez un Multiseat via une interface graphique
Bonjour
Mon nom est Paulo Roberto, je suis brésilien, je suis étudiant les techniques pour une meilleure utilisation des ordinateurs pour une utilisation dans les écoles communautaires.
recherches sur internet pour longtemps, j'ai trouvé la source et peut-être vous pouvez m'aider.
J'ai essayé plusieurs fois de jouer cette technique pour Multiterminal Mais en vain, grâce à vous j'ai un nouvel espoir, si vous avez un type de matériau ou un tutoriel s'il vous plaît nous contacter par e-mail que je peux faire pour atendere ce besoin est essentiel pour les écoles pauvres dans ma région.
paulo.caricartoon @ gmail.com
Je teste tel que décrit par olaf.10 mais sans succès.
Je vous remercie.
gracieusement
Hors ligne