Как установить андроид рядом с линукс

Обновлено: 02.07.2024

Прошло совсем немного времени с момента выпуска первых смартфонов под управлением ОС Android до того, как энтузиасты научились запускать на них полноценные дистрибутивы Linux. Сегодня методики установки Linux-дистрибутивов на Android-устройства широко известны, а в репозитории Google Play есть даже автоматизированные системы установки и запуска Linux. В этой статье я попытаюсь аккумулировать весь накопленный опыт работы с Linux на смартфонах, расскажу, зачем это нужно, и покажу, как избежать возможных подводных камней при переносе Linux на смартфон или планшет.

Зачем?

На первый взгляд может показаться странным, что кто-то пытается запустить на мобильном устройстве операционную систему, в принципе не предназначенную для работы с экраном небольших размеров и без достаточно точного манипулятора (мышь) и клавиатуры. Однако не стоит делать поспешных выводов. Дистрибутив Linux может дать владельцу смартфона достаточно много преимуществ, среди которых набор старых проверенных инструментов, таких как утилиты командной строки, продвинутые редакторы, FTP- и SSH-серверы, сетевые инструменты и средства разработки приложений. Запустив Linux без графической оболочки на смартфоне с хардварной клавиатурой (Motorola Droid, к примеру), можно достаточно комфортно всем этим пользоваться прямо на ходу без необходимости покидать сам Android. Все инструменты доступны в любой момент, а смартфон продолжает оставаться смартфоном, позволяя принимать звонки и слушать интернет-радио.

Второй аргумент за установку Linux на смартфоне — это возможность использовать его в качестве переносной рабочей станции, которую можно подключить к любому ПК и тут же получить доступ к терминалу с помощью SSH/Telnet-клиента либо клиента VNC/RDesktop. Это по определению лучше, чем флешки с установленным Linux, так как нет необходимости, во-первых, перезагружать машину, а во-вторых, гонять туда-сюда данные; результаты твоей работы будут доступны сразу после того, как отключишь смартфон от компа.

Наконец, наибольший выигрыш Linux дает на планшетах, экран которых позволяет более-менее сносно работать в графической среде, а возможность подключить мышь и клавиатуру через OTG-кабель так и вообще дает шанс превратить планшет в полноценную рабочую станцию. При этом никакой особой разницы между установкой дистрибутива 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 (что совершенно непрактично), либо придумывать обходные пути.

Проверка работы необходимых модулей

Имей в виду, что поддержка 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), в некоторой степени автоматизирующие процесс запуска дистрибутива, хотя, по сути, это все то же руководство по установке, но интерактивное, с прямыми ссылками на скачивание образов и скриптов.

Альтернативные варианты

Выше я уже упомянул о том, что дистрибутив 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-кабель, с помощью которого можно подключить клавиатуру и мышь.

Практическое занятие

Как я уже говорил, для запуска под управлением Android пригодны только дистрибутивы, портированные на архитектуру ARM. Прежде всего это Ubuntu и Debian, причем первый по понятным причинам пользуется гораздо большим интересом среди роботоводов. Также можно установить Gentoo и несколько специализированных дистрибутивов, например Backtrack. Рассмотрим самый типичный случай, то есть установку Ubuntu по стандартной схеме, без использования каких-либо автоматизированных инсталляторов и прочего.

backtrack2

BackTrack, запущенный на планшете

BackTrack, запущенный на планшете

Для начала нам нужен образ жесткого диска с установленным дистрибутивом. Его можно создать самому, воспользовавшись эмулятором QEMU, однако в связи с тем, что процедура установки абсолютно стандартна и типична, описывать ее я не буду, а просто направлю тебя по адресу goo.gl/9nvBi. Здесь лежит архив с образом, на который предустановлен Ubuntu 12.04 с графическим окружением LXDE (было бы неразумно запускать Unity/Gnome на телефоне/планшете). Архив следует распаковать и положить файл ubuntu.img на карту памяти.

Далее надо смонтировать образ и сделать chroot в окружение дистрибутива. Для этого нужны права root, прошивка с поддержкой блочных loopback-устройств и установленный busybox (ищем в Маркете по запросу «busybox installer», в CyanogenMod есть по умолчанию). Последовательность действий:

    Открываем эмулятор терминала в Android (если нет, можно установить из Маркета Terminal Emulator). Либо подключаем смартфон/планшет к компу и получаем доступ к терминалу с помощью adb:

