У пользователя может быть много причин, по которым ему нужен может понадобиться «Линукс» на «Андроид». Можно, например, использовать его для питания сервера LAMP, который запускает веб-приложения и обслуживает веб-страницы. Если пользователь является сетевым администратором, он может установить свои любимые инструменты Linux и превратить смартфон в портативное сетевое решение для поиска неисправностей или проверки функциональности.
Подготовка устройства
Изначально с Play Маркета Google скачивается полное приложение Linux Installer. Кроме того, нужно перейти на сайт проекта «Линукс» на «Андроиде» и загрузить версию Android-приложения с открытым исходным кодом. Предварительно следует зайти в меню «Настройки», выбрать «Безопасность» и переключится в положение «Неизвестные источники», чтобы включить установку приложений, отличных от Play Store.
Для приложения требуется корневое устройство Android. Точная процедура, необходимая для запуска, зависит от моделей устройств. Установщик требует, чтобы BusyBox загружал Linux, который будет реализован и установлен при первом запуске. Помимо приложения, созданного проектом «Линукс» на «Андроиде», также понадобится средство просмотра VNC для использования графического рабочего стола. В проекте предлагается использовать популярное приложение Android VNC Viewer.
Кроме того, нужно будет другое приложение для доступа ко встроенной командной строке Android. Проект предлагает использовать приложение Android Terminal Emulator. Далее запускают приложение Complete Linux Installer. Нажимают на значок проекта в верхнем левом углу экрана, чтобы открыть меню навигации, которое содержит несколько элементов. Первые два из них наиболее важные:
Другие предметы приведут к различной информации и советам, которые помогут в настройке системы. Процесс настройки дистрибутива состоит из нескольких этапов, для осуществления которых необходимо:
Запуск Linux без использования устройства
Можно запустить Linux на Unrooted Android-устройстве благодаря приложению GNURoot. Несмотря на свое название, для него не требуется встроенный телефон. Основное различие между Complete Linux Installer и GNURoot заключается в том, что последний дает доступ к интерфейсу командной строки дистрибутива Linux. Чтобы запустить «Линукс» на «Андроид» через GNURoot, нужно взять его из магазина Google Play, а также скачать сопутствующее приложение для конкретного дистрибутива Linux. Приложение используется для популярных дистрибутивов, таких как Debian, Gentoo и Fedora.
Эти приложения близки по размеру к 100 МБ, в отличие от приложения GNURoot, которое составляет всего несколько килобайт. После того как их установили, запускают GNURoot и используют раскрывающееся меню в верхней части страницы, чтобы выбрать тот дистрибутив, который нужно загрузить. Затем нажимают кнопку Create New Rootfs, чтобы установить дистрибутив. Процесс займет некоторое время в зависимости от ресурсов устройства. Когда это будет сделано, нужно нажать кнопку Launch Rootfs, которая откроет терминал и зарегистрирует пользователя в дистрибутиве «Линукс» на «Андроиде» (телефоне). Если установить флажок «Запуск, как фальшивый рут» перед запуском дистрибутива, то вход в систему будет осуществлен с привилегиями суперпользователя.
Инструкции для выбора Ubuntu
Предварительно нужно нажать на выбранный вариант для дальнейших инструкций, например, Ubuntu. После чего отобразятся подробные инструкции, разбитые на четыре страницы. На первой странице приложения отображаются основные требования, предъявляемые устройством для возможности запуска дистрибутива linux на смартфон. Самый важный шаг — убедиться, что включена поддержка отладки. Для этого нужно открыть последовательно разделы «Настройки», «Приложения», «Разработка» и удостовериться в том, что параметр «Отладка USB» переключен.
На странице seond появятся ссылки для загрузки изображения для выбранного дистрибутива. Далее нажимают на кнопку «Загрузить изображение», открывается окно с тремя дополнительными кнопками для загрузки одного из трех поддерживаемых типов изображений: большой, маленький или ядро.
Затем следует установить дистрибутив ОС «Линукс» на выбор, а также выбрать размер загружаемого сжатого изображения, которое будет отображаться на SD-карте после его извлечения. Далее последовательность шагов следующая:
Загрузка дистрибутива
Для того чтобы запустить приложение, отвечающее за загрузку дистрибутивов, нужно открыть навигационное меню, нажав на значок приложения или нажимая на элемент запуска. Затем используется раскрывающееся меню на странице, чтобы выбрать дистрибутив. Если пользователь получил сообщение о том, что изображение для выбранного дистрибутива не существует, это означает, что приложение не может найти и извлечь файлы изображений для дистрибутива. Это происходит в том случае, если не был извлечен загруженный файл, или он был сохранен в нестандартном месте.
В таком случае нужно указать вручную файл IMG дистрибутива при запуске «Линукс» на «Андроиде». Для этого потребуется:
Эта пользовательская запись из дистрибутива теперь будет отображаться в раскрывающемся меню на странице запуска. Когда будет выбрана запись, приложение покажет кнопку, чтобы запустить дистрибутив.
Порядок действий при установке «Линукс» на «Андроиде» планшете:
Безопасная настройка устройства
Когда будет загружен дистрибутив, пользователь увидит примечание с соответствующими настройками, в соответствии с которыми необходимо подключиться через VNC к этому дистрибутиву, а затем отобразится стандартное приглашение root для Linux. Использовать эту оболочку можно для взаимодействия с дистрибутивом, как с любым настольным приложением. Для целей безопасности в первую очередь пользователь должен установить новый пароль для использования root.
Порядок установки системы безопасности:
Приложение VNC для рабочего стола
VNC имеет различные настройки, чтобы подключаться к дистрибутиву, запущенному на устройстве. Нужно ввести localhost в поле, которое запрашивает IP-адрес сервера VNC и 5900 в качестве порта. В дополнение к этому также потребуется пароль для аутентификации с сервером VNC, что зависит от дистрибутива. Для изображений Ubuntu пароль — ubuntu. Для Arch Linux — это archlinux, для Linux Debian — это debian и так далее. Пароль указан на вики-странице дистрибутива на веб-сайте проекта LinuxOnAndroid.
Если пользователь использует androidVNC, приложение предлагает изменить формат цвета на 24-битный цвет (4bpp). Далее нажимают кнопку «Подключить», чтобы начать сеанс VNC после того, как была введена вся информация. Клиент VNC подключится к устройству, сразу же отобразится графический рабочий стол, который запущен в используемом дистрибутиве.
Разработчики приложений советуют пользователям androidVNC изменять режим ввода на тачпад. Для этого нажимают на кнопку меню внутри сеанса VNC. Это вызовет множество вариантов. Нужно нажать опцию «Входной режим», а затем выбрать переключатель «Тачпад» из списка поддерживаемых режимов ввода. Теперь можно взаимодействовать с рабочим столом и управлять им так же, как и на ПК.
Диспетчер пакетов для установки
В приложении Android VNC однократное нажатие означает левый клик. Двойное нажатие имитирует щелчок правой кнопкой мыши. Приложение отобразит три кнопки: две для увеличения и уменьшения масштаба и одну для отображения виртуальной клавиатуры. Можно использовать диспетчер пакетов для установки новых приложений. Дистрибутив сможет устанавливать приложения, которые были перенесены для архитектуры ARM, что верно для любого популярного приложения.
Можно использовать описанные выше шаги для загрузки, настройки и использования любого из поддерживаемых дистрибутивов на устройстве. Приложение также предлагает некоторые другие варианты дальнейшей настройки дистрибутивов и пользовательского интерфейса. Для начала изменяют настройки дистрибутива при первом входе в него. Для этого выбирают дистрибутив, который нужно настроить, из раскрывающегося списка в разделе «Запуск».
В дополнение к кнопке «Начать Linux» нажимают «Настроить Linux», чтобы открыть страницу настроек. Здесь размещены флажки для включения и отключения запуска серверов SSH и VNC. И также можно изменить разрешение экрана VNC, изменив значения, указанные на этой странице. На странице представлено несколько интересных опций, в том числе флажок Create 1GB SWAP File. С их помощью приложение создаст файл подкачки для дистрибутива.
Файл подкачки для системы
Перед включением этой опции нужно убедиться в том, что на SD-карте достаточно свободного места. Приложение также может подключать папки из файловой системы Android к работающей Linux.
Порядок операций:
Перенос папок в новое изображение
В зависимости от того, как используется дистрибутив, рано или поздно пользователь может исчерпать все свободное пространство. В таком случае ему придется освободить место путем создания более крупного образа и копирования всех файлов и папок из существующего в новый. Начинают процедуру с запуска терминала и создания пустого образа требуемого размера. Например, для создания 4GB-изображения под названием ubuntuNEW.img необходимо задать команду:
dd if = / dev / zero of = ubuntuNEW.img bs = 1M count = 0 seek = 4096.
Затем нужно отформатировать это новое изображение и создать файловую систему посредством команды:
mke2fs -F ubuntuNEW.img.
Потом копируют файл изображения, который надо получить с устройства, на компьютер, Например, с именем ubuntuOLD.img. Далее создают две папки на рабочем столе (ubuntuNEW и ubuntuOLD), чтобы смонтировать эти изображения, посредством команд:
- sudo mount -o loop ubuntuOLD.img ubuntuOLD;
- sudo mount -o loop ubuntuNEW.img ubuntuNEW.
Они будут монтировать изображения в соответствующие папки. Как только это будет сделано, копируют все файлы со старого изображения на новое изображение при помощи команды:
sudo cp -rp ubuntuOLD / * ubuntuNEW.
Предварительно нужно убедиться, что файлы и папки скопированы вместе с правами доступа. Завершают процесс обычно путем отключения изображения с помощью записей:
- sudo umount ubuntuOLD;
- sudo umount ubuntuNEW.
Теперь можно перенести файл ubuntuNEW.img на свой телефон, удалить существующее изображение и убедиться, что запись distro на экране запуска указывает на новое изображение. Включите использование инструментов диспетчера пакетов CLI дистрибутива с помощью GNURoot.
Установка «Линукс» на «Андроиде» без root прав
Для установки какого-либо дистрибутива Linux на Android-телефоне обычно требуются дистрибутивные и корневые разрешения, поддерживаемые ARM. Поскольку укоренение телефона отменяет гарантию и открывает бэкдоры для потенциальных атак, нужно применить способ запуска Linux на Android без укоренения. С помощью GNURoot пользователю не нужно выполнять эти трюки и пропускать права доступа root.
Этот метод не похож на установку полной версии ПК для Linux на телефонах Android, поскольку устанавливают подсистему Linux, которая включает в себя множество инструментов. Можно использовать apt-get, SSH или даже превратить свой Android-телефон в LAMP-сервер для запуска веб-приложений.
Установка Linux на Android-телефоне по этой версии потребует предварительно установить GNURoot из Play Маркета. Затем приложение устанавливает фальшивую корневую файловую систему Linux. Для этого просто открывают Play Store, находят GN, URoot и устанавливают эти продукты. Выбирают вспомогательное приложение дистрибутива Linux.
По умолчанию GNURoot предлагает разные дистрибутивы Linux на базе ARM: Linux Debian Wheezy, Fedora, Aboriginal (легкий вариант BusyBox) и Gentoo. Выбирают любой из них и нажимают «Создать новые Rootfs», чтобы загрузить необходимые файлы. Этот процесс может занять некоторое время, поэтому нужно подождать несколько минут, после чего следует выбрать дистрибутив Linux и запустить его.
После завершения загрузки выбирают этот дистрибутив из второго варианта выпадающего списка. После отметки поля «Запуск как фальшивый Rootfs», получают команды apt-get и другие корневые команды. Нажимают «Запустить Rootfs», чтобы установить и использовать Linux на телефоне Android. После установки пользователь готов применять Linux на телефоне Android. Теперь можно установить любой пакет из дистрибутива, используя соответствующий менеджер пакетов при помощи apt-get для Wheezy или yum для Fedora.
Для создания дополнительных окон терминала нажимают на кнопку «+». Чтобы получить доступ к параметрам меню для различных настроек, можно нажать на значок справа и другие параметры. В четырех основных дистрибутивах Linux, доступных в приложении GNURoot, придется работать с помощью командной строки. Чтобы запустить программы, требующие окон, понадобится графический интерфейс.
На первом этапе это можно реализовать с помощью дистрибутива GNURoot WheezyX, который запускает VNC-сервер. Для просмотра графического интерфейса нужно загрузить VNC Viewer из Play Маркета. В первый раз, когда дистрибутив WheezyX запускается в окне терминала, запускают приложение просмотра VNC и вводят «localhost: 1» в качестве адреса и «пароль» по умолчанию. Для этого запускается виртуальный рабочий стол для окна терминала xterm для Wheezy. Теперь, используя указатель мыши и значок клавиатуры, можно перемещаться по Linux на Android.