Linux Deploy от Антона Скшидлевского aka meefik

Современные смартфоны по CPU и объёму оперативной памяти практически сравнялись с настольными компьютерами и ноутбуками: не редкость 8 ГБ оперативной памяти и флэш-накопитель на 512 гигабайт. Например, в последнем айфоне 6-ядерный CPU и 4-ядерный графический процессор, причём CPU сделан по 5-нанометровому техпроцессу. Сейчас ни один CPU для настольных компьютеров не производится по такой технологии. То есть мы дошли до того, что технический прогресс сначала обслуживает смартфоны, потом ноутбуки, а до настольных компьютеров доходит в последнюю очередь.

Возникает вопрос, а почему бы не использовать смартфон как системный блок? Если у него такие мощные характеристики, такой продвинутый CPU и столько памяти, и он всё равно лежит в кармане, так пусть приносит пользу. Давайте добавим ему недостающие части — подключим большой монитор, клавиатуру и мышь.

Всё-таки удобнее вводить команды в Linux-консоли с клавиатуры, а не прицеливаться пальцами по экрану.

Содержание



«Режим десктопа» на смартфонах


Некоторые смартфоны не заменяют нормальный компьютер, а просто эмулируют десктопный режим.

Например, в ноябре 2019 года вышел складной Huawei Mate Xs стоимостью около $2600. Он работает под Android 9.0 Pie, но в режиме Desktop Mode его можно использовать как системный блок настольного компьютера.



В этом режиме к смартфону подключается внешний дисплей/телевизор и клавиатура. Операции на телефоне не влияют на то, что отображается на внешнем дисплее. Например, вы можете редактировать документ на внешнем дисплее во время разговора по т��лефону. Уведомления, звонки или сообщения на телефон сигнализируют на внешний дисплей в виде красной точки.



Для системного блока характеристики вполне нормальные: 8 ГБ оперативной памяти, процессор Kirin 980, модем Balong 5000 5G. Оба чипа производства Huawei. Компания давно заявляла, что её процессоры вдвое превзойдут по производительности чипы конкурентов. В данном случае конкурентами являются Qualcomm Snapdragon и Samsung Exynos. Из других характеристик: 512 ГБ флэш-памяти, батареи 4500 мАч (общая ёмкость двух аккумуляторов), функция быстрой 55-ваттной зарядки до 85% за 30 минут.

Аналогичный десктопный режим (Desktop Mode) есть и на других смартфонах, в том числе Galaxy S10, Galaxy Note 9, Huawei P20, P20 Pro, Mate 10/10 Pro, Mate 20 X, P30, Honor Magic 2 (десктопный режим у Huawei) и другие.

Для подключения телевизора выпускаются переходники с USB-C на HDMI.


Адаптер USB-C/HDMI

Есть вариант беспроводного подключения смартфона к ТВ по стандартному протоколу Miracast, если телевизор его поддерживает.

Например, у Huawei в таком режиме экран смартфона работает в качестве тачпада или мышки для управления курсором на экране телевизора.



Обычные клавиатура и мышь подключаются по Bluetooth.

Самое главное, что в версии Android Q (Android 10) десктопный режим добавили в качестве стандартной функции, причём с поддержкой сторонних лаунчеров (Nova, Apex и др.).

Если раньше это была «элитная» функция в топовых моделях, то в самое ближайшее время она станет обычной для многих современных смартфонов.


Десктопный режим в Android Q

Но всё-таки «режим десктопа» — это не полноценный компьютер, а просто некая эмуляция. Да, есть внешний монитор, но мы по-прежнему работаем с Android-приложениями в этой операционной системе, просто проецируем картинку на большой экран.

Для нормального системного блока, конечно, нужна нормальная операционная система, то есть Linux.

Linux-смартфоны


На рынке есть несколько смартфонов, которые изначально проектируются с расчётом на установку операционной системы Linux и работу в десктопном режиме. Например, компания Canonical планировала выпускать собственный Ubuntu Phone на мобильной платформе Ubuntu Touch, но не получилось. Сама платформа была создана и предустанавливалась на некоторые смартфоны, но в 2017 году Марк Шаттлворт объявил о прекращении проекта. Дальнейшую разработку взяло на себя сообщество UBports. Первое обновление вышло 11.01.2019 (Ubuntu Touch OTA-7) для всех официально поддерживаемых смартфонов и планшетов, в числе которых: OnePlus One, Fairphone 2, Nexus 4, Nexus 5, Nexus 7 2013, Meizu MX4/PRO 5, BQ Aquaris E5/E4.5/M10. Сейчас в продаже можно найти некоторые из перечисленных моделей, которые изначально работают под UBports.

