среда, 24 июня 2015 г.

Создаем задание с помощью crontab

Небольшой пример новичкам. Пробуем в Kubuntu...





cron - это демон-планировщик задач в UNIX-подобных операционных системах, использующийся для периодического выполнения заданий в определённое время.
Частенько возникает та или иная ситуация, когда нужно запустить скрипт или программу в определенное время и cron будет удобным и простым решением. Покажу на своем примере, как это делается. Думаю, что новичкам это будет интересно и полезно...
В последнее время во многих мобильных сетях пропал полноценный безлимитный интернет, теперь мы опять вспоминаем знакомые до боли слова - "Трафик" и "Ночной безлимит", ночь начинается у них в 1:00 и не каждый может сидеть до столь позднего часа, что бы завершить сессию и запустить на закачку какие-либо данные. А потому, приходится выкручиваться в подобных ситуациях и в этом нам поможет crontab.
Открываем Терминал и создаем правила для cron от sudo (потому что отключение драйвера требует привилегий суперпользователя):
sudo crontab -e
Теперь пишем нужные нам значения.


В моем случае получилось так:
58 0 * * * /sbin/ifconfig eth1 down > /dev/null
5 1 * * * /sbin/ifconfig eth1 up > /dev/null
55 6 * * * /sbin/ifconfig eth1 down > /dev/null
И теперь от обычного пользователя создаем правило, для запуска qBittorrent:
crontab -e
6 1 * * * export DISPLAY=:0; /usr/bin/qbittorrent
Что произойдет - наш планировщик каждый день будет отключать указанный драйвер устройства eth1 в 0:58, в 1:05 запустит его снова, откроет торрент-клиент и отключит драйвер в 6:55, а мы будем спать ))
По такому же принципу можно указать скрипт для запуска, интервалы повторений и т.д. Более подробно вы можете ознакомиться с инструкцией здесь. Так же еще имеется графический интерфейс Kcron, который упростит задачу для новичков. Устанавливается из родного репозитория:
sudo apt-get install kcron
kcmshell5 kcm_cron


Комментариев нет:

Отправить комментарий