Собственно, на этом установка заканчивается. Теперь можно запускать консольный софт, производить обновление системы, стартовать сетевые сервисы и делать почти все, что можно сделать с обычной десктопной Linux-системой, не забывая, конечно, что некоторый софт, напрямую взаимодействующий с железом и различными специализированными псевдодевайсами, работать не будет. Также не забываем, что виртуальные ФС после завершения работы следует размонтировать.

Теперь нам необходимо установить и запустить X-сервер Xvnc, экспортирующий дисплей и устройства ввода с использованием протокола VNC. TightVNCserver уже есть в представленном образе и даже настроен, но, чтобы ты лучше понял процесс и смог решить возникшие проблемы, я подробно опишу процесс его установки и запуска.

  1. Обновляемся и устанавливаем TightVNCserver:
  2. Создаем файл /root/.vnc/xstartup и пишем в него следующее:

Чтобы не заморачиваться с ручным вводом всех команд, можно использовать скрипт ubuntu.sh, расположенный здесь: goo.gl/xSpK4. Просто положи его и образ ubuntu.img в каталог ubuntu на SD-карте и запусти скрипт командой sh ubuntu.sh, а через 5–10 секунд подключись к рабочему столу с помощью AndroidVNC. Имей в виду, что скрипт монтирует образ к каталогу /data/local/mnt.

AndroidVNC — подключаемся к рабочему столу

AndroidVNC — подключаемся к рабочему столу

Установка Gentoo на ext2-раздел

Итак, мы установили Ubuntu с помощью образа с файловой системой и шаманств с loopback-устройством и chroot-окружением. Сделать это оказалось несложно, а с применением скриптов так и вообще очень легко, но что, если пойти дальше и установить более хардкорный дистрибутив, и не с использованием образов, а на выделенный ext2-раздел на карте памяти? Так мы сможем решить проблему некоторых прошивок и ядер без поддержки loopback-устройств и к тому же сможем насладиться нормальным дистрибутивом, установленным по всем правилам.

Проект «Ubuntu for Android» в действии

Проект «Ubuntu for Android» в действии

Возьмем в качестве подопытной системы Gentoo. Чтобы установить его на ext2-раздел, нам понадобится карта памяти объемом не меньше 2 Гб и рутованный смартфон с установленным busybox. Последовательность действий следующая.

  1. Делаем бэкап данных с карты памяти и создаем на ней дополнительный раздел, объемом не меньше двух гигабайт. Сделать это можно с помощью любой программы для разбивки дисков, однако имей в виду, что если ты хочешь продолжать использовать SD-карту по прямому назначению, то создавать FAT32-раздел следует в начале карты, так, чтобы он стал первым, а дополнительный раздел для установки дистрибутива должен быть вторым.
  2. Форматируем разделы SD-карты:
  3. Берем телефон, заходим в «Настройки -> О телефоне» и смотрим, какой установлен процессор. Далее переходим на страницу goo.gl/PRfux и выкачиваем stage3 для нужной архитектуры, например stage3 для ARM v7 лежит в каталоге current-stage3-armv7a.
  4. Монтируем ext2-раздел карты памяти на компе и распаковываем в него содержимое полученного архива:

Доступ к рабочему столу производится таким же способом, как в Ubuntu, за исключением того, что теперь прямо на телефоне придется собрать кучу софта :). Впрочем, можно настроить среду для кросс-компиляции на компе, но это уже тема для отдельной статьи.

Ubuntu на Galaxy Tab 10.1

Ubuntu на Galaxy Tab 10.1

Нативная установка

Запустив Ubuntu с использованием VNC-сервера, ты заметишь неторопливость его работы, которая связана с издержками протокола VNC на передачу картинки «по сети». Чтобы избежать этой проблемы, можно установить Ubuntu в качестве основной системы рядом с Android, так, чтобы она смогла использовать видеоадаптер напрямую. К сожалению, универсального способа сделать это не существует. Каждое устройство по-своему уникально, включая различные таблицы разделов NAND-памяти, на которую производится установка, различные устройства и драйверы для их работы.

