xdmのログイン画面をキャプチャする方法
はじめに(事の経緯とか)
Linuxサーバの(素人向けの)運用手引書を作るため、説明用の画面を採取することになりました。Xにログイン後の画面については、gimpなどのツールを使えばよろしいかと思いますが、はたして、Xにログイン前の画面はどうやってキャプチャするのか??
VMwareを使うことも考えましたが、画面1〜2枚取るのに、わざわざVMwareを入れるくらいなら、時間とコストを考えると(ださいけど)デジカメで直接撮影したほうがいいかな、と考えておりました。
そのような折、たまたまkmlugのチャネルでチャットで話していた富永@sojo-u さんが、とてもナイスでクールな解法を提案して下さいました。(タコな私にとっては)まさに目から鱗。。ってことで、以下にその方法をご紹介します。
富永さんから教えてもらったキャプチャ方法
その方法とは、xwdというツールを使い、リモートでキャプチャする、というものです。xwdはX Windowのイメージダンプを取るツールですが、知らない方は、man xwd してみて下さい(実は私も知らなかった。。^^; )
画面を採取したいマシンのセットアップ
- init 3 などとし、いったんXを停止
- /etc/X11/xdm/Xsetup_0 の最後に、xhost + を追加。(注)
(注)私はkdmのログイン画面が欲しかったので、/etc/X11/kdm/Xsetup_0 に追加しました。
(注)セキュリティ的な観点から、xhost host_name (host_name は接続するクライアントのホスト名)としたほうがいいかも。それから、作業終了後は、とっとと削除しましょう。:-p
- init 5 とし、xdmのログイン状態に移行
クライアントマシンでの画面採取
ktermなどを起動し、以下のコマンドを実行
$ xwd -root -display hostname:0.0 > hoge.xwd
これにより、hostname側の画面がhoge.xwdとして保存されます(パチパチ)
あとは、ImageMagickとかgimpとかを使って加工し、jpegなどで保存すれば出来上がりです。画面を採取したい側のマシンでの画面状態がそのまま採取できるので、例えば、上記のように、シャットダウンのサブメニューが開いている状態も採取可能です。
さいごに(謝辞とか)
というわけで、VMwareなどを入れる事なく、またデジカメを使う、などというださい方法を取ることなく、無事、kdmのログイン画面が採取できました。
多謝!!>富永さん :-)
[戻る]
[R!o Interactive top]