Como os comentaristas apontaram, o que você está tentando fazer não está muito bem definido em um servidor sem cabeçalho. O servidor Apache não envia nenhuma "imagem" da página da Web (apenas marcação HTML); a imagem que você normalmente vê é gerada pelo seu navegador, e o navegador pode renderizar a mesma página de forma diferente, dependendo do tamanho da tela (e outras coisas, como versão do navegador, configurações, etc). Se você não tiver uma tela, não há uma maneira clara de capturar uma imagem.
Com isso dito, uma solução possível (provavelmente a mais fácil) de que eu ouvi falar é o PhantomJS , um navegador sem cabeçalho: link
Eu não usei este método pessoalmente embora; sua milhagem pode variar.
Uma solução mais geral para fazer recursos gráficos em um servidor é criar uma exibição para aplicativos de GUI rodarem usando o Xvfb. Isso permitiria que você usasse gnome-screenshot
como se estivesse tentando. Para isso, comece instalando e executando o Xvfb:
sudo apt-get install xvfb
export DISPLAY=:0
Xvfb $DISPLAY -screen 0 1920x1080x24 -shmem -cc 4 &
Em seguida, instale e execute o Gnome:
sudo apt-get install gnome-panel gnome-screenshot
gnome-settings &
gnome-panel &
metacity &
Você precisará de um navegador. Qualquer coisa serve, mas vou usar o Firefox por exemplo:
sudo apt-get install firefox
Em seguida, execute o navegador apontado para a página da Web desejada (no seu caso, o servidor Apache em localhost
port 80):
firefox http://localhost &
Por fim, tire a captura de tela exatamente como você estava tentando:
gnome-screenshot
Opcionalmente, limpe os processos:
killall firefox Xvfb gnome-settings gnome-panel metacity
Como você pode ver, este método é muito mais complicado (e cheio de recursos: mais de 500 MB de instalações), mas vem com a vantagem de poder tirar uma captura de tela de qualquer aplicativo GUI como faria em um desktop e não se limita a apenas tirar screenshots de páginas da Web.