Нативный X-сервер для Android

Нативный X-сервер для Android

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

  • Отдельный или основной NAND-раздел. Linux-дистрибутив может быть установлен как в заблаговременно созданный раздел в NAND-памяти, так и в основной загрузочный раздел. В первом случае разработчик прошивки обычно оставляет возможность загрузки Android с помощью специального скрипта либо через загрузку Linux-дистрибутива в режиме восстановления, во втором он будет установлен вместо Android и для возвращения возможности загрузки робота придется заново перепрошивать устройство.
  • Возможность двойной загрузки. Если Linux-дистрибутив будет установлен на отдельный раздел, разработчик может оставить возможность загрузки Android. Однако стоит сразу обратить внимание, как эта загрузка происходит: с помощью режима восстановления либо скрипта, запускаемого с обычного компа. Все-таки второй способ будет неудобен в дороге.
  • Поддержка оборудования. Оригинальное Linux-ядро Android-прошивки уже включает в себя все необходимые драйверы, которые могут понадобиться для работы полноценной Linux-системы, однако далеко не во всех Linux-прошивках все заведется само собой. Часто возникают проблемы с Wi-Fi-адаптером и сенсорным экраном, который неадекватно реагирует на прикосновения. Поэтому перед установкой прошивки стоит внимательно прочитать о возможных осложнениях.

В любом случае будь готов к тому, что во время установки Linux-дистрибутива все твои данные будут уничтожены. Без этого никак.

Запуск Ubuntu с помощью стартового скрипта

Запуск Ubuntu с помощью стартового скрипта

Что дальше

Linux-дистрибутив, установленный рядом с оригинальной Android-системой, может стать очень удобным рабочим инструментом, однако на данный момент «Linux внутри Android» считается скорее игрушкой и способом покрасоваться перед друзьями, нежели серьезным решением. Уверен, что в скором времени, когда для Android появится полноценная реализация графического сервера Wayland, ситуация начнет меняться и мы увидим дистрибутивы с адаптированным для небольших экранов интерфейсом, а также полноценные Linux-приложения, распространяемые в форме обычных APK-пакетов. Также не стоит забывать о проекте «Ubuntu for Android» — в его рамках идет работа над официальным портом Ubuntu для Android, который позволит использовать смартфон в качестве переносного системника, подключаемого к любому монитору.

Все действия Вы выполняете на свой страх и риск.

Я использовал

  • Устройство Android 4.2 с 512Мб ОЗУ, ядро Linux 3.4.5 armv7l
  • Эмулятор терминала ConnectBot
  • Управление суперпольпользователем SuperSU
  • BusyBox v1.20.0

Часть 1: Подготовка

1. Скачаем архив с ArchLinux ARM с зеркала:


Дальнейшие действия необходимо проделывать на Android устройстве

2. Создаем файл для будущего образа с помощью make_ext4fs.

Если у вас есть отдельный раздел на карте памяти — желательно использовать его. В моем случае 16Гб SD карта была забита важными данными и возможности сдвинуть главный FAT раздел не было.

В зависимости от настроек /sdcard может быть как внешней, так и внутренней картой памяти.


3221225472 это 1024*1024*1024*3, следовательно будет создан образ в 3Гб. Размер образа определите для себя по вкусу. Помните что на FAT32 нельзя создать файл больше 4Гб

3. Примонтируем образ и распакуем файлы ArchLinux ARM


4. Несмотря на то, что наша цель — обойтись без chroot, для базовой настройки и проверки работоспособности chroot все же нужно сделать. В противном случае обновлять, доставлять пакеты Вам придется уже на боевой системе.

Часть 2: Поиск и решение проблем

Проблема 1: ping не работает


Вспоминаем, что у Android серьезная система разграничения прав. И в нем существует пермишен на «Полный доступ к сети». Без этого пермишшена пользователи не могут получить полный доступ к сокетам. То что надо.

Вернемся к Android консоли и пропишем комманду id:


У вас вывод может быть другой


Но вот незадача, chroot не обновляет group. Поможет вот такой «хак»:


Пробуем еще раз:

Проблема 2: Не работает DNS

Удаляем симлинк на systemd и запишем нормальные DNS:

