Remotedisplay
Intro
Un ssh -X permet de rendre disponible son display local sur la machine distante. Si vous tapez
ssh -X monserveur xmessage bonjour
Le programme xmessage s'exécute à distance mais le message bonjour s'affiche sur votre machine locale.
La manipulation décrite ici permet de faire le contraire, c'est à dire de pouvoir accéder au display distant.
Variable globale DISPLAY
sur la machine distante essayez un:
export DISPLAY=:0 xdpyinfo
Le message "normal" devrait être une erreur, pour une raison d'authentification:
xdpyinfo: unable to open display
Récupérer le MIT-MAGIC-COOKIE avec xauth:
xauth -f <Fichier_Xauthority> list
Puis injecter le résultat dans votre .Xauthority
xauth add `xauth -f <Fichier_Xauthority> list`
Le fichier Xauthority se trouve à differentes places selon les distributions:
- Unix classique, Ubuntu:
$HOME/.Xauthority
- Debian:
/var/run/gdm3/auth-for-$USER-$HASH/database
Sous unix le fichier .Xauthority est en lecture seule pour l'utilisateur.
Sous debian, le répertoire
/var/run/gdm3/
n'est pas lisible. Donc à moins d'être root personne ne peux deviner la valeur de $HASH et donc récupérer le display
dépannage du display
Quelques commandes permettent de caractériser le display:
- xdpyinfo donne la résolution actuelle l'écran
- glxinfo | grep -i render donne des infos sur les capacités d'accélération de la carte (paquet mesa-utils)
- glxgears permet de tester l'efficacité du rendu accéléré (nb FPS) Attention, affiche une fenêtre sur l'écran distant.
- xlsclient donne la liste des fenêtres sur le display
D'autres d'intéragir avec l'utilisateur
- x11vnc pour exporter le display via VNC (permet de voir ce que voit l'utilisateur)
- aosd-cat et xmessage pour écrire un message à l'utilisateur
et puis les classiques
- Les logs de X11: /var/log/Xorg.?.log
- le matériel et le module kernel associé: lspci -vk
- les modules chargés par le kernel lsmod
- les infos sur le module modinfo
- Le fichier de conf Xorg (qui est maintenant très souvent absent car créé à la volée au démarrage de X).