Como posso tirar uma captura de tela da tela de login?

29

Como posso tirar uma captura de tela da tela de login?

Eu não quero recriar minha instalação do Ubuntu em uma máquina virtual.

    
por ændrük 17.05.2011 / 19:04

8 respostas

17

Este blog pode ser útil: link

Instale o ImageMagick para a conversão do formato do arquivo de imagem abaixo:

sudo apt-get install imagemagick

Crie um script auxiliar:

echo 'DISPLAY=:0 XAUTHORITY=/var/lib/gdm/:0.Xauth xwd -root' >/tmp/shot.sh

Verifique se a tela de login está ativa (efetue logout ou reinicialize a máquina e aguarde até ver a tela de login). Faça o login no modo de texto (pressionando Ctrl-Alt-F1) ou usando SSH. Crie a captura de tela executando

sudo bash /tmp/shot.sh >/tmp/shot.xwd

Você pode fazer login agora (pressionando Ctrl-AltF7 primeiro para voltar à tela de login do GDM). Converta a captura de tela para JPEG e / ou PNG:

convert -quality 50 /tmp/shot.xwd /tmp/shot.jpg
convert /tmp/shot.xwd /tmp/shot.png

Veja a captura de tela no seu visualizador de imagens favorito.

    
por Niroshan 17.05.2011 / 19:43
11

Para 11.10 e Lightdm e depois

Você pode tentar executar unity-greeter --test-mode em um terminal. Ele exibe a tela de login na sessão. Você pode então fazer uma captura de tela da tela de login, como faz normalmente com qualquer outro aplicativo.

    
por jokerdino 11.03.2012 / 16:33
7

Você pode tentar isso:

gnome-screenshot -d 10

você não precisa instalar nada, basta digitar o comando e bloquear a tela, a tela será filmada dentro de 10 segundos após o comando ser executado.

    
por Mahmoud S. Marwad 16.01.2017 / 23:33
6

Para o Ubuntu 14.04

As respostas acima não funcionaram para mim no Ubuntu 14.04 - procurei por aí e descobri isso que funciona.

  1. Instale o ImageMagick

    sudo apt-get install imagemagick
    
  2. Crie um arquivo no seu diretório pessoal chamado shot.sh preferencialmente em sua pasta pessoal e cole o seguinte código dentro dele:

    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
    
  3. Torne-o executável

    sudo chmod +x shot.sh
    
  4. Logout do sistema. Pressione Ctrl + Alt + F1 para acessar o console (tty1) e efetuar o login. Execute o script usando este comando:

    sudo ./shot.sh
    

Ele o levará de volta à interface gráfica da tela de login (chvt 7) e, após cinco segundos, será necessário salvar a captura de tela em seu diretório pessoal com o nome de arquivo screenshot.png .

Aqui está o meu:

Fonte: link

    
por Parto 09.04.2015 / 10:24
4

Digite isto em um terminal:

dm-tool add-nested-seat --fullscreen

É isso! faça um screenshot como de costume

Pressione Alt + F4 para fechar a janela de tela inteira da sua tela de login

    
por afriend 18.03.2016 / 11:27
2

Só queria notar que eu tive um monte de problemas fazendo isso no Ubuntu 10.04 LTS com isso - aqui está a minha solução:

Estou na máquina A e faço logon na máquina B via ssh:

[email protected]:~$ ssh pcB
[email protected]'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/

[email protected]:~$ 

Em seguida, prossigo com várias tentativas para capturar a captura de tela, e todas falharam. O problema pode ser reduzido para xwininfo não sendo possível investigar o estado da janela:

[email protected]:~$  xwininfo
xwininfo:  unable to open display ''

[email protected]:~$ sudo xwininfo
[sudo] password for myusername: 
xwininfo:  unable to open display ''

[email protected]:~$ DISPLAY=:0.0 xwininfo
No protocol specified
xwininfo:  unable to open display ':0.0'

[email protected]:~$ DISPLAY=:0 xwininfo
No protocol specified
xwininfo:  unable to open display ':0'

Bem, acontece que, por algum motivo, a chamada correta para a segmentação de X-windows via ssh é DISPLAY=:0.0 sudo xwininfo ... - ou seja, a variável de ambiente DISPLAY=:0.0 vai primeiro; o sudo fica em segundo - e, em seguida, o comando X correspondente:

[email protected]:~$ DISPLAY=:0 sudo xwininfo

xwininfo: Please select the window about which you
          would like information by clicking the
          mouse in that window.

[email protected]:~$ 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

Agora que sabemos que xwininfo pode investigar o estado, também não há problema em capturar a captura de tela via xwd :

[email protected]:~$ DISPLAY=:0.0 sudo xwd -root > /tmp/shot.xwd
    
por sdaau 17.10.2012 / 15:54
0

Eu editei "/ etc / mdm / Init / Default" e adicionei:

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

antes da linha com "exit 0".

Da próxima vez que eu fizer login, eu conto até cinco, bipe, e recebo minha captura de tela em "/ root".

    
por Ikem Krueger 26.08.2014 / 03:54
0

Não há necessidade de instalar nada. Aqui está a melhor solução de todas:

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

o comando bloqueará a tela, copiará a captura de tela para a área de transferência e desbloqueará a tela novamente.

    
por Mahmoud S. Marwad 27.08.2017 / 11:15