Если Вы запороли PATH

Если произошло такое, что простые комманды вида ls,cat,su не работают(не видятся) системой, Вы можете попробывать вызвать их напрямую: /system/bin/ls, /system/bin/cat, /system/xbin/su.
Или перезагрузить устройство.

Ставим необходимые пакеты

Проверяем gcc

Часть 3: Подготовка к работе без chroot

Самое главное, что позволяет ArchLinux работать без chroot рядом с андроидом — тот факт, что папки и файлы ArchLinux и андроид различны и не мешают друг другу.

Если Вы не уверены в том, что файлы не пересекутся, выполните эти команды из Android консоли:


Покажет пересечение файлов. У меня это выглядит так:


Выполним копирование файлов из /etc/ в /arch/etc/ из Android:


Ключ -a обязателен, так как при использовании обычного -R права скопированы не будут.

Нужно заранее позаботится о Root.

Android приложения требуют, что бы комманда su сразу же давала доступ к суперпользователю и не запрашивала пароль.

Часть 4: Поехали!

Создадим нужные каталоги и воспользуемся mount --bind что бы виртуально заменить директорию, не изменяя ее на диске.


Если что-то сделано неправильно, Вы можете перезагрузить устройство и попробовать снова. Порядок монтирования важен. При ошибке с монтированием стандартные команды могут взятся из ArchLinux до того, как все каталоги будут смонтированы.

Что дальше

В итоге мы имеем практически полноценный ArchLinux за исключением systemd с свежими версиями пакетов.

Можно установить иксовые библиотеки и с помощью X сервера для Android пользоваться ПО для линукса. xterm заработал корректно.

Можно собирать любые программы (и, о нет, ядра) для Linux без ПК.
Можно установить Java для ARM и использовать Java приложения.

Послесловие

Большой проблемой остается systemd и его привязка к PID 1. Для того, что бы сохранить PID 1 нужно влезть в init андроида и прописать exec после инициализации устройств. Это можно сделать заменив init андроида shell скриптом, но тогда остается вопрос что делать с оригинальным init андроида. Так как место на загрузочном диске ограничено несколькими мегабайтами, нужно будет использовать switch_root в заранее созданный образ. Мне пока не удалось завести systemd таким способом.

Мне 16, и это моя первая публикация. Конструктивная критика приветствуется.

Все знают, что операционная система Android разрабатывается компанией Google для смартфонов и планшетов. На данный момент, это самая популярная платформа для этих устройств. Официальная версия Android может работать только на поддерживаемых устройствах с архитектурой ARM. Но поскольку Android - это проект с открытым исходным кодом, силами сообщества был создан порт Android для x86 компьютеров, который будет работать почти на любом современном компьютере.

Официальная версия Android 6.0 от Google вышла достаточно давно, но только несколько дней назад разработчики выпустили стабильную версию порта Android x86 для версии 6.0 В этой статье мы будет рассмотрена установка Android x86 6.0 на компьютер или ноутбук. Возможно, платформа еще недостаточно стабильна, но ее уже можно использовать и вы в этом убедитесь.

Системные требования Android x86 6.0

Android x86 достаточно требователен к оборудованию. В идеале он должен работать на любом компьютере с процессором x86. Но на самом деле не все так просто. Разработчики протестировали систему на нескольких устройствах, например, ноутбуках от ASUS, EeePC и Dell полный список поддерживаемых устройств и их уровень поддержки вы можете найти на официальном сайте.

Что касается оборудования и характеристик, то рекомендуются такие параметры:

  • Процессор: Intel;
  • Оперативная память: 2048 Мб;
  • Свободное место на диске: 10 Гб;
  • USB флешка - для записи установщика.

Подготовка к установке

Шаг 1. Загрузка установочного образа

android20

Занимает образ немного, всего 400 с лишним мегабайт, поэтому загрузиться быстро.

Шаг 2. Запись на носитель

Для установки Android нужно использовать либо флешку, либо диск с возможностью перезаписи. Но лучше все-таки флешку. Я не советую использовать различные утилиты для записи образа, сделайте это с помощью такой команды:

/android-x86-6.0.iso of=/dev/sdc bs=5M

/android-x86-6.0.iso - это только что скачанный образ, а /dev/sdc - ваша флешка.

