问题描述
如何获取登录屏幕的屏幕截图?
我不想在虚拟机中重新创建我的Ubuntu安装。
最佳解决方案
此博客可能会对您有所帮助:http://ptspts.blogspot.com/2010/02/how-to-create-screen-shot-of-gdm-login.html
安装ImageMagick进行下面的图像文件格式转换:
sudo apt-get install imagemagick
创建一个帮助脚本:
echo 'DISPLAY=:0 XAUTHORITY=/var/lib/gdm/:0.Xauth xwd -root' >/tmp/shot.sh
确保您的登录屏幕处于活动状态(注销或重新启动计算机,并等到您看到登录屏幕)。以文本模式登录(通过按Ctrl-Alt-F1)或使用SSH登录。通过运行创建屏幕截图
sudo bash /tmp/shot.sh >/tmp/shot.xwd
您现在可以登录(首先按Ctrl-AltF7返回GDM登录界面)。将屏幕截图转换为JPEG和/或PNG:
convert -quality 50 /tmp/shot.xwd /tmp/shot.jpg
convert /tmp/shot.xwd /tmp/shot.png
在您喜欢的图像查看器中查看屏幕截图。
次佳解决方案
对于11.10和Lightdm以及之后
您可以尝试在终端中运行unity-greeter --test-mode
。它显示会话中的登录屏幕。然后,您可以像通常使用任何其他应用程序一样截取登录屏幕的屏幕截图。
第三种解决方案
你可以试试这个:
gnome-screenshot -d 10
你不需要安装任何东西只需输入命令并锁定屏幕,屏幕将在执行命令后10秒内拍摄。
第四种方案
对于Ubuntu 14.04
上面的答案在Ubuntu 14.04中对我不起作用 – 我四处搜索并发现这个有效。
-
安装ImageMagick
sudo apt-get install imagemagick
-
在您的主目录中创建一个名为
shot.sh
的文件,最好在您的主文件夹中,并在其中粘贴以下代码:chvt 7; sleep 5s; DISPLAY=:0 XAUTHORITY=/var/run/lightdm/root/:0 xwd -root -out ~/screenshot.xwd; convert ~/screenshot.xwd ~/screenshot.png; rm ~/screenshot.xwd
-
让它可执行
sudo chmod +x shot.sh
-
退出系统。按
Ctrl
+Alt
+F1
进入控制台(tty1)并登录。使用以下命令运行脚本:sudo ./shot.sh
它将返回登录屏幕图形界面(chvt 7),五秒钟后,它将采用文件名screenshot.png
将屏幕截图保存在主目录中。
这是我的:
资料来源:http://itsfoss.com/screenshot-login-screen-ubuntu-linux/
第五种方案
在终端中键入:
dm-tool add-nested-seat --fullscreen
而已!像往常一样截取屏幕截图
按Alt + F4关闭登录屏幕的全屏窗口
第六种方案
只是想注意我在Ubuntu 10.04 LTS上做了一些问题 – 这是我的解决方案:
我在机器A上,我通过ssh登录到机器B:
myusername@pcA:~$ ssh pcB
myusername@pcB's password:
Linux pcB 2.6.32-44-generic #98-Ubuntu SMP Mon Sep 24 17:32:45 UTC 2012 i686 GNU/Linux
Ubuntu 10.04.4 LTS
Welcome to Ubuntu!
* Documentation: https://help.ubuntu.com/
myusername@pcB:~$
然后,我继续尝试抓取截图,但都失败了。问题可以减少到xwininfo
无法探测窗口状态:
myusername@pcB:~$ xwininfo
xwininfo: unable to open display ''
myusername@pcB:~$ sudo xwininfo
[sudo] password for myusername:
xwininfo: unable to open display ''
myusername@pcB:~$ DISPLAY=:0.0 xwininfo
No protocol specified
xwininfo: unable to open display ':0.0'
myusername@pcB:~$ DISPLAY=:0 xwininfo
No protocol specified
xwininfo: unable to open display ':0'
好吧,事实证明,由于某种原因,通过ssh正确调用X-windows是DISPLAY=:0.0 sudo xwininfo ...
– 也就是说,DISPLAY=:0.0
环境变量是第一个; sudo
排在第二位 – 然后是相应的X命令:
myusername@pcB:~$ DISPLAY=:0 sudo xwininfo
xwininfo: Please select the window about which you
would like information by clicking the
mouse in that window.
myusername@pcB:~$ DISPLAY=:0.0 sudo xwininfo -root
xwininfo: Window id: 0x109 (the root window) (has no name)
Absolute upper-left X: 0
Absolute upper-left Y: 0
Relative upper-left X: 0
Relative upper-left Y: 0
Width: 1366
Height: 768
Depth: 24
Visual: 0x21
Visual Class: TrueColor
Border width: 0
Class: InputOutput
Colormap: 0x20 (installed)
Bit Gravity State: ForgetGravity
Window Gravity State: NorthWestGravity
Backing Store State: NotUseful
Save Under State: no
Map State: IsViewable
Override Redirect State: no
Corners: +0+0 -0+0 -0-0 +0-0
-geometry 1366x768+0+0
现在我们知道xwininfo
可以探测状态,通过xwd
捕获屏幕截图也没有问题:
myusername@pcB:~$ DISPLAY=:0.0 sudo xwd -root > /tmp/shot.xwd