Как я могу сделать скриншот экрана входа в систему?

Как сделать снимок экрана входа в систему?

Я не хочу воссоздавать установку Ubuntu на виртуальной машине.

33
задан 17 May 2011 в 21:04

10 ответов

Этот блог может быть полезен: 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

Просмотр снимка экрана в любимой программе просмотра изображений.

18
ответ дан 17 May 2011 в 21:04

Для 11.10 и Lightdm и более поздних версий

Вы можете попробовать запустить unity-greeter --test-mode в терминале. Он отображает экран входа в систему в рамках сеанса. Затем вы можете сделать снимок экрана с экраном входа в систему, как обычно делаете с любым другим приложением.

enter image description here

12
ответ дан 17 May 2011 в 21:04

Просто хотел отметить, что у меня было несколько проблем с этим на 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-окон через ssh - ДИСПЛЕЙ =: 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
4
ответ дан 17 May 2011 в 21:04

Вы можете попробовать следующее:

gnome-screenshot -d 10

вам не нужно ничего устанавливать, просто введите команду и заблокируйте экран, экран будет снят в течение 10 секунд после выполнения команды.

Более того .. команда заблокирует экран, скопирует снимок экрана в буфер обмена и снова разблокирует экран. Само собой.

gnome-screensaver-command -l && sleep 2 && gnome-screenshot -c && loginctl unlock-session

screenshot of Ubuntu lock screen

12
ответ дан 17 May 2011 в 21:04

Введите это в терминал:

dm-tool add-nested-seat --fullscreen

Вот и все! сделайте снимок экрана как обычно

Нажмите Alt + F4, чтобы закрыть полноэкранное окно экрана входа в систему

8
ответ дан 17 May 2011 в 21:04

Я отредактировал "/ etc / mdm / Init / Default" и добавил:

scrot -d 5 -e 'mv $ f / root' &

перед строкой с "exit 0".

В следующий раз, когда я вхожу в систему, я считаю до пяти, звуковой сигнал, и я получил свой снимок экрана в "/root ".

0
ответ дан 17 May 2011 в 21:04

Не нужно ничего устанавливать. Здесь вы найдете лучшее решение:

gnome-screensaver-command -l && sleep 2 && gnome-screenshot -c && loginctl unlock-session

команда заблокирует экран, скопирует снимок экрана в буфер обмена и снова разблокирует экран.

enter image description here

0
ответ дан 17 May 2011 в 21:04

Для Ubuntu 14.04

Вышеуказанные ответы не работали для я в Ubuntu 14.04 - я поискал и нашел, что это работает.

  1. Установить ImageMagick

      sudo apt-get install imagemagick
     
  2. Создайте в домашнем каталоге файл с именем shot.sh , желательно в домашней папке, и вставьте в него следующий код:

      chvt 7;
      спать 5 сек;
      DISPLAY =: 0 XAUTHORITY = / var / run / lightdm / root /: 0 xwd -root -out ~ / screenshot.xwd;convert ~ / screenshot.xwd ~ / screenshot.png;
      rm ~ / screenshot.xwd
     
  3. Сделать исполняемым

      sudo chmod + x shot.sh
     
  4. Выход из системы. Нажмите Ctrl + Alt + F1 , чтобы перейти на консоль (tty1) и войти в систему. Запустите сценарий с помощью этой команды:

      sudo ./shot.sh
     

Вы вернетесь к графическому интерфейсу экрана входа в систему (chvt 7) и через пять секунд сохраните снимок экрана в вашем домашнем каталоге с именем файла screenshot.png .


Вот это мой:

enter image description here

Источник: Как сделать снимок экрана входа в систему в Ubuntu Linux

7
ответ дан 17 May 2011 в 21:04

Для Lubuntu 20.04 вы можете использовать SDDM-версию ответа jokerdino , изменив тему. Выполните эту команду, чтобы отобразить приветствующего в вашем сеансе:

sddm-greeter --test-mode --theme /usr/share/sddm/themes/lubuntu

Нажмите клавишу экрана печати, выберите нужную область и сохраните. Не нужно выходить из системы.

3
ответ дан 5 January 2021 в 23:53

Для Ubuntu с GDM3 в качестве диспетчера отображения

Я адаптировал ответы @Niroshan, @Parto и @sdaau для работы с последними версиями Ubuntu, такими как 19.04 (Disco Dingo) и 20.04 (фокальная ямка). Это действительно простой процесс, как показано ниже.

Во-первых, вам нужно установить пакет imagemagick, в котором есть все программы, которые будут использоваться в сценарии для съемки.

sudo apt install imagemagick

Во-вторых, вам нужно будет установить создайте файл и вставьте содержимое сценария, который изменяет виртуальную консоль на tty gdm3, подождите 10 секунд и, когда изображение загрузится на экран, он сделает снимок всего окна в желаемом формате.

#!/usr/bin/env bash
chvt 1
sleep 10
DISPLAY=:0.0 \
XAUTHORITY=/run/user/125/gdm/Xauthority \
import -window root gdm_shot.png

Как видите, сценарий устанавливает переменную $ DISPLAY равным номеру дисплея, который использует gdm3, а также устанавливает переменную $ XAUTHORITY в файл, используемый gdm3 для получения доступа к его X сервер. Это немного отличается от предыдущих ответов, потому что gdm3 изменил свой номер отображения и место, где он хранит свой файл Xauthority. Это было немного сложно выяснить.

Мы использовали команду imagemagick import вместо xwd, потому что она не просто делает снимок, а конвертирует его, например, в .jpg или .png за один раз.

Наконец, , после того, как вы сделаете скрипт исполняемым, например chmod + x gdm_screenshot.sh , вам придется выйти из текущего сеанса gnome и перейти на любую доступную консоль (tty), нажав Ctrl + Alt + F2 , например. После этого вам нужно будет войти в систему и запустить скрипт от имени пользователя root с помощью sudo ./gdm_screenshot.sh .

. В результате вы получите файл изображения .png вашего экрана GDM3 в каталоге где вы запускаете скрипт.


Вот скриншот, который я сделал при первом запуске этого скрипта.

enter image description here

1
ответ дан 5 January 2021 в 23:53

Другие вопросы по тегам:

Похожие вопросы: