En utilisant Xvfb, je peux lancer une application et prendre une capture d'écran.
Ce que je me demande, c'est comment capturer à partir d'une session X existante (dormante).
Dites depuis tty ou via ssh.
D'après ce que je comprends, les fenêtres ne sont pas cartographiées et n'existent pas pour préserver les ressources. Existe-t-il un outil capable de mapper des fenêtres existantes, des espaces de travail, etc. dans un gestionnaire de fenêtres virtuel et de prendre un instantané ?
Ou peut-on utiliser libx11
et créez un snap en utilisant XShmCreateImage
ou similaire ?
Réponse acceptée :
Nous pouvons "activer" le X tty manuellement à partir de la ligne de commande, sans ctrl-alt-F(x).
Si X est sur tty 7 et que vous vous connectez à un terminal texte
chvt 7 ; DISPLAY=0.0 xwd -root > screendump.xwd ; chvt 1
Cependant, xhost + localhost doit être un problème dans la xsession, sinon xwd ne peut pas se connecter au serveur x.
Cela vous permet de le faire depuis une session ssh.
PS :En théorie, avec MTD, il devrait être possible de faire une capture d'écran depuis la mémoire de la carte vidéo. Ainsi sans d'abord "réveiller" la session X.