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

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

Построение полностью офлайн‑репозитория Debian‑пакетов в Termux с помощью apt‑ftparchive и reprepro для изолированных сетей

Termux – мощная среда эмуляции Linux для Android, позволяющая устанавливать и использовать множество пакетов Debian. Однако, в ситуациях, когда устройство Termux не имеет доступа к сети Интернет (например, при работе в изолированной сети или в целях повышения безопасности), необходимость в локальном репозитории пакетов становится критичной. В этой статье мы рассмотрим, как создать полностью офлайн‑репозиторий Debian‑пакетов в Termux с использованием инструментов apt-ftparchive и reprepro.

Предварительные требования

  • Установленный Termux на вашем Android-устройстве.
  • Достаточно места на устройстве для хранения пакетов и репозитория.
  • Доступ к компьютеру с установленным Debian или другим дистрибутивом Linux для подготовки пакетов (опционально, можно сделать все непосредственно в Termux, но удобнее на ПК).

Подготовка пакетов

Первым шагом является сбор необходимых Debian-пакетов. Вы можете скачать их с официальных зеркал Debian, используя компьютер с доступом в Интернет. Важно выбирать архитектуру пакетов, соответствующую архитектуре вашего устройства (arm, arm64, x86, x86_64). Или, если у вас есть доступ к рабочему окружению Debian, вы можете использовать apt download для скачивания нужных пакетов. Например:

apt download packagename1 packagename2 ...

Перенесите скачанные пакеты на ваше Android-устройство в Termux. Для этого можно использовать ADB (Android Debug Bridge) или любой другой удобный способ передачи файлов.

Использование apt-ftparchive

apt-ftparchive – простой инструмент для создания репозитория из директории с пакетами. Установите его в Termux:

pkg install apt-ftparchive

Создайте директорию для вашего репозитория:

mkdir /data/data/com.termux/files/home/reprepro

Скопируйте скачанные пакеты в эту директорию. Затем создайте файл Packages.gz:

apt-ftparchive packages . > Packages.gz

И файл Release (простейший вариант):

echo 'Origin: My Local Repo' > Release && 
echo 'Label: My Local Repo' >> Release && 
echo 'Suite: stable' >> Release && 
echo 'Codename: stable' >> Release && 
echo 'Architectures: arm64' >> Release && 
echo 'Components: main' >> Release && 
echo 'Description: Local Debian repository for Termux' >> Release

Скомпрессируйте его:

gzip Release

Теперь ваш репозиторий готов к использованию. Вам нужно добавить его в список источников Termux.

Использование reprepro

reprepro – более мощный инструмент для создания и управления репозиториями Debian. Он позволяет создавать несколько разделов (components) и управлять версиями пакетов. Установите его в Termux:

pkg install reprepro

Создайте директорию для вашего репозитория:

mkdir /data/data/com.termux/files/home/reprepro

Инициализируйте репозиторий:

reprepro init /data/data/com.termux/files/home/reprepro

Добавьте пакеты в репозиторий. Например, для добавления пакетов в раздел main:

reprepro include /data/data/com.termux/files/home/reprepro main *.deb

Автоматически сгенерируйте индекс:

reprepro update /data/data/com.termux/files/home/reprepro

Настройка Termux для использования локального репозитория

Отредактируйте файл sources.list:

nano /etc/apt/sources.list

Добавьте строку, указывающую на ваш локальный репозиторий. При использовании apt-ftparchive:

deb file:/data/data/com.termux/files/home/reprepro stable main

При использовании reprepro:

deb file:/data/data/com.termux/files/home/reprepro stable main

Обновите список пакетов:

apt update

Теперь вы можете устанавливать пакеты из вашего локального репозитория с помощью apt install.

Создание локальной сети (опционально)

Для более удобного управления репозиторием и переноса пакетов можно использовать локальную сеть. Например, с помощью VPN-сервера, развернутого на вашем компьютере. Это позволит вам получить доступ к Termux по IP-адресу и упростит передачу файлов. Важно, что VPN используется исключительно для создания локальной сети и не применяется для обхода каких-либо блокировок в интернете. Настройка VPN выходит за рамки данной статьи.

Заключение

В этой статье мы рассмотрели, как создать полностью офлайн‑репозиторий Debian‑пакетов в Termux с помощью apt-ftparchive и reprepro. Это позволяет использовать Termux в изолированных сетях или в ситуациях, когда доступ к Интернету ограничен. Выбор между apt-ftparchive и reprepro зависит от ваших потребностей. apt-ftparchive проще в использовании, но reprepro предоставляет больше возможностей для управления репозиторием.

Если вам требуется помощь в настройке Termux, создании локальных репозиториев или других задачах, связанных с Android и Linux, обращайтесь в РыбинскЛАБ. Мы предоставляем широкий спектр услуг по настройке и администрированию мобильных устройств и серверов.

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

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

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

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