Виртуальный X Server XVFB
Делаем скриншот сайта из консоли сервера ;)
Сегодня я расскажу вам необычную историю, попросили меня проследить за голосованием на одном из сайтов. т.к. бывает за ночь один из кандидатов как прибавить 1-2 тыщи голосов, а потом весь день тишина…
что б доказать явный косяк делаем просто. снимаем скриншот сайта каждую минуту и смотрим что голоса не постепенно копятся, а бах и всё.
В тырнете куча мануалов как сделать это на атвомате но если у нас установлен Х-сервер. но у меня вот так сложилась что ни на одном сервере его нету.
Но не беда есть есть Fake Xserver завётся он xvfb Устанавливаем
aptitude install xvfb
при тестовом запуске
Xvfb :99 -ac
он будет ругаться на кучу всего
[dix] Could not init font path element /usr/share/fonts/X11/misc, removing from list! [dix] Could not init font path element /usr/share/fonts/X11/cyrillic, removing from list! [dix] Could not init font path element /usr/share/fonts/X11/100dpi/:unscaled, removing from list! [dix] Could not init font path element /usr/share/fonts/X11/75dpi/:unscaled, removing from list!
Исправляем это, устанавливаем всё нам необходимое
sudo aptitude install x11-xkb-utils sudo aptitude install xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic sudo aptitude install xserver-xorg-core
Также нам нужен будет файрфокс, для создания скриншотов.
sudo aptitude install firefox
Теперь нам надо поставить вот такую утилитку
CutyCapt — для генерации картинок с виртулаьного Хсервера. sudo apt-get update sudo apt-get -y install build-essential sudo apt-get install xfs xfonts-scalable xfonts-100dpi sudo apt-get install libgl1-mesa-dri sudo apt-get install subversion libqt4-webkit libqt4-dev g++
Создаём каталог временный где угодно (/home/username/CutyCapt например), в нём выполняют команды
svn co https://cutycapt.svn.sourceforge.net/svnroot/cutycapt cd cutycapt/CutyCapt qmake make
всё теперь у нас есть CutyCapt.
можно пробовать 🙂
создаём файл
touch screenner.sh
в него кидаем вот такой код
#!/bin/bash
xvfb-run --server-args="-screen 0, 1024x768x24" /home/developer/scr/cutycapt/CutyCapt/CutyCapt --url=http://www.google.com --out=/var/exchange/screensite/date +%F-%H-%M
.png
Мы запускаем виртуальный сервер с параметрами (0 скрин) указываем разрешение (если сайт длинный можно указать хоть 2000 во втором параметре)
/home/developer/scr/cutycapt/CutyCapt/ — это путь до CutyCap там мы делали qmake и make
Ну и куда сохранить, мне нужно было дату + время ставить.
Вот и всё готово. Источник: