X
    Categories: ПрактикумСоветы и хитростиСофт

Scrot или вариант для контроля за пользователем


Иногда появляется необходимость иметь контроль за происходящим на вашем компьютере, когда вас нет дома, за работниками какой-нибудь компании, за действиями детей и т.д. Для операционной системы Windows существует большое количество программ, которые могут следить за пользователем (делать скриншоты экрана, перехватывать все нажатия клавиш, делать снимки с web-камеры и т.д.). Это к примеру утилита Mipko Employee Monitor (http://www.mipko.ru/employee-monitor), StaffCop, Maxapt QuickEye и другие. А как же в данной проблеме нам поможет Убунту?

Для того, чтобы создавать снимки всего происходящего на Рабочем столе воспользуемся консольной программой scrot. Ее основное назначение – создание скриншотов. Но если создать скрипт и добавить его в Автозагрузку, то мы получим отличный инструмент для автоматических снимков через определенный промежуток времени.

Установим программу командой в Терминале:

sudo apt-get install scrot

Если ввести в Терминале команду

scrot



и нажать клавишу Enter, то в вашем Домашнем каталоге появится снимок экрана в формате .png с именем вида:

2014-12-28-002512_1280x1024_scrot.png

Для начала разберем основные параметры(ключи) программы scrot:

-d (delay) – количество секунд, через которое будет сделан снимок.
-s – если применить данный ключ, то можно сделать снимок нужного окна просто кликнув мышкой на нем.
-q – возможность регулировки качества изображения. Диапазон от 1 до 100. Например: scrot -q 70
-t – вместе с оригинальным снимком создается его миниатюра. Например: scrot -t 25%

Если нужно сделать скриншот в определенный каталог, то нужно указать путь к каталогу и задать имя сохраняемого файла. В итоге команда будет такой:

scrot ~/Snapshot/pictures.png

Еси хотите сохранить в формате .jpg, то просто дописываем его после имени файла. В итоге команда будет следующей:

scrot -q 30 ~/Snapshot/pictures.jpg

А теперь приведу команду, которая сможет делать снимки автоматически:

while true; do scrot -d 5 -q 50 '%Y-%m-%d-%H:%M:%S.jpg' -e 'mv $f ~/Snapshot/'; done

-d 5 – через сколько секунд будет сделан следующий снимок;
-q 50 – качество скриншота;
%Y-%m-%d-%H:%M:%S.jpg – формат имени (дата + точное время создания файла) файла .jpg;
~/Snapshot/ – каталог для сохранения изображений.

Чтобы завершить процесс нажмите “Ctrl + Z”.

Теперь создадим скрипт на базе этой команды. Откроем текстовый редактор, например Gedit, и вставим следующий текст:

#!/bin/bash
while true;
do
scrot -d 5 -q 50 '%Y-%m-%d-%H:%M:%S.jpg' -e 'mv $f ~/Snapshot/';
done

Сохраним этот файл в Домашней директории и дадим ему имя, например, Autoshot.sh
Сделаем его исполняемым. Выполним в Терминале команду:

chmod +x ~/Autoshot.sh

либо просто кликаем по сохраненному файлу правой кнопкой мыши – Свойства. Переходим на вкладку Права и отмечаем пункт – Разрешить выполнение файла как программы.

Конечно объем каталога со снимками через время будет очень большой, поэтому советую выбрать сохраняемый формат файла .jpg и качество (-q) от 40. Ну и нужно периодически чистить данный каталог.

Теперь просто нужно добавить скрипт Autoshot.sh в Автозагрузку и все. Надеюсь как это делать вы в курсе.


admin-dm2003: