Termux – это мощный терминал для Android, который позволяет запускать полноценную Linux‑среду прямо на смартфоне. Одной из ключевых возможностей Termux является автоматизация повторяющихся операций: резервное копирование файлов, синхронизация данных, мониторинг системных параметров и многое другое. В этой статье мы рассмотрим, как построить надёжные автоматические сценарии с помощью встроенных средств и дополнительных пакетов.
Почему стоит автоматизировать задачи в Termux
- Экономия времени – задачи выполняются без вашего вмешательства.
- Повышенная надёжность – скрипты работают одинаково каждый раз.
- Возможность интеграции с другими Android‑приложениями (Tasker, Automate).
- Полный контроль над процессами через журналирование и уведомления.
Планировщик cron в Termux
Для периодического выполнения команд в Termux используется пакет cronie. Установите его и запустите демон:
pkg install cronie
sv-enable crond
sv start crond
После запуска демона можно редактировать таблицу cron:
crontab -e
Пример записи, которая будет выполнять скрипт backup.sh каждый день в 02:30:
30 2 /data/data/com.termux/files/home/backup.sh >> /data/data/com.termux/files/home/cron.log 2>&1
Не забудьте сделать скрипт исполняемым:
chmod +x ~/backup.sh
Создание и отладка Bash‑скриптов
Базовый шаблон скрипта, пригодный для автоматизации, выглядит так:
#!/usr/bin/env bash
set -euo pipefail
# Функция логирования
log() {
echo "$(date '+%Y-%m-%d %H:%M:%S') - $" >> "$HOME/automation.log"
}
log "Скрипт запущен"
# Ваши команды ниже
Для отладки используйте параметр -x:
bash -x ~/myscript.sh
Практический пример: резервное копирование фотографий в облако
Допустим, вы хотите каждый вечер отправлять новые фотографии в Google Drive. Для этого понадобится пакет rclone:
pkg install rclone
Настройте удалённый диск (один раз):
rclone config
Далее создаём скрипт photo_backup.sh:
#!/usr/bin/env bash
set -euo pipefail
SRC="$HOME/storage/shared/DCIM/Camera"
DEST="gdrive:photo_backup/$(date '+%Y-%m-%d')"
log() {
echo "$(date '+%Y-%m-%d %H:%M:%S') - $" >> "$HOME/photo_backup.log"
}
log "Запуск резервного копирования"
mkdir -p "$DEST"
rclone copy "$SRC" "$DEST" --progress
log "Копирование завершено"
Добавьте задачу в cron для выполнения в 23:00:
0 23 $HOME/photo_backup.sh
Интеграция с Tasker через Termux:API
Если требуется реагировать на события Android (например, подключение к Wi‑Fi), удобно использовать Termux:API совместно с Tasker.
- Установите
termux-apiв Termux:pkg install termux-api - В Tasker создайте профиль «Wi‑Fi подключен» и действие «Run Shell». В поле команды укажите, например:
termux-notification --title "Wi‑Fi" --content "Подключено к %SSID%"
Таким образом, каждый раз при подключении к сети будет отправляться уведомление, а при необходимости можно запускать любые скрипты.
Автоматическое обновление пакетов
Чтобы система оставалась актуальной, можно настроить еженедельный апдейт:
# Обновление пакетов каждую субботу в 04:00
0 4 6 pkg update -y && pkg upgrade -y >> $HOME/pkg_update.log 2>&1
Безопасность автоматических скриптов
- Ограничьте права доступа к скриптам:
chmod 700 script.sh. - Не храните пароли в открытом виде; используйте
termux-keyringили переменные окружения. - Логи проверяйте регулярно, чтобы обнаружить ошибки.
Заключение
Автоматизация в Termux открывает широкие возможности для управления Android‑устройством на уровне системного администрирования. С помощью cron, Bash‑скриптов, rclone и интеграции с Tasker вы сможете выполнять резервные копии, синхронизировать данные, мониторить состояние системы и многое другое без постоянного вмешательства.
Если вам требуется профессиональная настройка автоматизации, разработка кастомных скриптов или комплексные IT‑решения в Рыбинске, обращайтесь в RybinskLab. Наши специалисты помогут реализовать любые задачи, от простых резервных копий до сложных системных интеграций.