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

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

Termux для продвинутых пользователей: настройка WSL‑подобных окружений и chroot

Подробное руководство по созданию WSL‑подобных Linux‑окружений в Termux: установка proot, создание chroot, настройка пользовательского окружения и интеграция с графикой.

Termux уже давно вышел за рамки обычного эмулятора терминала на Android. Благодаря возможности запускать полноценные Linux‑дистрибутивы в режиме chroot или proot, он становится отличной альтернативой WSL для мобильных и встраиваемых устройств. В этой статье мы рассмотрим, как собрать WSL‑подобную среду, настроить её под свои задачи и обеспечить комфортную работу с графикой.

1. Почему Termux вместо WSL?

В отличие от WSL, который работает только в Windows, Termux полностью автономен и работает непосредственно на Android‑устройствах. Это открывает возможности:

  • Развертывание изолированных окружений без root‑прав.
  • Быстрый переход между различными дистрибутивами (Debian, Ubuntu, Alpine).
  • Поддержка графических приложений через X‑серверы (XServer XSDL, VNC).

Для продвинутых пользователей важна гибкость настройки и возможность автоматизировать процесс развертывания – именно это мы реализуем ниже.

2. Установка базовых инструментов

Начнём с установки пакетов, необходимых для создания chroot‑окружения. Откройте Termux и выполните:

pkg update && pkg upgrade -y
pkg install proot-distro proot git curl wget -y

Пакет proot-distro предоставляет готовые скрипты для скачивания и установки популярных дистрибутивов. При желании можно использовать debootstrap для более тонкой настройки, но в большинстве случаев proot-distro более удобен.

3. Создание WSL‑подобного окружения

Выберите дистрибутив. В примере мы развернём Ubuntu 22.04:

proot-distro install ubuntu-22.04

После установки запустите окружение:

proot-distro login ubuntu-22.04

Вы окажетесь в корневой файловой системе Ubuntu, где сможете установить любые пакеты через apt. Например, установим базовые инструменты разработки:

apt update && apt install -y build-essential git vim curl wget software-properties-common

Для более «чистого» chroot‑окружения можно воспользоваться debootstrap:

pkg install debootstrap
mkdir -p $HOME/chroot/debian
debootstrap --arch=arm64 bullseye $HOME/chroot/debian http://deb.debian.org/debian

Запуск такого окружения выглядит так:

proot --link2symlink -0 -r $HOME/chroot/debian /bin/bash --login

4. Настройка пользовательского окружения

После входа в chroot рекомендуется настроить .bashrc (или .zshrc) для удобной работы.

apt install -y zsh
chsh -s $(which zsh)

Установим oh-my-zsh:

sh -c "$(curl -fsSL https://raw.githubusercontent.com/ohmyzsh/ohmyzsh/master/tools/install.sh)" --unattended

Не забудьте добавить алиасы, которые часто используют в Termux, например:

echo 'alias ll="ls -la --color=auto"' >> ~/.zshrc

Для синхронизации файлов между Termux и chroot‑окружением удобно смонтировать домашнюю директорию:

mkdir -p /root/termux_home
proot -0 -r $HOME/chroot/debian -b $HOME:/root/termux_home /bin/bash --login

Теперь всё, что вы сохраняете в /root/termux_home, будет доступно в обычном Termux‑профиле.

5. Интеграция с Termux: автоматический запуск и сервисы

Чтобы окружение стартовало вместе с открытием Termux, создайте скрипт ~/start-ubuntu.sh:

#!/data/data/com.termux/files/usr/bin/bash
proot-distro login ubuntu-22.04 --shared-tmp --shared-home

Сделайте его исполняемым:

chmod +x ~/start-ubuntu.sh

Добавьте вызов в файл ~/.bashrc или ~/.zshrc Termux, чтобы при каждом старте открывался ваш дистрибутив.

6. Графика: X11 и VNC в Termux

Для запуска GUI‑приложений понадобится X‑сервер. Самый популярный – XServer XSDL из Google Play.

Установите XSDL, запустите его и запомните номер дисплея (обычно :0). Затем в chroot‑окружении задайте переменную окружения:

export DISPLAY=127.0.0.1:0

Установите нужные пакеты, например, лёгкий редактор gedit:

apt install -y gedit

Запуск будет выглядеть так:

gedit &

Для более надёжного доступа можно настроить VNC‑сервер (tightvncserver) и подключаться через клиент VNC на Android.

7. Оптимизация и безопасность

  • Ограничение доступа к сети. Запускайте proot с параметром --restrict-proot или используйте iptables в Termux для фильтрации трафика.
  • Кеширование пакетов. Папка /data/data/com.termux/files/usr/var/cache/apt/archives может быть смонтирована в chroot, чтобы ускорить повторные установки.
  • Автоматическое обновление. Добавьте в crontab Termux задачу, которая будет обновлять дистрибутив раз в неделю:
crontab -e
# Добавьте строку
0 3   0 proot-distro login ubuntu-22.04 -c "apt update && apt upgrade -y"

Эти меры помогут поддерживать окружение в актуальном состоянии и минимизировать потенциальные уязвимости.

Заключение

Termux предоставляет мощный набор инструментов для создания полностью изолированных Linux‑окружений, сравнимых с WSL. С помощью proot-distro, chroot и небольших скриптов вы получаете гибкую, переносимую и безопасную платформу для разработки, тестирования и даже запуска графических приложений прямо на смартфоне.

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

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

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

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

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