Ubuntu à l'honneur au festival des vieilles charrues

Festival des Vieilles Charrues de Carhaix du 19, 20, 21, 22 Juillet 2012

Pour la quatrième année consécutive, l’association infothema (http://www.infothema.fr) participera avec Ubuntu-fr à la gestion technique et à l’animation d’un grand espace Internet dédié aux spectateurs du plus grand festival français, troisième au niveau européen, au centre de la Bretagne :icon_biggrin:

Les postes en accès libre tournent en multiseat sous Ubuntu, permettant de démontrer la facilité de prise en main de cette distribution.

N’hésitez pas à venir nous voir… :clap:

Lire la suite : www.infothema.fr…

Site des Vieilles Charrues : www.vieillescharrues.asso.fr…

http://www.infothema.fr/documents/juin-2011/foule_vue%20aerienne_vieilles_charrues

les geeks prennent le soleil. :slight_smile:

Oui enfin du soleil et de la bonne musique, le tout soupoudré d’un Tux en multiseat :wink:

Le Webcafé Ubuntu, un peu de technique. via Webcafé Ubuntu

L’objectif du Webcafé que nous mettons en place au festival des vieilles charrues est de fournir de nombreux postes au public. Ainsi, les festivaliers peuvent avoir un accès à Internet tout en découvrant Ubuntu.
En plein festival, je profite d’un moment de calme pour écrire quelques lignes qui présentent (brièvement) la solution technique que nous utilisons pour faire tourner le Webcafé. Je vais m’attarder sur deux aspects : le matériel utilisé et la configuration logiciel.

Durant la lecture de ce billet, gardez à l’esprit que la solution que nous utilisons n’est pas parfaite. Cependant, elle a le mérite de fonctionner et d’avoir évolué régulièrement, d’une part du fait des mises à jour régulières d’Ubuntu, mais aussi parce que le matériel que nous avions à disposition changeait.

Matériel à disposition

Nous avons à notre disposition deux ordinateurs que nous appelons « serveurs ». Ces derniers ont chacun 8 cœurs, 8 Gio de mémoire vive, mais surtout plusieurs cartes graphiques avec plusieurs sorties (VGA / DVI / HDMI / DisplayPort / Mini-DisplayPort) par carte graphique. En plus de ses serveurs, on dispose d’autant de clavier, souris et écrans que de postes que nous mettons à disposition.

Voici quelques exemples de cartes graphiques que nous avons :

Quelques cartes « classiques » :
     - Trois cartes NVIDIA avec deux sorties DVI
     - Une carte avec deux sorties, une VGA et une DVI

Des cartes utilisant la technologie Eyefinity :
     - Une carte avec une cinq sorties mini DisplayPort
     - Une carte avec deux sorties DVI et quatre sorties DisplayPort

Une carte en PCI et non pas PCI-express, cette carte dispose d’ailleurs de trois sorties (VGA, DVI et HDMI) mais, à l’exception des cartes Eyefinity, uniquement deux sorties sont utilisable par carte.

Asus HD7970

La difficulté est de réaliser une configuration qui permet d’avoir un maximum de sorties vidéos. Nos serveurs disposent de deux connecteurs PCI-Express et d’un connecteur PCI. On peut ainsi brancher trois cartes graphiques (dont une PCI, très difficile à trouver de nos jours).

Une fois que le matériel est là, il faut s’attaquer à la partie essentielle : la configuration des logiciels.

Configuration logiciel

Sur le serveur où est installé la dernière version d’Ubuntu (actuellement la 12.04), on y lance plusieurs serveurs X : un par carte graphique. Il nous est déjà arrivé de lancer un seul serveur X, mais pour simplifier la configuration (notamment à cause de cartes graphiques différentes qui nécessitent des pilotes différents), on lance plusieurs serveurs X. Cette dernière méthode apporte un avantage considérable : en cas de plantage du serveur X, moins de postes sont impactés.
LAYOUT=L0 # Le layout qui correspond à la carte graphique dans la configuration de xorg X_DISPLAY=1 # Les serveurs X sont numérotés 1, 2, 3, … X -br -audit 0 -dpms -s 0 -logverbose 20 -layout $LAYOUT :$X_DISPLAY -novtswitch -sharevts -keeptty

NB : Cette partie est probablement la plus difficile puisque qu’il faut configurer X et trouver les bons pilotes pour les cartes graphiques. C’est encore plus difficile quand il faut faire cohabiter des pilotes ATI et NVDIDIA, libres et propriétaires

Une fois qu’un serveur X est lancé, il a un espace égal à la totalité des écrans. Il nous faut ensuite lancer des serveurs Xephyr (qu’on peut considérer comme des mini serveurs X). Ces derniers sont lancés à l’intérieur d’un serveur X, doivent avoir la taille d’un écran et sont positionnés pour que l’espace d’un serveur Xephyr corresponde bien à un écran en entier. En effet, il est possible de décaler le serveur Xephyr et l’espace de celui-ci sera en partie sur un écran et en partie sur un autre.

À chaque lancement d’un serveur Xephyr, on y associe un clavier et une souris. Si cette opération n’est pas réalisée correctement, on se retrouve avec un curseur qui bouge sur l’écran du voisin et idem pour le clavier.
X_DISPLAY=1 # Les serveurs X sont numérotés 1, 2, 3, … XEP_SCRSIZE=1366x768 XEP_MOUSEID=/dev/input/… XEP_KEYBDID=/dev/input/… XEP_DISPLAY=101 # Les serveurs Xephyr sont numérotés 101, 102, 103, 104, 105, … DISPLAY=:$X_DISPLAY /usr/bin/Xephyr \ -ac \ -screen $XEP_SCRSIZE \ -mouse evdev,device=$XEP_MOUSEID \ -keybd evdev,device=$XEP_KEYBDID,xkbrules=evdev,xkbmodel=pc105,xkblayout=fr,xkboption=grp:alts_toogle \ -wr \ :$XEP_DISPLAY

Une fois que tout ça fonctionne, il suffit de lancer gnome en spécifiant le bon DISPLAY (variable qui va identifier chaque serveur X et serveur Xephyr).
XEP_DISPLAY=… # Numéro du Xephyr DISPLAY=:$XEP_DISPLAY gnome-session --session ubuntu

Pour aller plus loin et permettre aux festivaliers de tester pleinement Ubuntu (notamment en installant des logiciels), nous avons fait le choix d’utiliser des LXC. Ainsi, rien ne change à l’exception du fait que les GNOME ne sont pas lancés dans la machine hôte, mais dans les LXC.
IP_HOST=10.0.3.1 XEP_DISPLAY=… # Numéro du Xephyr DISPLAY=$IP_HOST:$XEP_DISPLAY gnome-session --session ubuntu

Cette configuration matérielle et logicielle forme ce que nous appelons un multi-seat. Pour faire le Webcafé, il en faut un peu plus.
Le Webcafé dans son ensemble

Actuellement, nous mettons à disposition 12 postes. Ce qui fait 12 écrans, 12 claviers, 12 souris et 2 serveurs. Il faut donc faire attention à bien organiser l’espace pour éviter de se perdre dans les câbles.

À cela s’ajoute les branchements électriques mais aussi le réseau.

Arrière du serveur multiseat avec une carte grahique à cinq sorties.

Source planet.ubuntu-fr.org

Pas bon d’essayer de vulgariser ça.
Vous tentez de rendre accessibles des principes qui ne peuvent pas l’être.
Résultat seuls des gens asez experimentés lirons ça et on a l’impression d’être pris pour des neuneus là du coup.

Faites un rapide aperçu du principe sans aborder la technique “12 postes avec 2 PC grace à ubuntu”, pour tout le monde, et un autre article pour donner le détail à ceux que ça interesse.

GNU/Linux réinvente le terminal passif ! :paf:

ah ? ils sont où les TP ? je vois que des écrans et clavier/souris moi

C’est ça le TP… En fait, ils ont fait pire, ils ont réinvité l’esprit du TP avec plus de câble, puisque ce n’est plus 1 mais 3 câbles branchés au serveur…

ils ont rien inventés, c’est l’essence même de X.

Windows peux faire ça ?

Oui, ça s’appelle RDS…

Où sont branché les 6 claviers et 6 souris sur le serveur ? Et comment sont-ils différenciés du clavier et de la souris de la console ?

à travers le réseau c’est pas tellement comparable à ce qu’ils ont fait là avec X.

  1. usb
  2. comme ça par exemple :
    Bus 002 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 003 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 004 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
    Bus 005 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub

De quelle console tu parle ?

J’ai trouvé la réponse dans son explication !
Si j’attends après toi… Tu dois certainement être persuadé que je trolle…

Effectivement, à ma connaissance, il n’y a pas de possibilité de travailler à plusieurs simultanément sur la même machine avec Windows en étant directement connecté à la machine.
A une époque j’avais entendu parlé d’un boîtier pour le faire, ça détournait le RDS.

Faut dire qu’Unix, et ses dérivés, est naturellement multi-utilisateurs.

C’est marrant ! Pas simple à mettre en place, mais marrant !
Edité le 04/08/2012 à 17:43

je ne trollais pas non plus. Je connais le principe depuis longtemps avec X mais juste survolé.

Et à ma connaissance il n’y a rien de comparable à ce protocole pour faire ce genre de montage.

et ça réagis à la nanoseconde comme un simple périphérique ?

ok

y en a probablement pas, vu l’endroit où ils ont fait ça, ça aurais servi à rien ^^

Mais Pulseaudio est très certainement capable de faire des choses de ce genre, ce serveur de sons et juste impressionnant.