Шаг 3. Настройка BIOS

Тут все стандартно. Перезагрузите компьютер и во время заставки BIOS нажмите F2, F8, Shift+F2 или Del для входа в настройку BIOS, дальше перейдите на вкладку Boot и выберите в 1st Boot Device вашу флешку.

boot-tab-bios-settings

Осталось перейти на вкладку Exit и нажать Exit & Save Changes.

Установка Android 6.0

Шаг 1. Начало установки

Сразу же после перезагрузки компьютера вы увидите такое окно загрузчика. Тут вы можете либо загрузиться в Live систему, либо перейти к ее установке. Нас будет интересовать последний пункт, установка:

android1

Шаг 2. Загрузка установщика

Установщик запуститься очень быстро:

android0

Шаг 3. Выбор диска

На первом шаге вам предстоит выбрать диск, на который будете выполнять установку:

android2

Шаг 4. Таблица разделов

Дальше, если этот диск еще не размечен необходимо выбрать таблицу разделов. Можно использовать GPT, но я не рекомендую это делать, поскольку большая вероятность того, что установка просто зависнет. Поэтому на этом шаге выбираем No. В таком случае будет использована MBR:

android3

Шаг 5. Создание раздела

Установка Android x86 6.0 выполняется только на один раздел. И на этом шаге нам предстоит его создать. Для этого будет использоваться утилита cfdisk. Сначала нажмите New, чтобы создать новый раздел. Перемещаться по кнопкам можно стрелками влево/вправо, а нажимать с помощью Enter:

android4

Выберите тип primary, первичный:

android5

Дальше укажите размер, вернее, согласитесь с тем, что указала программа нажатием Enter:

android6

Найдите кнопку Bootable и нажмите Enter, чтобы сделать этот раздел загрузочным:

android7

Найдите и нажмите кнопку Write, чтобы записать изменения на диск. Для подтверждения наберите yes:

android8

Осталось нажать кнопку quit для выхода из программы:

android9

Шаг 6. Выбор раздела

После завершения разметки вам нужно выбрать только что созданный раздел:

android10

Шаг 7. Файловая система

Выберите файловую систему, например, ext4

android11

Шаг 8. Форматирование

Поскольку нам нужен чистый раздел, соглашаемся с тем, что он будет отформатирован:

android12

Шаг 9. Загрузчик

Загрузчик нам понадобится, поэтому выберите Yes:

android13

Шаг 10. EFI Загрузчик

А вот EFI загрузчик нам не нужен, учитывая, что мы использовали MBR. Выберите Skip:

android14

Шаг 11. Режим доступа

В этом окне нужно выбрать нужно ли монтировать системный раздел /system в режиме чтения и записи. Это будет полезно для установки новых программ, поэтому выберите Yes:

android15

Шаг 12. Завершение установки

Дождитесь распаковки всех файлов:

android16

Шаг 13. Перезагрузка

Когда установка Android на компьютер будет закончена выберите пункт Reboot, чтобы перезагрузить компьютер и войти в новую систему:

android17

Шаг 14. Загрузчик

Выберите первый пункт загрузчика:

android19

Шаг 15. Запуск системы

Дождитесь окончания загрузки системы.

Шаг 16. Готово

Вот и все, установка Android x86 на компьютер завершена. Теперь вы можете использовать Android прямо на своем компьютере. Вы можете устанавливать и запускать Android-приложения, играть игры:

screenshot_20160918_190742

Выводы

Как вы убедились, установка android x86 на пк не так уж сильно отличается от других операционных систем. Если вам повезет и система будет полностью поддерживать ваше оборудование, то вы сможете очень просто получить полноценную систему Android на свой компьютер. Если у вас остались вопросы, пишите в комментариях!

На завершение видео с процессом установки Android от американского видео блогера:

Нет похожих записей

Оцените статью:

(15 оценок, среднее: 4,73 из 5)

Об авторе

18 комментариев

Интересно . попробуем походить и по этим тропам.

Прикольно, работает на dell 7568 (загрузчик Grub 2 ubuntu, прописывал в него Android) Некоторые приложения вылетают, но 80-90% работают хорошо, есть звук, видео ютуб проигрываются.

