Запуск Linux из-под Android
Вероятней всего, ни для кого уже не секрет, что самая популярная операционная система для сенсорных устройств – это Android созданная на базе ядра Linux. Однако, по стечению обстоятельств планшеты под управлением операционной системы Android не способны запускать приложения, написанные для Linux. И на этом этапе у пользователей появляется нормальный вопрос: а как же запустить различные дистрибутивы Linux из-под популярной ОС? И ответ оказывается простым – с помощью специальных эмуляторов, как это распространено на компьютерах под управлением Windows, где создание виртуальных машин – это обычное дело для пользователя.
Общие сведения
Да, скорей всего многие пользователи зададутся вопросом, а зачем собственно это нужно, если уже сейчас выпускаются планшеты под управлением Ubuntu (одна из самых удачных оболочек для Linux), а запустить какой-то дистрибутив на компьютере гораздо легче. Вопрос риторический, если об этом стали говорить, значит, кому-то это очень нужно, тем более что иметь в своем распоряжении планшет под управлением какого-то дистрибутива Linux куда проще, чем носить с собой 3-килограммовый ноутбук или менее функциональный нетбук.
В последнее время Linux используется исключительно для программирования, отладки созданных приложений и тестирования их на реальных объектах. Также эта ОС нашла свое применение в администрировании серверов и наладке компьютерных сетей. Поэтому профессиональный разработчик программного обеспечения нуждается в таких сенсорных девайсах.
Совместимость версий
Однако, стоит учитывать, что не все запускаемые дистрибутивы на стационарных компьютерах будут нормально работать и на планшетах. Почему? Потому что большинство таблеток работают на базе микропроцессоров со структурой ARM. И для того чтобы абсолютно все версии Linux корректно запускались на таких девайсах, необходимо найти планшет под управлением ОС Windows. Но как показывает практика, такие планшеты не отличаются хорошими техническими характеристиками.
Вот поэтому в интернете нужно искать портированные версии с поддержкой ARM структурой, к таким сборкам можно отнести:
- Ubuntu;
- Kali;
- Debian;
- Gentoo;
- Arch и другие.
Для того чтобы найти еще доступные версии для планшета, необходимо в поиске набрать ключевую фразу: «Linux ARM» и самостоятельно ознакомиться с доступными дистрибутивами.
Предпочтения пользователя
Также перед тем как приступать к установке или эмуляции дистрибутива необходимо выяснить для себя, что вы хотите делать после успешной установки? Просто поиграться или действительно применить полученные знания, устройства для работы?
В первом варианте рекомендуется использовать небольшие и, так сказать, уменьшенные версии системы, во-первых, они легче и быстрей запускаются, во-вторых, их использование не нанесет никакого вреда, если планшет попал в неумелые руки, а в-третьих, удобный и понятный интерфейс не отобьёт желание иметь дело c Linux.
В противном случае, несомненно, необходимо использовать полные сборки, где уже предусмотрен по умолчанию пакет программ, например:
- Emacs Text Editor;
- BitTorrent;
- Thunderbird;
- Java JDK и другие.
Установка дистрибутива
Перед тем как приступить непосредственно к запуску операционной системы необходимо подготовить сам планшет к этой операции и скачать нужные программы для работы.
Некоторые требования к девайсу:
- Поддержка устройством файловой системы – Ext2;
- Ядро микропроцессора должно поддерживать loop-устройства;
- Заранее установленные root-права, крайняя необходимость;
- Частота центрального процессора не меньше, чем 1 ГГц.
- Помимо этого, в наличии должна быть flash-карта минимум на 4 Гб.
Загрузка дистрибутива
Скачиваем с интернета образ операционной системы, для этого можете воспользоваться ссылкой, по которой находятся популярные дистрибутивы для сенсорных гаджетов:
Установка будет происходить на примере Ubuntu 12.04, вы же для себя можете выбрать и другую сборку. После загрузки (файл около 500 Мб) достаем из архива файл Ubuntu.img и перемещаем его на flash-карту в папку «ubuntu», для этого достаточно подключить планшет к компьютеру. После перемещения отсоединяем девайс и подключаемся к интернету.
Установка приложений
Запускаем PlayMarket и устанавливаем на планшет приложение Android Terminal – это очень удобный аналог командной строки.
Запускаем установленную программу и вводим команду «SU» для предоставления терминалу root-прав, вот для чего их наличие крайне обязательное.
Снова запускаем магазин и устанавливаем утилиту «Complete Linux» — это скрипт для запуска дистрибутива из-под Android.
Следом запускаем программу.
Нажимаем на выделенный пункт списка и в следующем окне нажимаем на кнопку «Strat Linux».
Теперь в строке вводим выделенные команды:
- Предоставление root-прав;
- Запуск перемещенного файла с образом системы.
Сразу же будет выведен запрос на ввод пароля, по умолчанию ставить «ubuntu», потом еще раз повторить его ввод.
Вводим те же самые ответы, которые выделены на изображении выше.
Обратите внимание, разрешение экрана вводится в зависимости от диагонали самого устройства, поэтому значения могут отличаться от представленных.
Еще раз вводим букву «n» и как только на экране появляется выделенное сообщение – это значит установка Linux успешно завершена.
Запуск системы
Теперь снова возвращаемся в интернет-магазин PlayMarket и устанавливаем последнее приложение – VNC Viewer для удаленного доступа и управления.
Утилита удаленного доступа
Запускаем программу и видим, что пока никаких соединений нет, поэтому нажимаем на кнопку «плюс» и выполняем заполнение двух полей.
В первое поле адреса вводим «localhost», а во второе название соединения по умолчанию ставим также «ubuntu» и для сохранения внесенных данных нажимаем кнопку «Done».
Нас вернули в главное окно, где нажимаем на единственную продолговатую клавишу «Connect».
Для подключения необходимо пройти процедуру аутентификации, то есть ввести заданный ранее пароль и нажать на кнопку «ОК».
Теперь можно вас поздравить с успешным запуском операционной системы Ubuntu из-под Android, для комфортного управления лучше использовать обычную лазерную мышку и клавиатуру.
Теперь можно запустить любое приложение для тестирования сборки, например, стандартный интернет-браузер Mozilla.
Вы можете спокойно переходить между двумя операционными системами, но, если хотите полностью выключить запущенную операционную систему, тогда переходим к командной строке.
Вводим команду «exit» и на этом инструкция по успешной установке и завершению работы Ubuntu окончена.
Другие способы запуска
Наряду с вышерассмотренной программой можно использовать еще одну утилиту, ее название «Linux Deploy». Установка практически аналогична представленной, главной особенностью приложения является работа в одном окне без переходов между различными программами.
Утилита успешно развивается, уже сейчас на PlayMarket можно скачать новую версию на ОС Android 5, разработчик постоянно дорабатывает и исправляет найденные ошибки, поэтому, научившись запускать Ubuntu по первому способу, можно плавно переходить к более мощной и продвинутой программе.
Портирование Ubuntu
Но некоторые разработчики пошли дальше и отказались от эмуляторов, а нашли способ прямой установки дистрибутивов Linux наряду с Android. Такой способ, к сожалению, требует очень глубоких познаний в работе операционной системы Android и на получении root дело не закончится.
Тем более что не все современные планшеты поддерживают такой способ установки и нужно быть предельно осторожным в этом плане, так как неправильные или ошибочные действия могут привести к плачевным результатам.
Подробная видеоинструкция
Запуск Linux на Android
Полноценная операционная система Linux на Android смартфоне может быть очень полезной. Во-первых, можно запустить любую необходимую программу linux, или даже сервис. Вы можете запустить веб-сервер, сервер баз данных или все что захотите. Во-вторых, если у вас планшет с большим расширением экрана, то с помощью клавиатуры и мыши его можно превратить в полноценную рабочую станцию. А учитывая, что мы будем запускать Linux без эмулятора, то получим отличную производительность для игр и просмотра видео.
Операционная система Android основана на ядре Linux, поэтому запуск Linux на Android смартфоне возможен, и даже не так сложен как кажется. Полностью заменить Android на Linux не получится из-за особенностей ARM загрузчика и большого разнообразия драйверов устройств, которые поддерживаются только ядрами производителей. Можно разве что установить специально адаптированную Ubuntu Phone, но это уже совсем другая история. Запускать Linux в эмуляторе мы тоже не будем, мы возьмем ARM версию дистрибутива Linux и запустим его в chroot контейнере уже работающего ядра Android.
Нам понадобиться
- Смартфон или планшет на базе ОС Android с ROOT правами;
- Программа автоматического развертывания Linux — Linux Deploy;
- BusyBox;
- SSH клиент — ConnectBot;
- X Сервер для Android — XSDL Server;
Весь перечисленный софт можно скачать и установить с Google Play или форума 4pda. Далее, я буду предполагать что на вашем устройстве уже есть Root права. Начнем запуск linux на android.
Подготовка смартфона
Сначала устанавливаем BusyBox. Зайдите на страницу программы в Google Play и нажмите установить. Когда программа установится, нужно ее запустить и еще раз нажать кнопку install для распаковки всех необходимых компонентов:
Остальные программы устанавливаются стандартным способом из Google Play.
Развертывание Linux на Android
Устанавливать Linux будем с помощью приложения Linux Deploy. Запустите приложение, откройте главное меню программы и выберите пункт Настройки:
Здесь желательно поставить галочки не отключать экран и не отключать wifi, чтобы эти функции работали во пока вы не выключите Linux:
Затем пролистайте вниз и коснитесь пункта обновить окружение. Программе необходимо скачать несколько мегабайт окружения для нормальной работы:
Больше ничего в настройках менять не нужно, Переходим к установке Linux. В главном окне коснитесь значка с логотипом загрузки:
Перед тем как нажать кнопку установить необходимо настроить параметры будущей системы, сначала выберите дистрибутив и версию системы, например, Ubuntu Wily, архитектуру, можно оставить как есть armhf:
Дальше выбираем путь образа диска куда будет установлена система, мы будем устанавливать способ в файл. По умолчанию размер образа — 512 Мб, рекомендую взять с запасом если планируете устанавливать графическую оболочку и дополнительные программы. Для LXDE, XFCE понадобиться еще 500 Мб, а для KDE и Gnome — 1,3 Гигабайт:
Потом меняем имя пользователя и пароль, локаль выбираем ru_RU.UTF-8 для поддержки русского языка:
Выбираем окружение рабочего стола если нужно и дополнительные компоненты. Окружение у нас будет LXDE, дополнительные компоненты оставляем только окружение рабочего стола и ssh сервер. Х сервер нам не нужен, так как будем использовать XSDL Server.
Потом ставим галочку напротив GUI:
Графическая подсистема — Х сервер:
В параметрах GUI Номер дисплея — 0, Адрес Х-сервера — ваш адрес в Wifi сети или 127.0.0.1. Галочку XSDL Server не ставим, так как при каждом запуске Х сервер запускается с новым номером дисплея, таким образом, если с первого раза система не запустится номер дисплея уже будет не соответствовать тому что мы указали в настройках и нужно будет перезагружать устройство:
Дальше можете возвращаться в самый верх и нажимать кнопку установить. Установка linux на android займет около полчаса.
Запуск Linux
Осталось запустить linux на смартфоне. Сначала запускаем XSDL Server, выбираем расширение экрана:
Затем размер шрифта:
Переходим в Linux Deploy и нажимаем кнопку старт:
Возвращаемся в XSDL Server и ждем пока загрузится оболочка:
Вот и все, теперь можно работать в установленной системе, устанавливать приложения, смотреть видео и даже попытаться играть в компьютерные игры. Запуск linux программ на android — не такое уж сложное дело.
Небольшой гайд по управлению XSDL сервер:
- Чтобы открыть виртуальную клавиатуру нажмите кнопку назад.
- Для клика правой кнопкой мыши коснитесь двумя пальцами экрана.
- Отмена последнего действия — кнопка меню.
Доступ SSH доступ к Linux
Для доступа по SSH к установленной системе мы скачали ConnectBot. Откройте приложение и наберите:
Затем введите пароль, выбранный при установке системы, дальше вы окажетесь в оболочке Linux:
Решение проблем
Если во время создания образа возникает ошибка:
Making new disk image (4095 MB) . fail
dd: opening `/storage/emulated/0/linux.img’: No such file or directory
Замените в пути 0 на legacy.
А если такая ошибка:
dd: opening `/storage/sdcard0/linux.img’: Read-only file system
Это значит что в вашей системе используются пространства имен для различных пользователей, то есть флешка примонтирована для пользователя, но не для root’a. Поэтому откройте SuperSU и в настройках снимите галочку Создать поименное разделение пространств:
Выводы
Вот и все. вы смогли успешно запустить Linux на смартфоне. Эта система не настолько эффективна как на персональном компьютере, но тоже сильно расширяет возможности Android смартфона. Если у вас остались вопросы, спрашивайте в комментариях!
Как установить линукс на смартфон или планшет вместо андроида: инструкция
Те, кто активно пользуется операционной системой Linux на своем персональном компьютере или ноутбуке, знает, что она довольно сильно отличается от мобильной ОС андроид. Очевидно, что это две разные платформы, одна из которых ориентирована на ПК, а другая — на портативные гаджеты. Android больше ориентирован для сенсорных экранов и взаимодействие с ними, то время как Линукс по большей части способен лишь выполнять операции через мышь и клавиатуру.
Девайсы с Ubuntu for Android
Мало кто знает, но есть у них и много общего. Мобильная платформа создана на ядре Linux и использует собственную реализацию Java Virtual Machine от компании Google. Это их объединяющая черта, которая связывает системы по многих параметрам. Так, например, права суперпользователя на мобильных девайсах появились вследствие создания учетной записи администратора (root) на Unix-подобных системах.
Андроид — очень многофункциональная система, что объясняется наличием поддержки Java-модулей. Чистый линукс можно представить как ОС, которая идеально подходит для устройств с ограниченными функциям: тостеров, холодильников, стиральных машин и т. д. Она позволяет этим приборам использовать всю мощь и оптимизацию Unix, которая может быть дополнена огромным количеством программ и функций для работы с периферией и датчиками.
К сведению! Смартфоны не являются однофункциональными гаджетами и часто искажают традиционные представления о линукс. Однако андроид позволяет производителям и пользователям использовать собственные схемы его использования для обновления, корректировки ОС под себя и т. д.
Поставить линукс на телефон сегодня вполне возможно
Проверка работы необходимых модулей
Имей в виду, что поддержка loopback-устройств и файловых систем ext2/ext3, необходимых для подключения образа, имеется далеко не во всех ядрах Linux, установленных на смартфонах под управлением Android. Проверить наличие поддержки можно с помощью команды lsmod | grep -e loop -e ext2.
Энтузиасты вышли из этой ситуации, используя простой метод «удаленного» подключения к рабочему столу с помощью любого доступного для Android VNC-клиента. Внутри chroot-окружения запускается X-сервер Xvnc, и все приложения работают под его управлением. Пользователю остается лишь установить VNC-клиент, вбить локальный адрес — и вуаля, на экране появляется полноценный рабочий стол.
Единственное узкое место при использовании удаленного рабочего стола — это производительность. Даже работая локально, VNC не может обеспечить должный ее уровень, которого бы хватило для плавной прокрутки или перемещения окон без лагов. Решить эту проблему пока не удалось, проекты разработки нативного X-сервера, который бы использовал графическую подсистему Android, еще очень сыры и не могут быть использованы для запуска полноценных графических сред. Впрочем, никто не запрещает их использовать; к примеру, X Server от Darkside Technologies Pty Ltd (goo.gl/ap3uD) вполне сгодится для запуска простого софта.
Изначально Linux для Android существовал только в виде образа с уже установленной системой, а также пояснительной инструкции, как этот образ подключить и использовать. Затем появились скрипты, которые автоматизировали процесс подключения образа и запуска Linux, но и они требовали некоторой работы головой. Наконец, в последнее время появились инсталляторы, доступные в Google Play (например, goo.gl/RSA1j), в некоторой степени автоматизирующие процесс запуска дистрибутива, хотя, по сути, это все то же руководство по установке, но интерактивное, с прямыми ссылками на скачивание образов и скриптов.
Можно ли установить линукс на планшет или телефон вместо андроида
Установить вместо андроид линукс вполне возможно. Обычно это делают на планшетный ПК, так как их экран достаточно большой, чтобы отображать командную строку или графический интерфейс в полном объеме.
Kali Linux на Android — инструкция по установке
Мобильных аппаратов (смартфонов), которые бы поддерживали операционную систему линукс в стоковом состоянии, практически не существует. На сегодня есть всего одна единственная модель смартфона, которая работает на Ubuntu — ОС, также основанной на Linux и Debian GNU. Найти и приобрести такой девайс достаточно сложно, так как есть он в свободном доступе не в каждой стране.
Если есть сильное желание, то заменить стандартную предустановленную ОС на планшете андроид можно, но стоит понимать, что полноценно работать компьютерная платформа на портативных девайсах не будет.
Обратите внимание! По данному направлению ведут активные разработки, и многие программисты пытаются создать Linux-Android совместимую прошивку, но реальность такова, что до сих пор приходится изрядно постараться, чтобы запустить даже урезанную версию юникс на своем телефоне или планшете.
Некоторые фирмы уже начинают производить телефоны с предустановленной линукс
Зачем устанавливать линукс на смартфон
В первую очередь необходимо понять, с какой целью может потребоваться оснастить мобильный аппарат нестандартной для него операционной системой. Естественно, что для рядового пользователя это просто не нужно, так как работать таким образом не очень удобно, а ведь ОС еще нужно и поставить.
Установка программ в Linux — использование менеджера приложений
Другое дело — разработчики программного обеспечения, системные администраторы и другие IT-специалисты. Им данные манипуляции могут понадобиться для тестирования своих продуктов и повышения навыков работы с цифровыми устройствами. Для полноценной работы такой подход будет крайне сомнительным. Однако если смотреть на мобильный линукс с точки зрения некоторого помощника, способного выручить в ситуациях, когда человек находится далеко от компьютера или в дороге, то такой вариант вполне имеет право на жизнь.
Даже простые юзеры могут получить множество преимуществ при работе с Linux на своих устройствах. Некоторым будет удобно пользоваться привычными десктопными версиями офисных программ, почтовых серверов и клиентами для торрентов.
Важно! Не стоит забывать, что это будет практически полная операционная система, которая представлена и на компьютере, а значит на девайс можно будет установить практически тот же комплект программ, что и на компьютер.
На смартфоны подойдет и Kali Linux
Перенести Linux на Android действительно просто, и главную роль здесь играет ядро Linux. Любой Linux-дистрибутив представляет собой набор приложений и библиотек, работающих поверх ядра Linux, а так как Android сам основан на почти неизмененном ядре Linux, эти приложения и библиотеки можно без каких-либо проблем запустить внутри среды Android. Достаточно лишь подыскать дистрибутив, для которого существует порт на платформу ARM (не забываем, что 99% всех Android-девайсов работают на ARM), установить его с помощью ARM-эмулятора на виртуальный жесткий диск (то есть в файл), скинуть этот файл на SD-карту устройства, открыть терминал, смонтировать образ в качестве loopback-устройства и сделать chroot внутрь. Все! Это так же просто, как запуск FTP-сервера в chroot-окружении — простой и проверенный десятилетиями метод.
Единственный камень преткновения, когда ты решаешь запустить дистрибутив Linux внутри Android, — графическая среда. В то время как с доступом к консоли никаких трудностей не возникает благодаря наличию полноценного эмулятора терминала, с графическими приложениями начинаются проблемы — нативного X-сервера для Android нет, а запустить обычный X-сервер внутри самого дистрибутива невозможно из-за коренных отличий в архитектуре графической подсистемы зеленого робота. Несмотря на то что в основе она использует стандартный Linux Framebuffer, поверх которого можно запустить X-сервер, эксклюзивное право его использования изначально принадлежит более высокоуровневым библиотекам Android, поэтому остается либо загружать Linux-дистрибутив вместо Android (что совершенно непрактично), либо придумывать обходные пути.
Доступ SSH доступ к Linux
Для доступа по SSH к установленной системе мы скачали ConnectBot. Откройте приложение и наберите:
Затем введите пароль, выбранный при установке системы, дальше вы окажетесь в оболочке Linux:
Подготовка к установке Ubuntu на устройство Android
Linux Kali — установка, требования к системе
Установка Linux на андроид должна начинаться с проверки системных требований этой операционной системы, а точнее ресурсов, которыми располагает устройство. Для нормальной работы линукса потребуется:
- 4 гигабайта ОЗУ;
- наличие поддержки файловой системы типа Ext2;
- возможность получения привилегий суперпользователя и наличие этих прав;
- поддержка loop-устройств ядром прошивки;
- частота процессора более 1 ГГц.
Обратите внимание! Проверить эти данные можно в гарантийном талоне к девайсу или перейдя в соответствующий раздел настроек «Об устройстве».
Получение root-прав
В любом случае потребуется получить рут-права. Лучше всего сделать это с помощью программы KingRoot. Необходимо скачать и установить ее, предварительно отключив блокировку ненадежных источников в настройках безопасности телефона. В процессе скачивания и взлома желательно пользоваться подключением по беспроводной сети Wi-Fi для экономии интернет-трафика. Дальнейшие действия таковы:
- Отыскать созданный установленной программой ярлык и перейти по нему в основное окно.
- Приложение сразу же определит модель и версию устройства, а также скажет, имеются ли уже у пользователя рут-права. Когда процесс сканирования закончится, следует нажать на кнопку «Try to Root».
- Дождаться пока программа проведет взлом и сообщит об удачном или неудачном результате.
Важно! Если ПО не справилось с задачей, то можно воспользоваться и другими приложениями: Root ToolCase, OneClickRoot, Toverloop. Некоторые из них могут работать даже с самыми старыми прошивками андроида версий 1.6.х — 2.3.х.
Рутирование телефона — необходимая процедура для установки линукс
Установка библиотеки BusyBox
Нельзя установить компьютерную систему на андроид-устройство и без Busybox. Это по своей сути специальный набор консольных утилит для линукс-систем, который работает только на рутированных девайсах. Установка его выглядит следующим образом:
- Скачать и установить программу на свой телефон или планшет.
- Запустить приложение и принять все условия его использования.
- Выбрать определенную версию программы и указать путь до нее. Это должен быть «/system/bin».
- Установить чекбокс напротив пункта «Clean Mode».
- Выбрать параметры «Install» и «Smart install».
- Дождаться окончания установки и соответствующего уведомления.
- Перезагрузить свой девайс и опять войти в программу.
- Дождаться проведения сканирования и нажать на «Replace All».
- Выбрать пункты «Install» и «Smart install» еще раз и перезагрузить телефон. Только после этого приложение полностью готово к работе.
Проверка работы после установки
Если Линукс запустился, то с большой долей вероятности его функционирование не будет омрачено системными ошибками, багами или чем-то подобным. Но в редких случаях такое происходит.
Неисправности указывают на то, что аппаратных мощностей мобильного устройства не хватает для совершения определенных действий. Обычно подобное происходит на бюджетных гаджетах.
К сожалению, решения подобной неполадки нет. Остается лишь приобрести аппарат помощнее или не пользоваться инструментами, с которыми не справляется гаджет.
Практическое занятие
Как я уже говорил, для запуска под управлением Android пригодны только дистрибутивы, портированные на архитектуру ARM. Прежде всего это Ubuntu и Debian, причем первый по понятным причинам пользуется гораздо большим интересом среди роботоводов. Также можно установить Gentoo и несколько специализированных дистрибутивов, например Backtrack. Рассмотрим самый типичный случай, то есть установку Ubuntu по стандартной схеме, без использования каких-либо автоматизированных инсталляторов и прочего.
Для начала нам нужен образ жесткого диска с установленным дистрибутивом. Его можно создать самому, воспользовавшись эмулятором QEMU, однако в связи с тем, что процедура установки абсолютно стандартна и типична, описывать ее я не буду, а просто направлю тебя по адресу . Здесь лежит архив с образом, на который предустановлен Ubuntu 12.04 с графическим окружением LXDE (было бы неразумно запускать Unity/Gnome на телефоне/планшете). Архив следует распаковать и положить файл ubuntu.img на карту памяти.
Далее надо смонтировать образ и сделать chroot в окружение дистрибутива. Для этого нужны права root, прошивка с поддержкой блочных loopback-устройств и установленный busybox (ищем в Маркете по запросу «busybox installer», в CyanogenMod есть по умолчанию). Последовательность действий:
-
Открываем эмулятор терминала в Android (если нет, можно установить из Маркета Terminal Emulator). Либо подключаем смартфон/планшет к компу и получаем доступ к терминалу с помощью adb:
Не забываем, что режим отладки в этом случае должен быть включен: «Настройки -> Для разработчиков -> Отладка Android».
Содержимое образа должно появиться в каталоге /sdcard/ubuntu. Проверь, чтобы это было так.
Собственно, на этом установка заканчивается. Теперь можно запускать консольный софт, производить обновление системы, стартовать сетевые сервисы и делать почти все, что можно сделать с обычной десктопной Linux-системой, не забывая, конечно, что некоторый софт, напрямую взаимодействующий с железом и различными специализированными псевдодевайсами, работать не будет. Также не забываем, что виртуальные ФС после завершения работы следует размонтировать.
Теперь нам необходимо установить и запустить X-сервер Xvnc, экспортирующий дисплей и устройства ввода с использованием протокола VNC. TightVNCserver уже есть в представленном образе и даже настроен, но, чтобы ты лучше понял процесс и смог решить возникшие проблемы, я подробно опишу процесс его установки и запуска.
- Обновляемся и устанавливаем TightVNCserver:
- Создаем файл /root/.vnc/xstartup и пишем в него следующее:
Третья команда здесь нужна, чтобы пофиксить проблемы, которые могут возникнуть из-за физического отсутствия на устройстве клавиатуры.
В результате выполнения последней команды на экран будет выведен запрос на пароль для доступа к VNC-серверу, лучше указать что-нибудь простое вроде «123». Разрешение можно установить фактически любое, однако лучше, если оно будет совпадать с физическим разрешением экрана устройства.
Чтобы не заморачиваться с ручным вводом всех команд, можно использовать скрипт ubuntu.sh, расположенный здесь: . Просто положи его и образ ubuntu.img в каталог ubuntu на SD-карте и запусти скрипт командой sh ubuntu.sh, а через 5–10 секунд подключись к рабочему столу с помощью AndroidVNC. Имей в виду, что скрипт монтирует образ к каталогу /data/local/mnt.
AndroidVNC — подключаемся к рабочему столу
А зачем он нужен?
Для начала, давайте разберёмся, зачем вообще вам может понадобится Linux на мобильном аппарате. Обычному среднестатистическому пользователю, вероятно, это не сильно нужно, но ведь есть и специалисты, например, разработчики, администраторы и другие. Конечно, в качестве основного рабочего инструмента это довольно спорное решение. Но если рассматривать его как мобильного помощника, который выручит в дороге или где-то вдали от основного компьютера, право на жизнь у этого варианта есть.
Зачем на планшете Linux?
Да, и обычному пользователю Linux тоже может пригодиться. Всегда удобнее иметь под рукой полнофункциональные версии программного обеспечения, например, офисные приложения, почтовый клиент, клиент для торрент-сетей и множество других. К тому же, не будем забывать, что это практически та же операционная система, что и на компьютере, следовательно, всё многообразие софта под Linux, в большинстве случаев, без проблем установится и будет работать и на планшете.
Если вы уже заинтересовались, то сейчас вас мучает вопрос, насколько сложна установка Linux на мобильное устройство. Вы наверняка наслышаны о том, как бородатые админы в вязаных свитерах ночами конфигурируют свои машины и считаете, что с этим процессом под силу управиться лишь немногим избранным, но это не так. Во-первых, с каждым годом Linux становится всё более дружелюбным к своему пользователю (видимо, для популяризации системы и отчасти это работает), а во-вторых — специально для установки на мобильные устройства создано немало автоустановщиков и подробных инструкций. И если со вторыми у неопытного пользователя вполне может возникнуть проблема, то с первыми чаще всего всё проходит как по маслу.
Зачем запускать Linux на вашем Android-устройстве?
Так почему же вы хотите иметь среду рабочего стола Linux на своем телефоне или планшете Android?
Вы можете запустить приложение, которое недоступно на Android. Но в большинстве случаев вам просто нужно получить доступ к какой-либо среде рабочего стола. Современные устройства Android имеют идеальное аппаратное обеспечение для работы с ПК, и установка Linux — отличный способ сделать это.
Конечно, вы можете обнаружить, что задачи, которые вы хотите выполнять в Linux, также работают в Android. Единственным препятствием, сдерживающим вас, может быть одновременная многозадачность приложения. К счастью, эта функция доступна в Android начиная с Android 7.0 Nougat 2016 года.
Запустить Linux на вашем Android-устройстве непросто, поэтому, если вы ищете многозадачность, попробуйте перейти на современную версию Android.
Чтобы запустить Linux на Android, у вас есть несколько вариантов. Какой из них использовать, зависит от того, является ли ваше Android-устройство рутованным или нет.
Альтернативные варианты
Выше я уже упомянул о том, что дистрибутив Linux вполне может быть загружен вместо Android, благодаря чему удастся задействовать Framebuffer для прямого доступа к видеоадаптеру и существенно ускорить работу графического интерфейса. Однако делать это на смартфоне практически бессмысленно — Linux непригоден в качестве основной системы на небольших экранах, к тому же принимать звонки и пользоваться интернетом будет невозможно. А вот на планшете Linux будет выглядеть вполне достойно.
Обычно на устройство, изначально работающее под управлением Android, так называемая нативная версия Linux-дистрибутива устанавливается следующим образом. На внутреннем NAND-накопителе планшета создается дополнительный раздел, на который копируется Linux-дистрибутив. Затем загрузчик U-Boot (он применяется в большинстве планшетов) настраивается таким образом, чтобы использовать этот раздел в качестве загрузочного. В результате планшет будет автоматически загружать Linux-систему после включения питания.
Чтобы оставить возможность загрузки Android, загрузчик U-Boot перенастраивают таким образом, чтобы раздел с Linux-системой был не основным, а выполнял функцию «раздела для восстановления» (Recovery Mode), доступного с помощью включения устройства с зажатой клавишей громкости (тот самый, который используется для перепрошивки устройства и выполнения различных восстановительных операций). Таким образом удается получить устройство с двойной загрузкой: Android по умолчанию и дистрибутив Linux при загрузке в режиме восстановления. Сам Recovery Mode при этом остается доступным только с помощью специальных инструментов.
В случае если NAND-памяти оказывается недостаточно для размещения полноценной Linux-системы, ее части (обычно раздел /usr) выносят в образ или раздел на SD-карте. Кстати, ext2-раздел на карте памяти также можно использовать для установки Linux, запускаемого в chroot-окружении.
Установить нативный Linux-дистрибутив сложнее, чем работающий в chroot-окружении, но это стоит того, если у тебя есть планшет и OTG-кабель, с помощью которого можно подключить клавиатуру и мышь.
Решение проблем
Если во время создания образа возникает ошибка:
Making new disk image (4095 MB) … fail dd: opening `/storage/emulated/0/linux.img’: No such file or directory
Замените в пути 0 на legacy.
А если такая ошибка:
dd: opening `/storage/sdcard0/linux.img’: Read-only file system
Это значит что в вашей системе используются пространства имен для различных пользователей, то есть флешка примонтирована для пользователя, но не для root’a. Поэтому откройте SuperSU и в настройках снимите галочку Создать поименное разделение пространств:
Запуск Linux
Осталось запустить linux на смартфоне. Сначала запускаем XSDL Server, выбираем расширение экрана:
Затем размер шрифта:
Переходим в Linux Deploy и нажимаем кнопку старт:
Возвращаемся в XSDL Server и ждем пока загрузится оболочка:
Вот и все, теперь можно работать в установленной системе, устанавливать приложения, смотреть видео и даже попытаться играть в компьютерные игры. Запуск linux программ на android — не такое уж сложное дело.
Небольшой гайд по управлению XSDL сервер:
- Чтобы открыть виртуальную клавиатуру нажмите кнопку назад.
- Для клика правой кнопкой мыши коснитесь двумя пальцами экрана.
- Отмена последнего действия — кнопка меню.
Загрузка файлов APK на ваш компьютер с Linux
После перезагрузки компьютера Anbox будет доступен в меню рабочего стола. Нажмите на нее, чтобы запустить; Вы скоро увидите окно Anbox.
Если ничего не происходит или вы застряли на заставке с сообщением «Начало», отмените или подождите, пока это не закончится. Затем откройте новый терминал и введите
Затем снова щелкните значок в меню. Через несколько мгновений Anbox должен запуститься. Это известная ошибка в дистрибутивах на основе Ubuntu 16.04, которая не должна затрагивать более поздние дистрибутивы.
С запущенной Anbox вы увидите список основных приложений Android, которые вы можете запустить в Linux, таких как Календарь и Электронная почта. Просто щелкните левой кнопкой мыши по этим значкам, чтобы открыть их; они появятся в новых окнах, размер которых можно изменить по мере необходимости. Если вам нужен браузер, оболочка WebView включена.
Чтобы добавить свои собственные приложения и игры, все, что вам нужно сделать, это загрузить (или скопировать с другого устройства) соответствующие файлы APK. Это установочные файлы, такие как файлы DEB (или снимки) в Linux или файлы EXE в Windows. Как правило, они доступны через Google Play на Android … но это не относится к Anbox.
Что нужно знать и сделать перед установкой
Первое, о чем следует позаботиться, — это права root. Без них некоторые функции установленных нами утилит могут не поддерживаться или работать некорректно. Поэтому настоятельно рекомендую их заполучить. Особенно это касается пользователей с Android 10 и более поздних версий.
Получение root в каждом случае уникально, ведь оно напрямую зависит от конкретной модели устройства и версии Android. Я в этой статье буду использовать свой старенький Samsung Galaxy S6 (SM-G920F) на Android 7.0 Nougat, для рута в котором уже есть специальный инструмент. В остальных случаях придется погуглить и узнать, как получить рут конкретно на твоем устройстве. На форуме 4PDA почти всегда есть нужная инструкция.
Также нам понадобится Termux — простой и удобный терминал, дающий многие возможности среды Linux, который и позволит исполнять наши команды в подходящей среде и не возиться с предварительной настройкой окружения.
Рекомендую также установить утилиту tsu, которая предоставит тебе возможность выполнять команды от рута. Если она не работает должным образом, загляни в GitHub-репозиторий, который настраивает работу рута в Termux. Это нужно, чтобы Termux сразу имел рут-доступ, который может понадобиться для дальнейших операций.
Важный момент: при использовании в качестве рута Magisk (а на большинстве современных устройств альтернатив нет и не предвидится) не забудь в его настройках разрешить Termux рут-доступ, а также добавить в исключения для Magisk Hide, иначе все наши действия будут бесполезны.
Также рекомендую обновить список пакетов, как мы обычно делаем это в десктопе Kali:
Пара слов о Kali NetHunter
Если ты один из тех счастливчиков, чье устройство оказалось в списке поддерживаемых, рекомендую обратить внимание на проект Kali NetHunter. Это платформа, созданная разработчиками Kali Linux специально для телефонов на Android. В NetHunter сразу доступно много рабочего софта из десктопной версии Kali. Образы можно найти на официальном сайте. Это более мощный набор, чем тот, что ты можешь получить с помощью Termux.
Подробнее о Kali NetHunter читай в статье «Атака со смартфона: знакомимся с Kali NetHunter».
Установка Gentoo на ext2-раздел
Итак, мы установили Ubuntu с помощью образа с файловой системой и шаманств с loopback-устройством и chroot-окружением. Сделать это оказалось несложно, а с применением скриптов так и вообще очень легко, но что, если пойти дальше и установить более хардкорный дистрибутив, и не с использованием образов, а на выделенный ext2-раздел на карте памяти? Так мы сможем решить проблему некоторых прошивок и ядер без поддержки loopback-устройств и к тому же сможем насладиться нормальным дистрибутивом, установленным по всем правилам.
Проект «Ubuntu for Android» в действии
Возьмем в качестве подопытной системы Gentoo. Чтобы установить его на ext2-раздел, нам понадобится карта памяти объемом не меньше 2 Гб и рутованный смартфон с установленным busybox. Последовательность действий следующая.
- Делаем бэкап данных с карты памяти и создаем на ней дополнительный раздел, объемом не меньше двух гигабайт. Сделать это можно с помощью любой программы для разбивки дисков, однако имей в виду, что если ты хочешь продолжать использовать SD-карту по прямому назначению, то создавать FAT32-раздел следует в начале карты, так, чтобы он стал первым, а дополнительный раздел для установки дистрибутива должен быть вторым.
- Форматируем разделы SD-карты:$ sudo mkfs.vfat /dev/sdc1 $ sudo mkfs.ext2 /dev/sdc2
- Берем телефон, заходим в «Настройки -> О телефоне» и смотрим, какой установлен процессор. Далее переходим на страницу goo.gl/PRfux и выкачиваем stage3 для нужной архитектуры, например stage3 для ARM v7 лежит в каталоге current-stage3-armv7a.
- Монтируем ext2-раздел карты памяти на компе и распаковываем в него содержимое полученного архива:$ sudo mount /dev/sdc2 /mnt $ sudo tar -xxpf stage3-*.bz2 -C /mnt
Сразу редактируем конфиги и все, что нужно, по вкусу, включая правку /etc/resolv.conf по образцу из предыдущего раздела.
Доступ к рабочему столу производится таким же способом, как в Ubuntu, за исключением того, что теперь прямо на телефоне придется собрать кучу софта :). Впрочем, можно настроить среду для кросс-компиляции на компе, но это уже тема для отдельной статьи.
Ubuntu на Galaxy Tab 10.1
Как установить Ubuntu в Termux (версия с GUI)
Для начала загрузим и установим Ubuntu 21.04 с помощью RandomCodeOrg с GitHub. Этот Ubuntu поставляется со всем предустановленным и выглядит как обычная версия для ПК.
Итак, чтобы установить версию Ubuntu с графическим интерфейсом пользователя в Termux, введите приведенные ниже команды в терминале Termux.
1 | apt update |
Загрузка install.sh с GitHub:
1 | curl-L-oinstall.sh https://git.io/hippo-installer |
Запуск файла install.sh:
1 | bash install.sh |
Это загрузит и настроит все необходимое для установки Ubuntu в Termux.
После того, как вышеупомянутый сценарий завершит настройку, введите hippo—install, чтобы установить Ubuntu в Termux.
1 | hippo—ubuntu |
Это загрузит и установит версию Ubuntu, которая поддерживает как графический интерфейс, так и интерфейс командной строки. Онa также поставляется с предустановленными VS Code и Sublime Text Editor. Приведенная выше команда загрузит Убунту объемом 1,8 ГБ, поэтому убедитесь, что у вас не менее 8 ГБ свободного места.
После загрузки и автоматической установки введите hippo, чтобы запустить Ubuntu.
1 | hippo |
Если вы видите [email protected] перед знаком #, это означает, что вы работаете в Убунту.
Как установить Kali Linux на Android (требуется рут)
Вышеприведенный метод Linux Deploy для запуска дистрибутивов Linux на Android, вероятно, самый лучший. Доступен хороший выбор версий Linux, включая Kali Linux.
Хотите использовать Android в качестве устройства для тестирования на проникновение? В то время как доступны различные полезные сетевые инструменты для Android, лучшим вариантом является портативная версия Kali Linux. Просто следуйте инструкциям выше, используя Linux Deploy, и выберите Kali Linux для установки на Android.
После установки у вас в кармане будет портативное решение для ручного тестирования, готовое проверить безопасность любой сети. проверить безопасность которому подключается ваш телефон.
Какие ОС можно установить на мобильные устройства?
Так вот, все программы, в том числе и операционная система, должны быть разработаны специально под эту архитектуру, для того чтобы работать на этом оборудовании. Посему, обычные версии Linux, устанавлеваемые на десктопы или серверы здесь не подойдут. К счастью, есть множество дистрибутивов и версий для этой архитектуры. Начиная с пресловутой Android, которой оснащены большинство смартфонов и заканчивая экзотическими дистрибутивами, вроде специализированного Backtrack (ныне Kali Linux). Но больший интерес, конечно, представляют какие-то более известные дистрибутивы.
Что такое Android?Андроид — это операционная система на основе Linux, разработанная корпорацией Google для мобильных устройств. Самая популярная в мире мобильная операционная система. Следует понимать, что на самом деле LInux — это лишь ядро операционной системы. А на основе его построено множество операционных систем и Андроид — лишь одна из них.
Ядро — базовый функционал, который позволяет использовать все устройства и опции аппаратной платформы — то есть драйвера и управление устройствами. Также в ядро включены некоторые базовые программы и утилиты командной строки. Дело в том, что в семействе Linux (именно в этом значении чаще всего подразумевается — семейство операционных систем на этом ядре, а не само ядро) — графическая оболочка это отдельная часть, свой уровень абстракции.
И минимальная конфигурация этих ОС — именно без графической оболочки, лишь текстовый интерфейс командной строки. Это позволяет встраивать эти ОС в самые необычные места. Например в сетевое оборудование, станки, компьютеры других сложных устройств, например в самолетах и автомобилях. Даже в вашей стиральной машине и микроволновке может быть установлено нечто подобное 🙂
Debian — старейший дистрибутив, славящийся своей стабильностью, комьюнити и большим количеством софта. Он портирован практически на все ныне существующие платформы, в том числе и ARM.
Ubuntu — это прямой потомок Debian, унаследовавший от него все положительные качества и обросший собственными, не менее привлекательными. В первую очередь это удобство установки и использования, более продвинутый интерфейс по-умолчанию, user-friendly. И ещё большее комьюнити, растущее гигантскими темпами. В далекоидущих планах даже специализированная версия, Ubuntu Phone, призванная конкурировать с Android, но проект был приостановлен.
Arch и Gentoo — это дистрибутивы Linux, которые также стоит отметить. Они славятся своей гибкостью и «хардкорностью». Они значительно сложнее в установке и управлении. И если Arch имеет лишь любительский порт под мобильную архитектуру, то Gentoo в количестве поддерживаемых платформ не уступает Дебиану.
Оказалось, информации об использовании Linux на android-устройствах довольно много.
Процесс установки
Сам процесс установки довольно прост и не способен нанести вред гаджету. Несмотря на это, ответственность за любые неисправности, которые могут возникнуть в процессе инсталляции, лежат на пользователе устройства. Важно убедиться, что на планшете или смартфоне получен рут, а также установлены библиотеки BusyBox.
Установка эмулятора терминала
Наиболее популярный эмулятор терминала типа Linux on Android можно скачать в официальном магазине Play Market (). Достаточно установить его на планшет и запустить в обычном режиме. После открытия основного рабочего окна необходимо ввести команду «su» и предоставить программе рут-доступ. Сделать это нужно обязательно, так как будут выполняться системные скрипты, которые использует Ubuntu.
Обратите внимание! Проверить работоспособность терминала просто. Достаточно вписать команду «busybox arping —help». Если система выдаст множество параметров, то все нормально. Если нет, то следует проверить гаджет на наличие рут-прав.
Скрипты в BusyBox помогают установиться систему
Загрузка скриптов и системы Ubuntu
Если установка терминала и предоставление ему соответствующих привилегий прошли успешно, то дело за малым, ведь следующие шаги достаточно просты. Необходимо подключить устройство к ПК в режиме USB-накопителя, чтобы SD-карта могла определиться на компьютере.
Далее следует создать на ней папку под названием «Ubuntu» и скачать некоторые файлы. Они содержат скрипты запуска и саму файловую систему ОС. После разархивации два файла перемещаются в созданный каталог.
Запуск Linux
На последнем шаге переходят в приложение с эмулятором терминала и снова вводят «su». Вторая команда выглядит так: «cd /mnt/sdcard». Для проверки работоспособности системы можно написать «ls» и проверить, распознает ли эмулятор папки, включая недавно созданную директорию.
Для запуска операционной системы вводят «cd/ubuntu», а потом — «sh ubuntu.sh». Начнется процесс установки, в конце которого потребуется указать разрешение экрана. Можно установить «1280×720» или меньшее, что повысит производительность.
Ubuntu на андроид должна устанавливаться довольно быстро
Обратите внимание! Теперь ОС работает, но увидеть ее будет нельзя. Для этого можно подключить графический интерфейс на основе любого клиента VNC, скачанного из Play Market. В них необходимо указывать логин (user), пароль (ubuntu) и адрес (localhost).
Источник https://planshetuk.ru/android/planshet-linux
Источник https://losst.ru/zapusk-linux-na-android
Источник https://nokiagid.ru/vazhno-znat/kak-ustanovit-linuks-na-smartfon-ili-planshet-vmesto-androida-instrukcziya