Termux – это полноценное Linux‑окружение для Android, которое позволяет использовать привычные инструменты управления пакетами. На первый взгляд кажется, что в Termux работает только pkg, однако под капотом используется apt и dpkg. Понимание их ролей и правильное их сочетание позволяет ускорить работу, экономить место и поддерживать систему в чистоте.
Краткий обзор менеджеров
- apt – высокоуровневый интерфейс для работы с репозиториями, зависимостями и кэшом. Предназначен для массовой установки, обновления и удаления пакетов.
- pkg – оболочка над
apt, адаптированная под мобильные ограничения Termux. Добавляет удобные алиасы и автоматически настраивает репозитории. - dpkg – низкоуровневый менеджер, работающий напрямую с
.deb‑пакетами. Не управляет зависимостями и репозиториями, но незаменим для ручной установки локальных пакетов.
Работа с apt
Команды apt полностью совместимы с Debian‑подобными дистрибутивами. В Termux они работают без изменений:
apt update # обновление индексов репозиториев
apt upgrade # обновление всех установленных пакетов
apt install git vim # установка новых пакетов
apt remove curl # удаление пакета
apt clean # очистка кэша пакетов
Для ускорения сетевых запросов рекомендуется добавить опцию -o Acquire::Retries=3 и использовать быстрые зеркала (mirrors.tuna.tsinghua.edu.cn или mirrors.ustc.edu.cn).
Работа с pkg
Команды pkg – это сокращения, которые автоматически вызывают apt с предустановленными флагами. Пример:
pkg update # аналог apt update
pkg upgrade # аналог apt upgrade
pkg install python # установка Python
pkg uninstall python # удаление Python
Главное отличие – pkg автоматически добавляет репозиторий termux и проверяет совместимость с архитектурой устройства.
Работа с dpkg
Если необходимо установить локальный .deb-файл, используем dpkg:
dpkg -i mypackage.deb # установка пакета
dpkg -r mypackage # удаление пакета
dpkg -l | grep mypackage # проверка установленной версии
После установки следует выполнить apt -f install для исправления недостающих зависимостей.
Сравнительная таблица
| Функция | apt | pkg | dpkg |
|---|---|---|---|
| Управление репозиториями | Да | Да (через apt) | Нет |
| Автоматическое разрешение зависимостей | Да | Да | Нет |
| Установка локального .deb | Нет (только через apt install ./file.deb) | Нет | Да |
| Оптимизированные алиасы для Termux | Нет | Да | Нет |
| Кеширование пакетов | Да ( /data/data/com.termux/files/usr/var/cache/apt ) | Да (через apt) | Нет |
Оптимизация работы с пакетами
- Настройка зеркал – замените
/data/data/com.termux/files/usr/etc/apt/sources.listна быстрые CDN, например:sed -i 's|https://packages.termux.org/|https://mirrors.tuna.tsinghua.edu.cn/termux/|g' $PREFIX/etc/apt/sources.list - Очистка кэша – регулярно вызывайте
apt cleanилиpkg clean.apt clean && apt autoclean - Автоматическое удаление неиспользуемых зависимостей:
apt autoremove - Параллельные загрузки – в последних версиях
aptможно включитьAcquire::Queue-Mode "access";в/etc/apt/apt.conf.d/99parallel.echo 'Acquire::Queue-Mode "access";' > $PREFIX/etc/apt/apt.conf.d/99parallel - Контроль размера пакетов – перед установкой проверяйте размер:
apt show package | grep Size
Лучшие практики для постоянных пользователей Termux
- Используйте
pkgдля повседневных задач – это экономит ввод и автоматически учитывает архитектуру. - Для скриптов и CI/CD‑процессов предпочтительнее явно вызывать
apt, чтобы избежать скрытых алиасов. - При работе с локальными пакетами всегда завершаем
dpkg -iкомандойapt -f installдля исправления зависимостей. - Регулярно проверяйте наличие устаревших пакетов:
apt list --upgradable. - Встраивайте очистку кэша в свои «post‑install» скрипты, чтобы сохранять место на устройстве.
Заключение
В Termux apt, pkg и dpkg образуют три уровня управления пакетами: высокоуровневый, удобный алиас и низкоуровневый инструмент. Понимание их различий и правильное сочетание позволяет сократить время установки, минимизировать расход памяти и поддерживать систему в стабильном состоянии.
Если вам требуется более глубокая настройка окружения, автоматизация процессов или разработка собственных пакетов для Termux, команда RybinskLab готова предложить консультации, скрипты оптимизации и индивидуальные решения под ваш проект.