Я устанавливал намного проще - просто создал папку "Android" в корневом каталоге своей установленной openSUSE (они вместе на одном диске сосущевствуют очень даже хорошо!), скопировал в нее содержимое распакованого исошника и создал в ней еще папку data, прописал в грабе строчки:
kernel /Android/kernel quiet root=/dev/ram0 androidboot.hardware=android_x86 SRC=/Android
initrd /Android/initrd.img
и нормально система запускается и работает! Запускал так версии андроида начиная с 4.4

а можно подробней, как прописывали в граб?

Всё же разобрался я и установил таким способом, только вот после перезагруза, все настройки слетают и загружается Андроид опять с нуля, без програм установленных ранее, без акаунтов и т.д.
Заново надо всё делать.

Статью следовало назвать «установка андроид на виртуальную машину»,более того, автору следует так называть все свои подобные статьи.

Есть существенная разница в процесе установки?

Выше Олег писал, что ставил Андроид проще и решил попробовать, но в Ubuntu 16.04 прописка в GRUB именно такой записи при каждой загрузке надо снова вводить все данные аккаунта и настройки (после перезагрузки они не сохраняются)
.
Я, перелопатив много статей по этому поводу, методом проб и ошибок, пришёл к такому действующему на 100% варианту и сделал немного по другому (у меня 64Bit система):

- создаём в корне системы папку (например) android
- в ней же создаём папку data
- как в этой инструкции качаем дистр Android-x86_64 6.0 (в моём случае)
- открываем Менеджером архивов этот .iso файл, из-под рута (sudo nautilus) открываем Nautilus -> android и копируем (можно просто перетащить) туда из Менеджера архивов файлы: initrd.img, install.img, kernel, ramdisk.img, system.sfs
- открываем файл 40_custom командой: sudo gedit /etc/grub.d/40_custom
и вписываем, соблюдая переносы, как у меня написано, туда в конец файла (т.е. с новой строки, после уже существующего там текста):

menuentry "Android-x86_64" --class android-x86_64 linux /android/kernel root=/dev/ram0 androidboot.hardware=android_x86_64
androidboot.selinux=permissive CMDLINE
initrd /android/initrd.imgи
>

если Android под 32Bit, то в этом тексте просто в названии убираем: _64
и сохраняем файл
- делаем этот файл исполняемым командой: sudo chmod +x /etc/grub.d/40_custom
- обновляем GRUB командой: sudo update-grub
- перезагружаем систему

При старте в меню GRUB появится пункт: Android-x86_64 (или Android-x86, в зависимости от того, какой дистр вы будете ставить), который стрелкам вверх/вниз выбираем и жмём на Enter.
Android начнёт загружаться, вводите все ваши данные аккаунта Google или создайте новый и. Вуаля!


android x86 - это бесплатный проект с открытым исходным кодом для переноса системы android, созданной Google, с архитектуры ARM на архитектуру x86, что позволяет пользователям запускать систему android на своих настольных компьютерах, чтобы пользоваться всеми функциями android, а также приложениями и играми.

Проект android x86 завершил перенос системы android 8.1 Oreo на архитектуру x86 несколько недель назад. В этом посте мы объясним, как установить его в Linux, чтобы вы могли использовать свои приложения и игры для Android в любое время.

Мы собираемся использовать QEMU для запуска Android x86 в нашей системе Linux. QEMU - это очень хорошая программа-эмулятор, которая также бесплатна, имеет открытый исходный код и доступна во всех основных репозиториях дистрибутивов Linux.

Чтобы установить QEMU в Ubuntu (16.04 и 18.04) / Linux Mint / Debian, выполните:

Если вы используете Ubuntu 18.10, вам необходимо установить различные пакеты:

sudo apt install qemu qemu-kvm libvirt-daemon-system libvirt-clients

Для других дистрибутивов просто найдите пакеты qemu и qemu-kvm и установите их.

После того, как вы установили QEMU, нужно будет выполнить приведенную ниже команду, чтобы создать файл android.img, который будет похож на некое выделенное дисковое пространство для системы Android. Все файлы Android и система будут внутри этого файла-образа:

Здесь мы говорим, что хотим выделить максимум 15 ГБ для Android, но вы можете изменить его на любой нужный вам размер (убедитесь, что он по крайней мере больше 5 ГБ).

