Podroid - бесплатное приложение, которое превращает телефон в Linux-машину
Смартфон 2020 года - это 8 ядер, 6 гигабайт оперативной памяти и накопитель на 128 гигабайт. По железу он мощнее серверов, на которых пятнадцать лет назад крутились целые сайты. Но Android запирает эту мощь за стеклом: ничего за пределами магазина приложений запустить нельзя.
Podroid ломает эту стену. Одно приложение с открытым кодом - и на телефоне работает полноценный Linux с поддержкой контейнеров (изолированных программ, каждая из которых живёт в собственной среде и не мешает остальным). Без root-прав, то есть без взлома системы. Без компьютера. Без подписок.
Раньше для такого трюка нужно было установить Termux (терминал для Android), вручную скачать и настроить эмулятор, загрузить образ системы, прописать сетевые параметры. Один разработчик честно написал, что убил на это пять дней. Podroid упаковал всю цепочку в один файл: скачал со страницы проекта, нажал кнопку - работаешь.
Как Podroid умещает Linux в одном приложении
Внутри работает эмулятор QEMU - программа, которая создаёт виртуальный компьютер прямо в памяти телефона. На этом виртуальном компьютере загружается Alpine Linux - одна из самых компактных версий Linux. Alpine славится тем, что занимает считанные мегабайты и при этом ведёт себя как полноценная операционная система.
Поверх Alpine запускается Podman - менеджер контейнеров, совместимый с Docker. Если вы слышали про Docker - Podman делает то же самое, но не требует прав администратора. Всё, что вы устанавливаете внутри - программы, файлы, настройки - сохраняется между перезапусками благодаря постоянному хранилищу на отдельном разделе диска. Закрыли приложение, открыли через неделю - всё на месте.
Терминал и проброс портов в Podroid
Встроенный терминал построен на тех же библиотеках, что использует Termux - самый известный терминал для Android. Полноценная клавиатура с Ctrl, Alt, стрелками и функциональными клавишами. Для приложения на телефоне - набор нетипично серьёзный.
Отдельная функция - проброс портов. Запускаете внутри контейнера веб-сервер, добавляете правило в настройках - и открываете его в обычном браузере телефона. Правила переживают перезапуск. Для тех, кто экспериментирует с локальной разработкой или тестирует сетевые приложения, - ровно то, чего не хватало.
Где Podroid тормозит - и почему это ожидаемо
Эмулятор QEMU здесь работает без аппаратного ускорения. Процессоры Android-телефонов просто не дают обычным приложениям доступ к технологии виртуализации - это ограничение самой платформы, не Podroid. Запустить лёгкий веб-сервер или текстовый редактор - нормально. Собрать крупный проект из исходников - ощутимо медленнее, чем на настольном компьютере. Меня это не удивило, но предупредить стоит.
Приложение работает только на процессорах ARM64 - это подавляющее большинство Android-устройств последних семи-восьми лет, но что-то совсем древнее не потянет. И главное: проект появился буквально на днях, опубликован на форуме XDA Forums. Сообщество пока крошечное. Если что-то сломается, придётся либо разбираться самому, либо писать автору на страницу проекта и ждать.
Старый смартфон против Raspberry Pi
Идея превратить ненужный телефон в мини-сервер не нова. Но Raspberry Pi стоит денег, требует отдельного блока питания, карты памяти и экрана. У старого смартфона всё это встроено, включая батарею на случай отключения электричества. Podroid добавляет последний элемент - программную начинку.
С настоящим сервером производительность, конечно, не сравнится. Для домашних задач - файловое хранилище, тестовый сайт, практика с контейнерами - хватит. Код открыт, лицензия GPLv2 - любой может заглянуть внутрь и проверить, что приложение делает с вашим устройством. Это редкость для подобных проектов и лично меня располагает.
Смартфон, который пылится в ящике, способен на большее, чем быть будильником. Может, пора дать ему вторую работу?
Источник: Podroid
🔔 КликХак нашёл применение старому телефону - и это только начало. Подписка стоит ноль рублей, root не требуется.