Как я могу сделать скриншот экрана входа в систему?
Я не хочу воссоздавать мою установку Ubuntu на виртуальной машине.
Как я могу сделать скриншот экрана входа в систему?
Я не хочу воссоздавать мою установку 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
Просмотр снимка экрана в вашем любимом просмотрщике изображений.
sudo sh -c 'sleep 5s; xwd -display :0 -root | convert - screenshot.png'
с виртуальной консоли и переключился на экран входа в систему во время 5-секундного сна.
Для 11.10 и Lightdm и позже
Вы можете попробовать запустить unity-greeter --test-mode
в терминале. Он отображает экран входа в систему в течение сеанса. Затем вы можете сделать снимок экрана входа в систему, как вы обычно делаете с любым другим приложением.
Вы можете попробовать это:
gnome-screenshot -d 10
Вам не нужно ничего устанавливать, просто введите команду и заблокируйте экран, экран будет снят в течение 10 секунд после выполнения команды.
Более того, команда заблокирует экран, скопирует снимок экрана в буфер обмена и снова разблокирует экран. Все само собой.
gnome-screensaver-command -l && sleep 2 && gnome-screenshot -c && loginctl unlock-session
Ответы выше не сработали для меня в 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, и я вхожу в машину B через SSH:
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'
Что ж, получается, что по какой-то причине правильный вызов для таргетинга на X-windows через ssh 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
Я отредактировал "/ etc / mdm / Init / Default" и добавил:
scrot -d 5 -e 'mv $f /root' &
перед строкой с «выходом 0».
При следующем входе в систему я считаю до пяти, подаю звуковой сигнал и получаю свой скриншот в "/ root".