Запуск Linux на Android: все рабочие способы от Termux до полноценной Ubuntu

Запуск Linux на Android начинается с выбора метода: если на устройстве нет root-доступа, единственный рабочий вариант — Termux с proot-окружением, а попытка развернуть chroot без прав суперпользователя закончится ошибкой Operation not permitted на этапе монтирования. Поэтому первым делом проверьте, есть ли на смартфоне root: установите любой root-checker из магазина приложений или выполните в терминале команду su — если появляется запрос на предоставление прав, root есть.

Android сам построен на ядре Linux, но пользовательского окружения GNU в нём нет: нет glibc, привычного менеджера пакетов и стандартной иерархии каталогов. Именно эту прослойку и восполняют способы, описанные ниже. Разберём три подхода — от простого эмулятора терминала до полноценной Ubuntu с графическим рабочим столом.

Способ 1: Termux — Linux-окружение без root

Termux — это эмулятор терминала с собственным репозиторием пакетов, который работает на стоковом Android без каких-либо модификаций системы. Устанавливается он из F-Droid или GitHub-репозитория проекта; версия в Google Play давно не обновляется, поэтому лучше брать свежую сборку с официальных источников.

После установки выполните обновление пакетов:

pkg update && pkg upgrade

Дальше можно ставить привычные инструменты: pkg install python, pkg install git, pkg install openssh. Для доступа к файлам смартфона выполните termux-setup-storage — в домашней папке появится каталог storage с привязкой к общей памяти устройства.

Способ 2: полноценный дистрибутив через proot-distro

Если нужна не просто командная строка, а настоящая Ubuntu, Debian или Arch Linux, внутри Termux есть пакет proot-distro. Он разворачивает корневую файловую систему дистрибутива в изолированном каталоге без root-прав — за счёт прослойки proot, которая эмулирует привилегированные вызовы.

Порядок установки Ubuntu:

pkg install proot-distro

proot-distro install ubuntu

proot-distro login ubuntu

После входа вы окажетесь в полноценной Ubuntu с apt. Внутри можно ставить компиляторы, серверы баз данных, среды разработки. Учтите: proot-окружение работает заметно медленнее нативного chroot, особенно на операциях с файловой системой — это плата за отсутствие root.

☑️ Проверка готовности к установке дистрибутива

Выполнено: 0 / 5

Способ 3: chroot с root-доступом

При наличии root (например, через Magisk) доступен самый быстрый метод — классический chroot. Здесь дистрибутив монтируется напрямую в системные каталоги, без эмуляции, поэтому производительность близка к нативной. Обычно используют приложения-установщики вроде Linux Deploy, которые автоматизируют создание образа, монтирование и запуск SSH-сервера.

⚠️ Внимание: разблокировка загрузчика и получение root аннулируют гарантию на большинстве устройств и могут привести к «окирпичиванию» при ошибке. Перед любыми модификациями сделайте резервную копию данных и изучите инструкции именно для вашей модели — процедура различается у разных производителей.

Общая логика chroot-установки выглядит так: создаётся файл-образ или каталог с rootfs дистрибутива, в него монтируются /proc, /sys и /dev, после чего выполняется вход через chroot. Приложения-установщики делают это одной кнопкой, но под капотом происходит именно это.

Сравнение методов запуска

Выбор зависит от задачи: для скриптов и SSH хватит Termux, для разработки — proot-distro, для максимальной производительности — chroot.

КритерийTermuxproot-distrochroot (root)
Root-доступНе нуженНе нуженОбязателен
ПроизводительностьВысокаяСредняяМаксимальная
Полноценный дистрибутивНетДаДа
Графический интерфейсЧерез VNCЧерез VNC/XServerЧерез VNC/XServer
Риск для системыНулевойНулевойСредний
📊 Какой способ запуска Linux на Android вы используете или планируете?
Termux — хватает терминала
proot-distro — нужен полноценный дистрибутив
chroot с root — важна скорость
Только выбираю, ещё не пробовал

Графический интерфейс: рабочий стол Linux на смартфоне

