We detected you are likely not from a Russian-speaking region. Would you like to switch to the international version of the site?

  Назад к списку статей

Автоматизация задач в Termux с помощью cron и Tasker – практические сценарии

Подробный гайд по использованию cron и Tasker в Termux для автоматизации бэкапов, мониторинга, уведомлений и других задач с практическими примерами.

Termux – это терминальное приложение для Android, позволяющее работать с полноценной Linux‑окружением. Одним из самых востребованных направлений является автоматизация повторяющихся задач: резервное копирование, мониторинг системных ресурсов, отправка уведомлений и т.д. В статье рассматриваются два основных инструмента – планировщик cron и приложение Tasker – а также их совместное использование.

Почему именно cron и Tasker?

  • cron – проверенный временем планировщик, работающий в фоне и поддерживающий привычный синтаксис crontab.
  • Tasker – визуальный автоматизатор Android, позволяющий реагировать на события системы, геопозицию, состояние батареи и многое другое.
  • Комбинация этих инструментов дает возможность запускать Linux‑скрипты из cron, а также инициировать их из «умных» триггеров Tasker.

Установка и настройка cron в Termux

В базовой установке Termux пакет cron отсутствует, его необходимо установить из репозитория.

pkg update && pkg upgrade
pkg install cronie

После установки запускаем демон:

sv-enable crond
sv start crond

Создаём пользовательский crontab:

crontab -e

В открывшемся редакторе (по умолчанию nano) добавляем задания в привычном формате минуты часы день_месяца месяц день_недели команда. Пример – ежедневный бэкап папки ~/scripts в облако:

0 2    rsync -avz ~/scripts/ /sdcard/Backup/scripts/

Базовые правила написания cron‑заданий в Termux

  • Указывайте полный путь к исполняемому файлу и к файлам‑данным, т.к. среда cron не наследует переменные PATH из интерактивного сеанса.
  • Для скриптов на Python, Node.js и др. явно указывайте интерпретатор, например /data/data/com.termux/files/usr/bin/python3.
  • Перенаправляйте вывод в лог‑файл, чтобы отследить возможные ошибки: > /data/data/com.termux/files/home/cron.log 2>&1.

Tasker и плагин Termux:Tasker

Tasker умеет запускать любые команды, но для корректного взаимодействия с Termux рекомендуется использовать официальное расширение Termux:Tasker. Оно обеспечивает прямой доступ к окружению Termux без необходимости эмулировать ввод‑вывод.

Установка:

pkg install termux-tasker

После установки в Tasker появляется действие Run Command (Termux). В качестве команды можно указать любой скрипт или однострочную инструкцию.

Практические сценарии

1. Ежедневный бэкап и отправка в облако

Комбинация cron и Tasker позволяет не только создать резервную копию, но и автоматически отправить её в Google Drive через Tasker.

  1. Создаём скрипт ~/backup.sh:
#!/data/data/com.termux/files/usr/bin/bash
TIMESTAMP=$(date +%Y%m%d_%H%M)
BACKUP_DIR="/sdcard/Backup/scripts_$TIMESTAMP"
mkdir -p "$BACKUP_DIR"
rsync -avz ~/scripts/ "$BACKUP_DIR/"
echo "$BACKUP_DIR" > /data/data/com.termux/files/home/last_backup_path.txt
  1. Добавляем в crontab запуск скрипта в 02:00:
0 2    /data/data/com.termux/files/home/backup.sh >> /data/data/com.termux/files/home/cron.log 2>&1
  1. В Tasker создаём профиль Event → File → File Modified, указываем путь к last_backup_path.txt. При изменении файла запускаем действие Run Command (Termux) с командой:
termux-share -a send -c text/plain -t "$(cat /data/data/com.termux/files/home/last_backup_path.txt)"

Tasker открывает окно выбора приложения для отправки (Google Drive, Dropbox и т.д.).

2. Мониторинг заряда батареи и уведомление

Tasker реагирует на изменение уровня батареи, а cron собирает статистику.

  • В Tasker создаём профиль Event → Power → Battery Level, условие «меньше 20%». Действие – запуск скрипта ~/alert_low_battery.sh:
#!/data/data/com.termux/files/usr/bin/bash
termux-notification --title "⚠️ Низкий заряд" --content "Текущий уровень: $(termux-battery-status | jq -r .percentage)%"
  • В cron добавляем запись, собирающую средний заряд за сутки (в 23:59):
59 23    termux-battery-status | jq -r .percentage >> /data/data/com.termux/files/home/battery_daily.log

3. Автоматическая очистка кэша и логов

Для поддержания свободного места удобно запускать очистку раз в неделю.

0 4   0 find /data/data/com.termux/files/home -type f -name ".log" -mtime +7 -delete

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

termux-notification --title "🧹 Очистка завершена" --content "Старые логи удалены"

4. Запуск скриптов по геопозиции

Tasker умеет определять местоположение. При прибытии в офис (GPS‑координаты) можно автоматически запустить скрипт, который подключит VPN и синхронизирует файлы.

#!/data/data/com.termux/files/usr/bin/bash
vpn_connect
rsync -avz ~/work/ /sdcard/OfficeSync/

В Tasker создаём профиль Location → Near с радиусом 100 м и указываем действие Run Command (Termux) со ссылкой на данный скрипт.

5. Интеграция cron‑заданий в Tasker UI

Если требуется управлять расписанием без редактирования crontab вручную, можно создать в Tasker переменную %CRON_ENTRY и использовать действие Run Command (Termux) для записи её в файл crontab.tmp, а затем выполнить:

crontab crontab.tmp && rm crontab.tmp

Отладка и лучшие практики

  • Проверяйте вывод cron.log после первого запуска задания.
  • Для отладки используйте termux-battery-status, termux-wifi-connectioninfo и другие утилиты Termux.
  • Не забывайте о разрешениях: WRITE_EXTERNAL_STORAGE и READ_EXTERNAL_STORAGE нужны для доступа к /sdcard.
  • Регулярно обновляйте пакеты: pkg update && pkg upgrade.

Заключение

Комбинация cron и Tasker открывает широкие возможности автоматизации в Termux: от простых расписаний до условных сценариев, зависящих от состояния устройства, геопозиции и внешних сервисов. Правильная настройка пути, логирование и тестирование позволяют создать надёжную систему, экономящую время и ресурсы.

Если вам нужен профессиональный аудит ваших скриптов, настройка сложных цепочек автоматизации или обучение работе с Termux, команда RybinskLab готова помочь. Мы предоставляем услуги консалтинга, разработку кастомных решений и поддержку инфраструктуры Android‑устройств.

* Текст статьи подготовлен и структурирован с использованием технологий искусственного интеллекта. Проверен и доработан перед публикацией.

Нужна помощь с настройкой Termux, Linux и серверов?

Я оказываю ИТ-услуги: настройка серверов, автоматизация, безопасность, помощь с Linux и инфраструктурой. Материалы сайта — только в ознакомительных и образовательных целях.

Связаться со мной
Поддержать проект