Xvfbを使用して、アプリケーションを起動してスクリーンショットを撮ることができます。
私が疑問に思っているのは、既存の(休止中の)Xセッションからキャプチャする方法です。
ttyまたはssh以上から言ってください。
私が理解していることから、ウィンドウはマップされておらず、リソースを保持するために存在していません。仮想ウィンドウマネージャーで既存のウィンドウやワークスペースなどをマップしてスナップできるツールはありますか?
または、おそらくlibx11
を使用できますか XShmCreateImage
を使用してスナップを作成します または同様の?
承認された回答:
ctrl-alt-F(x)を使用せずに、コマンドラインから手動でXttyを「オン」にすることができます。
Xがtty7にあり、テキスト端末にログインしている場合
chvt 7 ; DISPLAY=0.0 xwd -root > screendump.xwd ; chvt 1
ただし、 xhost + localhost xsession内で問題が発生している必要があります。そうでない場合、xwdはxサーバーに接続できません。
これにより、sshセッションから実行できます。
PS:理論的には、MTDを使用すると、ビデオカードメモリから画面キャプチャを実行できるはずです。したがって、最初にXセッションを「ウェイクアップ」する必要はありません。