Командная строка — не предел. Внутри любого из окружений можно поднять лёгкое окружение рабочего стола (XFCE, LXQt) и подключиться к нему через VNC-клиент. Схема такая: в Linux-окружении ставится VNC-сервер (например, TigerVNC), запускается сессия командой vncserver, а на Android открывается VNC-viewer с подключением к localhost:5901.

apt install xfce4 tigervnc-standalone-server

vncserver :1

Альтернатива — приложение XServer XSDL, которое поднимает X-сервер прямо на Android. Тогда в терминале указывается переменная export DISPLAY=:0, и графические приложения выводятся без VNC-прослойки. На практике VNC стабильнее, а XServer иногда даёт меньшую задержку — стоит попробовать оба.

⚠️ Внимание: пароль VNC-сервера передаётся в открытом виде, если подключение идёт по сети. Используйте графический доступ только через localhost внутри устройства или настройте SSH-туннель — не выставляйте VNC-порт в локальную сеть без шифрования.

Почему нельзя просто поставить Linux вместо Android

Технически на некоторых устройствах возможна установка нативного Linux (проекты postmarketOS, Ubuntu Touch), но список поддерживаемых моделей ограничен, а драйверы камеры, модема и графики часто работают нестабильно или не работают вовсе. Для большинства пользователей контейнерный запуск поверх Android — единственный практичный вариант: система остаётся нетронутой, а Linux-окружение можно удалить одной командой.

Типичные проблемы и их решение

Чаще всего пользователи сталкиваются с тем, что Android «убивает» Termux в фоне. Это работа агрессивной оптимизации батареи. Решение: в настройках системы найдите Termux в списке приложений и отключите для него ограничение фоновой активности, а также выполните в терминале termux-wake-lock, чтобы удерживать процессор активным.

  • 🔧 Ошибка «permission denied» при установке пакетов — проверьте, что команда выполняется внутри окружения дистрибутива, а не в голом Termux, и что apt запущен от нужного пользователя.
  • 💾 Не хватает места при установке дистрибутива — rootfs Ubuntu занимает гигабайты; очистите кэш или перенесите данные, если устройство поддерживает это.
  • 🌐 Нет интернета внутри контейнера — проверьте содержимое /etc/resolv.conf: иногда DNS-серверы не прописываются автоматически, и их нужно указать вручную.
  • 🖥️ Чёрный экран в VNC-клиенте — обычно означает, что сессия запущена без оконного менеджера; убедитесь, что в скрипте запуска указан startxfce4 или аналог.
  • 🔋 Сильный нагрев и разряд — компиляция и рендеринг нагружают все ядра; ограничьте фоновые задачи и не запускайте тяжёлые процессы на батарее.

FAQ: частые вопросы

Можно ли запустить Linux на Android без root?

Да. Termux и proot-distro полностью работают без root-прав — это самый популярный и безопасный путь. Ограничение лишь в производительности proot-прослойки и недоступности некоторых системных вызовов.

Какой дистрибутив выбрать для proot-distro?

Для начинающих оптимальна Ubuntu — больше всего инструкций и готовых пакетов. Debian легче и стабильнее, Arch Linux подойдёт тем, кто хочет свежие версии ПО. Список доступных дистрибутивов покажет команда proot-distro list.

Будет ли работать графическая программа, например браузер?

Да, через VNC или XServer можно запускать Firefox, LibreOffice, GIMP и другие приложения. Однако скорость будет ниже, чем на ПК: программы собраны под ARM, а графика идёт через программный рендеринг. Для офисных задач этого хватает, для игр и видеомонтажа — нет.

Опасно ли это для смартфона?

Termux и proot-окружения изолированы и не трогают систему — максимум, что можно потерять, это данные внутри самого контейнера. Риски появляются только при разблокировке загрузчика и root: тут возможна потеря гарантии и повреждение системы при ошибках.

Сколько места нужно на устройстве?

Голый Termux занимает немного, но rootfs дистрибутива с базовыми пакетами требует порядка 2–3 ГБ, а с графическим окружением — больше. Закладывайте запас: apt-кэш и устанавливаемые программы быстро съедают свободное пространство.