GNU/Linux >> Tutoriels Linux >  >> Linux

Capture d'écran de X de Tty ?

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.


Linux
  1. Linux - Comment connecter l'utilisateur à Tty à partir de Ssh ?

  2. Empêcher l'écran Gnu de mettre fin à la session une fois le script exécuté terminé ?

  3. Basculer vers Host Desktop à partir d'une session Citrix ?

  4. Comment envoyer des données au presse-papiers local à partir d'une session SSH distante

  5. Comment forcer le détachement de Screen d'une autre session SSH ?

Vous pouvez maintenant essayer Linux From Scratch 8.0 en session en direct !

Supprimer la session GUEST de l'écran de connexion Ubuntu

Comment se déconnecter d'une session Ubuntu [Astuce du débutant]

Comment savoir si je suis dans une session Tmux à partir d'un script bash ?

Script bash :utilisation de la commande de script d'un script bash pour la journalisation d'une session

Comment ouvrir, lire et écrire à partir du port série en C ?