PinePhone


Один из самых известных настоящих Linux-смартфонов, которые изначально поставляются с Linux на борту, называется PinePhone. Его выпускает компания Pine64, производитель ноутбуков и одноплатных компьютеров-конкурентов Raspberry Pi.


Клавиатура, HDMI-монитор и зарядка подключены к смартфону через докинг-станцию USB-C (в центре)

PinePhone дешёвый ($150), но cо средними техническими характеристиками: чипсет Allwinner A64 с четырёхъядерным процессором ARM Cortex A-53 на 1,2 ГГц и графическим видеоускорителем Mali-400MP2, 2 ГБ оперативной памяти, 16 ГБ флэш-хранилища. Впрочем, в июле 2020 года была анонсирована продвинутая версия Community Edition: Manjaro With Convergence Package с 3/32 ГБ оперативной/флэш-памяти, ОС Manjaro Linux и докинговой станцией в комплекте за $200.

Такой смартфон можно использовать как портативную рабочую станцию системного администратора со всем необходимым программным обеспечением. То есть в любом месте вы подключаете монитор, клавиатуру — и запускаете стандартные рабочие инструменты в консоли Linux. С десктопа можно подключаться к интернету через 3G/4G телефона.

На смартфоне установлена postmarketOS на базе Alpine Linux — известный дистрибутив Linux для смартфонов.

Кроме postmarketOS, можно установить Ubuntu Touch, Sailfish OS и Plasma Mobile.

В октябре 2020 года состоялся релиз Fedora Linux, которую тоже можно установить на PinePhone.

Librem 5


Другой известный Linux-смартфон — это Purism Librem 5 на Debian Linux.


Смартфон Librem 5 работает в роли настольного компьютера с монитором, клавиатурой и мышью

Librem 5 работает на PureOS, полностью свободной опенсорсной операционной системе, которая не имеет отношения ни к iOS, ни к Android — это чистый Linux (почему это важно).

PureOS на основе GNU/Linux — стандартная операционная система для всех продуктов компании Purism, в том числе ноутбуков. Другими словами, в смартфоне реализована стандартная функциональность десктопной операционной системы, которая не отличается от такой же системы в ноутбуке The Road Warrior. Например, в смартфоне работает не мобильная версия Firefox, а самый обычный Firefox, как и на стационарном компьютере. То есть Librem 5 — фактически и есть стаци��нарный компьютер, просто маленького размера. Хотя цена немного кусается: $749.



Технические характеристики: восьмиядерный процессор NXP i.MX 8M (Cortex A53) на 1,5 ГГц, графический ускоритель Vivante GC7000Lite GPU, экран 5.7″ (IPS TFT 720×1440), оперативная память 3 ГБ LPDDR4-3200, хранилище 32 ГБ eMMC, батарея 3500 мАч (сменная).

Телефон спроектирован по модульному принципу, чтобы облегчить ремонт, замену вышедших из строя комплектующих и апгрейд.



В качестве источника вдохновения разработчики называют универсальную операционную систему Debian, которая тоже портирована практически на все платформы и архитектуры CPU. Если посмотреть абстрактно на существующий зоопарк гаджетов, то действительно непонятно, зачем нужно так много совершенно несовместимых операционных систем — iOS, Android, Windows и так далее. Гораздо удобнее, когда абсолютно все устройства будут работать на единой свободной и открытой системе. Тогда везде можно запускать одни и те же приложения и у нас больше не возникнет вопросов, как использовать смартфон в качестве системного блока, потому что технически они не будут отличаться друг от друга на уровне операционной системы.

Зашифрованное хранилище паролей Password Safe одинаково работает на всех устройствах PureOS/Debian

Установка Linux на смартфон


С помощью специальных Linux-дистрибутивов отдельные смартфоны можно превратить в некое подобие компьют��ра.

Linux можно поставить двумя способами:

  1. Установка на «голое» железо, как postmarketOS.
  2. Установка утилиты chroot для смены рутовой директории текущего процесса, а уже затем Linux как второй системы.

postmarketOS


Опенсорсная система postmarketOS на базе Alpine Linux — один из дистрибутивов Linux, который разрабатывается специально для установки на смартфоны.