Теперь, чтобы запустить систему Android в первый раз, выполните:

sudo qemu-system-x86_64 -m 2048 -boot d -enable-kvm -smp 3 -net nic -net user -hda android.img -cdrom /home/mhsabbagh/android-x86_64-8.1-r1.iso

Замените /home/mhsabbagh/android-x86_64-8.1-r1.iso на путь к файлу, который вы скачали с сайта android x86. Для объяснения других опций, которые мы используем здесь, вы можете обратиться к этой статье.

После того, как вы выполните вышеуказанную команду, система Android запустится:




И установка будет продолжена без дальнейших запросов:



Теперь, когда система Android полностью установлена в файле android.img, вы должны использовать следующую команду QEMU, чтобы запустить ее:

sudo qemu-system-x86_64 -m 2048 -boot d -enable-kvm -smp 3 -net nic -net user -hda android.img

Обратите внимание, все, что мы сделали, просто удалили опцию -cdrom и ее аргумент. Это говорит QEMU, что мы больше не хотим загружаться с загруженного нами ISO-файла.


Затем вы перейдете к первому мастеру подготовки, выберите язык и продолжите:





Теперь вы можете выбрать свой текущий часовой пояс:


Далее система спросит вас, хотите ли вы включить какие-либо функции сбора данных. Я бы просто отключил их все:


Наконец, у вас будет на выбор 2 типа запуска, я рекомендую вам выбрать вариант Launcher3 и задать его по умолчанию:


Теперь вы увидите полностью работающий домашний экран системы Android:


Отсюда вы можете выполнять все задачи, которые вы хотите; использовать встроенные приложения для Android, или вы можете просмотреть настройки вашей системы, чтобы настроить ее так, как вам нравится. Вы можете изменить внешний вид вашей системы или запустить, например, Chrome:


Вы можете устанавливать приложения, такие как WhatsApp и другие, из магазина Google Play:


Теперь вы можете делать с вашей системой все, что хотите. Поздравляем!

Мы не хотим всегда открывать окно терминала и писать длинную команду QEMU для запуска системы Android, мы хотим запускать ее одним щелчком мыши, когда нам это нужно.

Для этого мы создадим новый файл в /usr/share/apps под названием android.desktop с помощью следующей команды:

Exec=bash -c 'pkexec env DISPLAY=$DISPLAY XAUTHORITY=$XAUTHORITY qemu-system-x86_64 -m 2048 -boot d -enable-kvm -smp 3 -net nic -net user -hda /home/mhsabbagh/android.img'

Опять же, вы должны заменить /home/mhsabbagh/android.img на путь к локальному образу в вашей системе. Затем сохраните файл.

Теперь вы всегда будете видеть значок android в меню приложений, вы можете просто щелкнуть по нему в любое время, когда захотите использовать android, и программа QEMU запустится:


Мы показали вам, как установить и запустить Android 8.1 Oreo в Linux. Отныне вам будет намного проще выполнять задачи на базе Android без какого-либо программного обеспечения, такого как Blutsticks и подобных методов. Здесь у вас есть полностью работающая и функциональная система Android, которой вы можете управлять как вам угодно, и если что-то пойдет не так, вы можете просто удалить файл образа и запустить установку заново в любое время.

2 комментария:

Как настроить интернет? Кроме вайвай не нашел варианты (((

а как принимать звонки?

Подпишитесь на RSS


Перевод. Оригинал здесь. Если вы новичек в Linux и ранее использовали iTunes для управления своим iPod/iPhone/iPad, то скорее всего буд.

uTorrent - это легкий и эффективный торрент-клиент для Linux, Windows OS и Mac OS. Установка uTorrent в Linux отличается тем, что здесь uT.

Вы можете запускать скрипты на python в Linux непосредственно из терминала. Знать, как это делается, полезно как программистам, так и пол.

Как вы наверное знаете, Safari является браузером по умолчанию в Mac OS X и iPhone OS. Вышло уже несколько релизов и для Windows, но версии .

Способ сброса пароля root в CentOS 7 кардинально отличается от такового в Centos 6. 1. В загрузочном меню нажмите "е" - реда.

Читайте также: