Гид по технологиям

Как сделать скриншот экрана входа в Linux

• 5 min read • Linux • Обновлено 30 Nov 2025
Скриншот экрана входа в Linux
Скриншот экрана входа в Linux

Важное примечание: многие современные дистрибутивы по умолчанию работают на Wayland (например, GNOME в Ubuntu). Методы ниже ориентированы на X11/Xorg и логин-менеджеры, которые используют X-сессии.

Зачем это нужно

Скриншот экрана входа полезен для документации, бэкапа визуальных настроек, демонстрации кастомных тем или для отчёта о баге в дисплей-менеджере. Обычные инструменты снятия экрана работают в пользовательской сессии и не могут захватить экран до входа.

Основные подходы

  • Виртуальная машина — самый простой и безопасный путь: запустите образ с тем же окружением и снимите экран средствами гипервизора.
  • Скрипт, работающий на хосте — универсальный метод для X11: подключается к корню X-сервера логин-менеджера и сохраняет изображение. Требует прав root и доступа к файлам XAUTHORITY.

Быстрый вариант: виртуальная машина

Если вам нужно просто получить изображение и вы можете воспроизвести окружение в виртуальной машине (VirtualBox, QEMU/virt-manager и т.д.), используйте встроенные инструменты гипервизора для снятия скриншота. Это не требует вмешательства в реальную систему и работает независимо от Wayland/Xorg.

Метод со скриптом (для X11)

Этот метод захватывает экран логин-менеджера непосредственно из той же машины. Он работает при условии использования X11 (Xorg) и логин-менеджеров, которые хранят XAUTHORITY в общедоступном месте (например, GDM или LightDM). Он не работает под Wayland.

Требования

  • Сессия логина использует Xorg, не Wayland.
  • Наличие утилиты xwd и ImageMagick (для конвертации форматов).
  • Права root для доступа к файлу XAUTHORITY или возможность временно сменить права.

Установка ImageMagick

В Debian/Ubuntu-подобных системах:

sudo apt update
sudo apt install imagemagick x11-apps

Пакет x11-apps содержит утилиту xwd; в некоторых дистрибутивах xwd может идти в отдельном пакете.

Принцип работы скрипта

  1. Переключаемся на виртуальную консоль с экраном логина (обычно tty1..tty7).
  2. Подключаемся к X-серверу логин-менеджера, используя переменные DISPLAY и XAUTHORITY.
  3. Выполняем xwd -root, результат записываем в файл .xwd.
  4. Конвертируем .xwd в PNG с помощью convert (ImageMagick).

Пример скрипта для GDM (примерная форма)

Создайте файл, например loginscreen.sh, и сделайте его исполняемым. Путь к XAUTHORITY может быть /var/lib/gdm/:0.Xauth или /var/lib/gdm3/:0.Xauth — проверьте в вашей системе.

#! /bin/bash
# Пример для GDM (отредактируйте путь к XAUTHORITY под вашу систему)
chvt 1
# Используйте правильный DISPLAY и XAUTHORITY. Часто DISPLAY=:0
DISPLAY=:0 XAUTHORITY=/var/lib/gdm3/:0.Xauth xwd -root

Пример для LightDM (путь к XAUTHORITY может отличаться):

#! /bin/bash
# Пример для LightDM
chvt 1
DISPLAY=:0 XAUTHORITY=/var/run/lightdm/root/:0 xwd -root

Примечание: команда chvt 1 переводит вас на виртуальную консоль, где обычно отображается экран входа; номера консоли зависят от вашей конфигурации (часто экран X находится на tty7 или tty1).

Сделайте скрипт исполняемым:

chmod +x loginscreen.sh

Выполнение и сохранение вывода

Когда вы увидите экран входа, переключитесь на текстовую консоль (например, Ctrl+Alt+F1 или Ctrl+Alt+F3 — у разных систем по-разному), войдите в свой аккаунт и выполните скрипт.

Важно: простая команда

sudo ./loginscreen.sh > login-screenshot.xwd

может не записать файл с правами root корректно из-за того, что перенаправление выполняется оболочкой текущего пользователя. Надёжный способ — выполнить запись от root через sh -c:

sudo sh -c './loginscreen.sh > /home/youruser/login-screenshot.xwd'

Или выполните скрипт без sudo, а внутри скрипта используйте sudo для xwd при необходимости.

Конвертация в PNG и исправление прав

После получения login-screenshot.xwd сконвертируйте его в PNG:

sudo chown youruser:youruser /home/youruser/login-screenshot.xwd
convert /home/youruser/login-screenshot.xwd /home/youruser/login-screenshot.png

После этого вернитесь в графическую сессию (обычно Ctrl+Alt+F7 или Ctrl+Alt+F2 — зависит от системы) и откройте PNG.

Когда этот метод не сработает

  • Wayland: большинство современных GNOME-сессий по умолчанию используют Wayland, и вышеописанный подход не применим.
  • Ограничения прав: если XAUTHORITY защищён и его нельзя прочитать, придётся запускать скрипт от root или изменять права — будьте осторожны с безопасностью.
  • Логин-менеджер запускается в нестандартной конфигурации или в контейнере — пути и DISPLAY могут отличаться.

Альтернативные подходы

  • Используйте виртуальную машину с копией окружения и снимайте экран средствами гипервизора.
  • Используйте аппаратную камеру/телефон — быстро, но не всегда даёт нужное качество.
  • Если доступна служба удалённого администрирования (VNC/RDP) и она работает до входа — можно подключиться удалённо и снять скрин.

Ментальные модели и простая эвристика

  • Rule of thumb: если вы видите логин-менеджер как X-сессию — xwd + XAUTHORITY сработают. Если вы видите Wayland — переходите на VM/удалённый доступ.
  • Всегда проверьте, какой процесс отвечает за дисплей: ps aux | grep -E ‘gdm|gdm3|lightdm|sddm’.

Роль‑ориентированные чек-листы

Администратор:

  • Проверить, Xorg или Wayland.
  • Найти путь к XAUTHORITY у дисплей-менеджера.
  • Подготовить безопасное место для вывода и работы с правами.

Разработчик / Документация:

  • Воспроизвести окружение в VM, если требуется повторяемость.
  • Сделать скриншот в нескольких разрешениях, если нужна поддержка разных экранов.

Пользователь безопасности:

  • Не менять права на системные файлы навсегда.
  • Удалять созданные временные файлы с правами root после работы.

Критерии приёмки

  • Скриншот показывает полный экран логина без артефактов.
  • Файл в формате PNG читается стандартными просмотрщиками.
  • Скрипт не оставляет открытых прав доступа на системные файлы.

Типичные ошибки и их исправление

  • Проблема: пустой или чёрный файл .xwd. Причина: неверный DISPLAY или XAUTHORITY. Проверьте значения и попробуйте посмотреть процессы GDM/LightDM и их окружение.
  • Проблема: перенаправление не сохраняет файл. Решение: используйте sudo sh -c ‘… > file’ или выполните команду от root.
  • Проблема: работает в локальной сессии, но не на экране входа. Убедитесь в переключении на правильную виртуальную консоль (Ctrl+Alt+Fx).

Безопасность и приватность

  • Логи и файлы XAUTHORITY содержат ключи доступа к X-серверу. Не распространяйте их.
  • Если вы временно меняете права доступа — восстановите исходные права сразу после завершения задачи.

Быстрый чек-лист действий (командная последовательность)

  1. Установить утилиты: sudo apt install imagemagick x11-apps
  2. Подготовить скрипт loginscreen.sh с корректным XAUTHORITY
  3. chmod +x loginscreen.sh
  4. Выйти в экран входа и переключиться в текстовую консоль (Ctrl+Alt+Fx)
  5. Выполнить: sudo sh -c ‘./loginscreen.sh > /home/youruser/login-screenshot.xwd’
  6. sudo chown youruser:youruser /home/youruser/login-screenshot.xwd
  7. convert /home/youruser/login-screenshot.xwd /home/youruser/login-screenshot.png
  8. Вернуться в графику и проверить PNG

Заключение

Сделать скриншот экрана входа в Linux возможно, но подход зависит от используемой графической подсистемы. Для X11 — надежный и повторяемый путь через xwd и XAUTHORITY. Для Wayland — предпочитайте виртуальную машину, удалённый доступ или специализированные инструменты дисплей-менеджера. Всегда учитывайте безопасность при работе с системными файлами.

Скриншот экрана входа

Напишите свой скрипт

Вход в терминал из экрана входа

Создание финального скриншота

Результат процесса снятия скриншота

Поделиться: X/Twitter Facebook LinkedIn Telegram
Автор
Редакция

Похожие материалы

Несколько аккаунтов Skype: Multi Skype Launcher
Программное обеспечение

Несколько аккаунтов Skype: Multi Skype Launcher

Журнал для работы: повысить продуктивность
Productivity

Журнал для работы: повысить продуктивность

Персональные звуки уведомлений на Android
Android.

Персональные звуки уведомлений на Android

Скачивание шоу Hulu для офлайн‑просмотра
Стриминг

Скачивание шоу Hulu для офлайн‑просмотра

Microsoft Start: персонализированная новостная лента
Новости

Microsoft Start: персонализированная новостная лента

Как изменить имя в Epic Games быстро
Гайды

Как изменить имя в Epic Games быстро