В настоящее время гарантируется нормальная работа на 11 моделях:

  • Arrow DragonBoard 410c
  • ASUS MeMO Pad 7 (ME176C(X))
  • BQ Aquaris X5
  • Motorola Moto G4 Play
  • Nokia N900
  • PINE64 PinePhone
  • Purism Librem 5
  • Samsung Galaxy A3 (2015)
  • Samsung Galaxy A5 (2015)
  • Samsung Galaxy S4 Mini Value Edition
  • Wileyfox Swift

Частичная функциональность заявлена на более 200 устройствах, в том числе многих Android-смартфонах и планшетах, очках Google Glass, умных часах разных марок и iPhone 7 (после того, как хакерская группа Corellium портировала Linux на iPhone).



Кроме postmarketOS, можно упомянуть опенсорсные мобильные системы Sailfish OS и LuneOS на ядре Linux, а также LineageOS (бывшая CyanogenMod) и Replicant на базе Android.

Установка через chroot


Вот список приложений и скриптов для установки chroot на Android с пос��едующей инсталляцией Linux:


Linux Deploy


Linux Deploy — опенсорсное приложение с открытым исходным кодом для простой и быстрой установки GNU/Linux на Android.

Приложение создаёт образ диска на флеш-карте, монтирует его и устанавливает туда дистрибутив ОС. Приложения из новой системы запускаются в chroot окружении параллельно со штатной работой платформы Android. Установка дистрибутива производится с официальных зеркал в интернете. Для работы нужны рутовые привилегии.







Во время установки программа сама настраивает рабочее окружение, которое включает в себя базовую систему, сервер SSH, сервер VNC и г��афическую среду на выбор. Также через интерфейс программы можно управлять параметрами сервера SSH и VNC.

Установка новой ОС занимает около 15 минут. Поддерживаемые дистрибутивы: Alpine, Debian, Ubuntu, Kali, Arch, Fedora, CentOS, Slackware, Docker, RootFS (tgz, tbz2, txz). Поддерживаемые архитектуры: ARM, ARM64, x86, x86_64, режим эмуляции (ARM ~ x86). Способы подключения к контейнеру: CLI, SSH, VNC, X-сервер, фреймбуфер. Интерфейсы управления (CLI): Android-терминал (или adb), telnet, веб-интерфейс (терминал через браузер). Окружение рабочего стола: XTerm, LXDE, Xfce, MATE, другое (ручная настройка). Инструкции и руководства см. здесь.

Termux


Termux — эмулятор консоли и Linux-окружение под Android, которое устанавливается как обычное приложение под Android и не требует рутового доступа.





Пожалуй, это самый простой способ запустить Linux-инструменты на Android: терминалы Bash, fish или Zsh, текстовые редакторы nano, Emacs и Vim, привычные grep, curl и rsync. Поддерживается пакетный менеджер APT, так что на телефон можно поставить практически любой софт: последние версии Perl, Python, Ruby и Node.js, что угодно.

Подключаем по Bluetooth клавиатуру и дисплей — и можно полноценно работать почти как за обычным Linux-компьютером. Termux поддерживает стандартные сочетания клавиш и работу с мышью.

Это практически идеальный терминал, да ещё с пакетным менеджером.

Подводя итог, если мы хотим использовать как полноценный компьютер под Linux, то у нас есть три основных варианта:

  1. Купить настоящий Linux-смартфон: PinePhone, Librem 5 или модель на UBports
  2. Накатить Linux-дистрибутив: postmarketOS или любой дистрибутив через Linux Deploy
  3. Установить Linux-окружение практически на любой смартфон (Termux)

Хотя есть и другие варианты установки Linux, но это более-менее основные.

Затем остаётся лишь подключить внешний дисплей и/или клавиатуру.

С другой стороны, несколько дней назад вышла Ubuntu 20.10 (Groovy Gorilla): великолепная система с поддержкой Raspberry Pi. Согласно опросу на Хабре, Ubuntu — это самый популярный дистрибутив Linux у нашей аудитории, и теперь он впервые официально поддерживает Raspberry Pi. Получается, что отличное десктоп-окружение работает на одноплатнике за $35, который по техническим характеристикам практически не уступает смартфонам от $150 до $2600, парадокс.



На правах рекламы


Закажи и сразу работай! Создание VDS любой конфигурации и с любой операционной системой в течение минуты. Максимальная конфигурация позволит оторваться на полную — 128 ядер CPU, 512 ГБ RAM, 4000 ГБ NVMe. Эпичненько :)