Лінукс для мобільних пристроїв. У чому різниця між комп'ютером та смартфоном чи планшетом? Налаштування та взаємодія з іншими ОС

Здрастуйте, дорогі читачі кращого мобільного порталу сайт! У цій статті я розповім вам про запуск повноцінних операційних систем на Android. Сьогодні, мова піде про дві операційні системи - Windows XP та Linux. Отже, приступимо до справи.

LINUX

Почнемо з легшої інструкції – запуск Linux на Android. Для початку попереджу, що для даного способупотрібні ROOT права. Також, якщо ви використовуєте смартфон на базі Android 5.0 Lollipop, Android 6.0 Marshmallow або пізнішої версії, то вам потрібне кастомне ядро. У цій статті використовується Nexus 5 із встановленим ядром «ElementalX». Отже, почнемо.

Інструкція:
1. Для початку, потрібно завантажити та встановити програму BusyBox, яка є забезпеченням більшості стандартних інструментів Unix.

2. Далі, завантажуємо та встановлюємо програму Linux Deploy, це головний компонент і без нього у нас нічого не вийде, тому що він завантажує дистрибутив з офіційного дзеркала, створює образ диска на microSD карті, монтує його та встановлює дистрибутив операційної системи.
3. Відкривши Linux Deploy, переходимо до конфігураційної панелі. Тут, вибираємо якийсь дистрибутив ви хочете використовувати. У цій статті буде використовуватися вибраний за умовчанням дистрибутив Debian у середовищі LXDE.

4. Вибравши дистрибутив, натискаємо кнопку встановити. Встановлення триває близько 30 хвилин.
5. Після закінчення установки, програма запустить середовище Linux і сама налаштує робоче оточення, яке включає базову систему, сервер SSH, сервер VNC і графічне середовище яку ми вибрали раніше. Також можна через програму можна налаштувати сервери SSH і VNC.
6. Ви можете підключитися як через SSH, так і через VNC, я використовую сервер VNC, але ви можете використовувати який хочете.
7. Якщо ви підключилися через сервер SSH, введіть порт «22», а пароль за умовчанням «changeme».
8. Якщо ви, як і я, хочете підключитися через сервер VNC, скачайте програму VNC, запустіть її і в полі впишіть адресу «localhost:5900», пароль за замовчуванням, такий самий як і у сервера SSH - «changeme».

9. Радійте запущеним дистрибутивом Linux!

Windows XP

Тепер, про більш складне - запуск Windows XP для Android. Ви скажете як? Відповідь проста - Bochs. Саме з цією програмою ми будемо емулювати Windows XP. Bochs - це програма, яка емулює операційні системи на базі x86, вона була створена для емуляції таких операційних систем як Windows DOS, Windows 3.1, Windows 95, Windows 98. Але сьогодні ми спробуємо більш складне завдання. Важливо, що робота Windows XP буде дуже-дуже повільна, а також, не буде з'єднання з інтернетом, тому, якщо у вас є терпіння і вас не цікавлять проблеми, які можуть виникнути, то вперед! Тож почнемо.

Що потрібно:
1. ISO файл Windows XP
2. Qemu Manager для ПК
3.
4. Bochs SDL
5. Blank Disk Image

Інструкція:
1. Відкрийте Qemu Manager для ПК та створіть нову віртуальну машину. Назвіть її як хочете, в даному випадку її назва буде XP.

2. Впишіть скільки оперативної пам'яті ви хочете виділити для віртуальної машини, цей крок тільки для ПК, Android девайсеце жодним чином не позначиться. Виберіть опцію «не використовувати віртуальний диск». Натисніть "далі".

3. Наступним кроком потрібно перейти у вкладку драйверів і виберіть « жорсткий диск 0». Далі виберіть шлях до раніше завантаженого «Blank Disk Image».

5. Нарешті, виконавши всі пункти, виберіть зелену кнопку у верхньому лівому куті, щоб запустити віртуальну машину. З цього моменту просто встановіть Windows XP на віртуальну машину як на простий ПК.

6. Після завершення встановлення розархівуйте.zip файл Bochs SDL. Перемістіть "Blank Disk Image" до папки SDL. Перейменуйте файл "Blank Disk Image" на "c".

8. Завантажте та встановіть програму Bochs на Android. Далі відкрийте його. Програма сама повинна визначити наявність Windows XP і запустити її. Пам'ятайте, це працює дуже повільно!

Щоб завантажитися на робочий стіл операційною системи Windows XP, потрібно почекати щонайменше 10 хвилин.

9. Радійте запущеної Windows XP!

На цьому все. Всім дякую за увагу!

Є дуже популярним, особливо в середовищі системних адміністраторівта розробників програмного забезпечення. Величезна кількість різних пристроїв працює під його керуванням. На жаль, мобільних пристроїв, таких як планшет, з рідною підтримкою Linux практично не існує. На даний момент випущена лише одна модель, що працює на Ubuntu. Але купити її може бути не так просто, оскільки він доступний не в кожній країні.

За бажання можна встановити на планшет Linux, замінивши Android.

Природно, у багатьох може виникнути питання, чи можливе встановлення Linux на планшет, що спочатку працює на Андроїд, замість цієї ОС. Офіційно і Android, і Linux мають одне ядро, але, на жаль, повноцінно працювати Linux на планшеті Android не буде. У цьому напрямі ведуться розробки, і багато програмістів активно працюють над вирішенням проблеми, але реальність сьогоднішнього дня така, що потрібно викривлятися для запуску дистрибутива Linuxна планшеті Android.

У цьому матеріалі ми надамо огляд та покрокові діїЯк поставити дистрибутив Linux на свій планшет Ми розповімо, які умови потрібно виконати, як підготувати свій пристрій, а також розповімо про особливості процедури.

Що вам знадобиться:

  • Планшет на Андроїд.
  • SD-карта об'ємом 3,5 ГБ та більше.
  • root-доступ
  • повна резервна копія всіх даних для стовідсоткової впевненості безпечного результату. Ви переміщаєте великі файлиі виконуєте величезну кількість операцій, тому це просто потрібно.

ВАЖЛИВО. ВІДМОВА ВІД ВІДПОВІДАЛЬНОСТІ. Незважаючи на те, що цей процес не завдає жодної шкоди, редакція сайту не несе відповідальності, якщо щось трапиться з вашим Android-девайсом в процесі встановлення або запуску Ubuntu.

Переконайтеся, що у вас отримані права користувача. Практично на кожному пристрої ви можете це зробити, перевіривши, чи є у вас програма Superuser. Якщо рут-прав немає, можна їх отримати. Для цього дізнайтесь інструкції, що стосуються саме вашого девайсу.

Бібліотеки BusyBox допоможуть вам взаємодіяти з системою Android. Ви можете завантажити інсталятор з Play Store(або Android Market), перейшовши сюди (https://play.google.com/store/apps/details?id=stericson.busybox) та завантаживши його. Перейдіть на вкладку «Установка BusyBox» та натисніть кнопку «Встановити». Як тільки утиліта буде встановлена, можна перейти до наступного кроку, встановивши емулятор терміналу.

Крок 2. Встановлення емулятора терміналу та перевірка правильності його роботи.

Найпопулярніший емулятор терміналу на Андроїд знаходиться на цій сторінці (https://play.google.com/store/apps/details?id=jackpal.androidterm) Play Market. Перейшовши на посилання, скачайте його, встановіть на планшет і запустіть.

Після того, як відкриється вікно програми, введіть слово «su». Утиліта запросить у вас надати root-доступ, і ви повинні дати їх, оскільки утиліта запускає системні скрипти, які ми будемо використовувати для запуску Ubuntu.

Щоб перевірити, чи правильно працюють термінал та бібліотеки BusyBox, введіть команду «busybox arping —help». Якщо термінал видасть вам текст з багатьма параметрами, такими як -f -q -b, все працює. Якщо ні, перевірте, чи є у вашому телефоні рут-права, чи правильно виконано встановлення BusyBox, і чи є термінал дозволу. Якщо все гаразд, можна продовжити.

Якщо ви закінчили всі необхідні кроки 1 і 2, не потрібно турбуватися. Наступні кілька кроків дуже прості. Почніть з підключення телефону до комп'ютера. Ви повинні увімкнути USB-накопичувач, що дозволить відкрити вашу SD-карту на комп'ютері (більшість з вас, коли переміщали музику та інші файли з комп'ютера на Андроїд, знають про це).

Далі необхідно створити папку з назвою Ubuntu на SD-карті. Потім ви повинні завантажити цей (https://sourceforge.net/projects/linuxonandroid/files/Ubuntu/10.10/ubuntuV5-image.zip/download) і цей (https://sourceforge.net/projects/linuxonandroid/files/Ubuntu /10.10/ubuntuV5-script.zip/download) файли. Це ZIP-файли, які містять дві важливі речі: скрипт запуску та файлову систему Ubuntu. Якщо ви відкриєте перший ZIP-архів, то знайдете IMG-файл, а якщо розпакувати другий файл, то виявите SH-файл.

Розархівуйте обидва архіви та перемістіть файли в папку Ubuntu. Тепер у вас має бути два файли у папці. Більшість необхідних процесів завершено.

Крок 4: Запуск системи Ubuntu

Поверніться до терміналу та знову напишіть «su», потім напишіть «cd / mnt / sdcard». Щоб переконатися, що все працює, спробуйте написати «ls» та подивитися, чи зможете ви розпізнати свої папки (ви також зможете знайти папку Ubuntu).

Щоб запустити ваш Убунту, напишіть "cd/ubuntu", а потім "sh ubuntu.sh". Це призведе до виконання багатьох процесів, які намагатимуться встановити вашу систему. Далі утиліта запросить вибрати роздільну здатність екрана. Введіть його у форматі ширина x висота, наприклад, 1280 x 720. Для більш кращої продуктивностіЩоб планшет не гальмував, вибирайте меншу роздільну здатність. Тепер все зроблено.

Система Ubuntu працює, але ми не можемо її побачити. Щоб побачити графічний інтерфейс, необхідно використовувати клієнт протоколу VNC. Ми можемо завантажити будь-який із них з Play Store.

Пройшло зовсім небагато часу з моменту випуску перших смартфонів під керуванням ОС 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 за стандартною схемою, без використання будь-яких автоматизованих інсталяторів та іншого.


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

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

  1. Відкриваємо емулятор терміналу в Android (якщо ні, можна встановити з Маркета Terminal Emulator). Або підключаємо смартфон/планшет до комп'ютера і отримуємо доступ до терміналу за допомогою adb: $ cd шлях-до-Android-SDK/platform-tools $ sudo ./adb shell

    Не забуваймо, що режим налагодження в цьому випадку має бути включений: «Налаштування -> Для розробників -> Налагодження Android».

  2. Отримуємо права root:$ su
  3. Створюємо блоковий loopback-пристрій, підключаємо до нього образ диска та монтуємо його:# mknod /dev/block/loop255 b 7 255 # mount -o remount,rw / # mkdir /mnt/ubuntu # mount -o loop,noatime -t ext2 \ /sdcard/ubuntu.img /mnt/ubuntu

    Вміст образу має з'явитися у каталозі /sdcard/ubuntu. Перевір, щоб це було так.

  4. Підключаємо всі необхідні для роботи дистрибутива віртуальні ФС:# mount -t proc proc /mnt/ubuntu/proc # mount -t sysfs sysfs /mnt/ubuntu/sys # mount -o bind /dev /mnt/ubuntu/dev
  5. Налаштовуємо так, щоб із chroot-оточення можна було отримати повноцінний доступ до мережі:# sysctl -w net.ipv4.ip_forward=1 # echo "nameserver 8.8.8.8" > /mnt/ubuntu/etc/resolv.conf # echo "nameserver 8.8.4.4" >> /mnt/ubuntu/etc/resolv.conf # echo "127.0.0.1 localhost" > /mnt/ubuntu/etc/hosts
  6. Переходимо в chroot-оточення:# chroot /mnt/ubuntu

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

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

  1. Оновлюємося та встановлюємо TightVNCserver:# apt-get update # apt-get install tightvncserver
  2. Створюємо файл /root/.vnc/xstartup і пишемо до нього наступне:#!/bin/sh xrdb $HOME/.Xresources xsetroot -solid grey export XKL_XMODMAP_DISABLE=1 icewm & lxsession

    Третя команда тут потрібна, щоб вирішити проблеми, які можуть виникнути через фізичну відсутність на пристрої клавіатури.

  3. Запускаємо Xvnc за допомогою враппера vncserver з правами root:# export USER = root # vncserver -geometry 1024x800

    В результаті виконання останньої команди на екран буде виведено запит на пароль для доступу до VNC-сервера, краще вказати щось просте на кшталт «123». Дозвіл можна встановити фактично будь-який, проте краще, якщо воно співпадатиме з фізичною роздільною здатністю екрана пристрою.

  4. Встановлюємо на смартфон додаток AndroidVNC, запускаємо його, вказуємо IP-адресу та порт 5901, підключаємося.На екрані з'явиться робочий стіл LXDE.

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


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

Отже, ми встановили Ubuntu за допомогою образу з файловою системоюі шаманств з loopback-пристроєм та chroot-оточенням. Зробити це виявилося нескладно, а із застосуванням скриптів так і взагалі дуже легко, але що, якщо піти далі і встановити хардкорніший дистрибутив, і не з використанням образів, а на виділений ext2-розділ на карті пам'яті? Так ми зможемо вирішити проблему деяких прошивок і ядер без підтримки loopback-пристроїв і, до того ж, зможемо насолодитися нормальним дистрибутивом, встановленим за всіма правилами.


Візьмемо як піддослідну систему Gentoo. Щоб встановити його на ext2-розділ, нам знадобиться карта пам'яті об'ємом не менше 2 Гб та рутований смартфон зі встановленим busybox. Послідовність дій така.

  1. Робимо бекап даних з картки пам'яті та створюємо на ній додатковий розділ, об'ємом не менше двох гігабайт. Зробити це можна за допомогою будь-якої програми для розбивки дисків, однак май на увазі, що якщо ти хочеш продовжувати використовувати SD-карту за прямим призначенням, то створювати FAT32-розділ слід на початку карти, так, щоб він став першим, а додатковий розділ для установки дистрибутива має бути другим.
  2. Форматуємо розділи SD-картки:$ sudo mkfs.vfat /dev/sdc1 $ sudo mkfs.ext2 /dev/sdc2
  3. Беремо телефон, заходимо в "Налаштування -> Про телефон" і дивимося, який встановлений процесор.Далі переходимо на сторінку goo.gl/PRfux і викачуємо stage3 для потрібної архітектури, наприклад, stage3 для ARM v7 лежить в каталозі current-stage3-armv7a.
  4. Монтуємо ext2-розділ карти пам'яті на комп'ютері і розпаковуємо в нього вміст отриманого архіву:$ sudo mount /dev/sdc2 /mnt $ sudo tar -xxpf stage3-*.bz2 -C /mnt

    Відразу редагуємо конфіги та все, що потрібно, до смаку, включаючи виправлення /etc/resolv.conf за зразком з попереднього розділу.

  5. Запускаємо емулятор терміналу (або виконуємо «adb shell»), монтуємо все необхідне і переходимо в chroot (майже так само, як у випадку з Ubuntu): # mount -o remount, rw / # mkdir / mnt / gentoo block/mmcblk0p2 /mnt/gentoo # mount -t proc /mnt/ubuntu/proc # mount -t sysfs sysfs /mnt/ubuntu/sys # mount -o bind /dev /mnt/ubuntu/dev # sysctl -w net. ipv4.ip_forward=1 # chroot /mnt/gentoo

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


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

Запустивши Ubuntu з використанням VNC-сервера, ти помітиш неквапливість його роботи, пов'язану з витратами протоколу VNC на передачу картинки "по мережі". Щоб уникнути цієї проблеми, можна встановити Ubuntu як основну систему поряд з Android, так, щоб вона змогла використовувати відеоадаптер безпосередньо. На жаль, універсального способу зробити це немає. Кожен пристрій по-своєму унікальний, включаючи різні таблиці розділів NAND-пам'яті, на яку виконується установка, різні пристроїта драйвери для їх роботи.


На щастя, процес встановлення нативної версії дистрибутива добре описаний для багатьох пристроїв у російськомовних форумах, тому знайти інструкцію буде нескладно. Варто відразу звернути увагу на кілька особливостей такого типу установки:

  • Окремий або основний розділ NAND. Linux-дистрибутив може бути встановлений як в заздалегідь створений розділ NAND-пам'яті, так і в основний завантажувальний розділ. У першому випадку розробник прошивки зазвичай залишає можливість завантаження Android за допомогою спеціального скрипту або через завантаження Linux-дистрибутиву в режимі відновлення, у другому його буде встановлено замість Android і для повернення можливості завантаження робота доведеться знову перепрошувати пристрій.
  • Можливість подвійного завантаження. Якщо Linux-дистрибутив буде встановлений на окремий розділ, розробник може залишити можливість завантаження Android. Однак варто відразу звернути увагу, як це завантаження відбувається: за допомогою режиму відновлення або скрипта, що запускається зі звичайного комп'ютера. Все-таки другий спосіб буде незручним у дорозі.
  • Підтримка обладнання. Оригінальне Linux-ядро Android-прошивки вже включає все необхідні драйвери, які можуть знадобитися для роботи повноцінної Linux-системи, проте далеко не у всіх Linux-прошивках все заведеться само собою. Часто виникають проблеми з Wi-Fi-адаптером та сенсорним екраном, що неадекватно реагує на дотики. Тому перед встановленням прошивки варто уважно прочитати про можливі ускладнення.

У будь-якому разі будь готовий до того, що під час встановлення Linux-дистрибутиву всі твої дані будуть знищені. Без цього ніяк.

Що далі

Linux-дистрибутив, встановлений поряд з оригінальною Android-системою, може стати дуже зручним робочим інструментом, проте на даний момент "Linux всередині Android" вважається швидше іграшкою і способом покрасуватися перед друзями, ніж серйозним рішенням. Впевнений, що незабаром, коли для Android з'явиться повноцінна реалізація графічного сервера Wayland, ситуація почне змінюватись і ми побачимо дистрибутиви з адаптованим для невеликих екранівінтерфейсом, а також повноцінні Linux-програми, що розповсюджуються у формі звичайних APK-пакетів. Також не варто забувати про проект «Ubuntu for Android- в його рамках йде робота над офіційним портом Ubuntu для Android, який дозволить використовувати смартфон як переносний системник, що підключається до будь-якого монітора.

В рамках цієї статті ми детально розповімо, як встановити Linux на Android. Для встановлення та повноцінної роботи альтернативної системи вам знадобиться: смартфон або планшет, програмний емулятор, права root та кілька гігабайт вільного місця.

Встановлення програми Complete Linux Installer

Вводимо в меню пошуку Google Play слово "emulator" і отримуємо список з декількох десятків приблизно однакових утиліт. Всі вони гарні, але ми зупинили увагу на програмі Complete Linux Installer. Воно абсолютно безкоштовне, чудово локалізоване та забезпечене докладною інструкцією для новачків. Програму можна завантажити на адресу . Алгоритм установки програми нічим не відрізняється встановлення будь-якого іншого програмного забезпечення, тому на цьому моменті ми зупинятися не будемо.

Робота з програмою Complete Linux Installer

Перед початком роботи з програмою хотілося б ще раз підкреслити: те, що ми описуємо в даній статті, це не встановлення Linux замість Android, а емуляція роботи однієї системи в іншій.

Отже, запускаємо програму та погоджуємося на встановлення додаткових програмних компонентів. Саме робота з цими модулями згодом істотно полегшить роботу в ОС Linux.

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

На цьому початкову підготовку емулятора до роботи закінчено. Перед вами відкриється основне меню програми. Переходимо до підпункту “Посібник зі встановлення”.

Емулятор просканує апаратну начинку вашого гаджета та видасть список операційок, які гарантовано запустяться на мобільному пристрої. Вибираємо для прикладу Ubuntu 13.10.

З цього моменту програма починає "вести" вас по етапах встановлення операційної системи, супроводжуючи кожну необхідну дію докладнішими інструкціями. Наприклад, ознайомившись із вимогами емулятора на першому кроці, обов'язково встановіть “Термінал” та “VNC Viewer” на другому. Тільки після цього вибирайте пункт "Завантажити образ".

Створіть докорінно зовнішнього накопичувачагаджета папку з ім'ям майбутньої системи. Це значно спростить програмі пошук необхідних файлів. У нашому випадку ми створюємо директорію Ubuntu. Розпакуйте завантажений архів у цю папку.

У результаті в каталозі Ubuntu повинні з'явитися два файли. Один із них – з розширенням.img. Це і є образ платформи Лінукс, що запускається.

Після виконання зазначених дій перейдіть до підпункт “Запуск” основного меню complete Linux Installer та перейдіть до допоміжного меню “Settings” у верхньому правому кутку вікна. Вибравши опцію “Змінити”, вкажіть програмі повний шлях до файлу системи, що виконується. Підтвердьте свій вибір натисканням кнопки “Зберегти зміни”.

Детальна інструкція щодо перетворення будь-якого пристрою, що працює під керуванням Android, на повноцінний комп'ютер на базі Linux.

Запуск Linux на Android можливий! І для цього не потрібний пристрій з root-правами: все необхідне програмне забезпечення доступне в офіційному магазині Google Play. Всього за 10-15 хвилин ви зможете отримати операційну систему, що відрізняється від Android розширеною функціональністю.

Примітка:якщо ви підете інструкції, ОС Linux буде запущена у віртуальному середовищі. Android буде як і раніше працювати в фоновому режимі. Назвати таку систему повноцінною було б неправильно. Проте зі списком стандартних завданьвона справляється добре.

Перед встановленням закрийте все не потрібні програмита очистіть оперативну пам'ять Android-девайсу.

1. З магазину Google Play встановіть GNURoot Debian і XServer XSDL.

2. Перед початком інсталяції Linux переконайтеся, що ваш девайс підключений до стабільної мережі Wi-Fi. Запустіть GNURoot. Почнеться завантаження пакетів середовища.

Установка займає від 30 секунд до декількох хвилин, залежно від швидкості вашого інтернет-підключення. Не звертайте уваги на рядки, що біжать, до появи наступного напису:

root@localhost:/#

Знайомих з поняттям «root-права» цей рядок нехай не лякає: програма не завдасть жодної шкоди пристрою, оскільки працює в «пісочниці».

3. Введіть наступну команду:

apt-get update

Дочекайтеся закінчення завантаження пакетів. Про це скаже рядок Reading package lists… Done.

4. Тепер введіть ще один рядок:

apt-get upgrade

На запитання "Do you want to continue?" введіть англійську букву Y та натисніть Enter. Почнеться встановлення пакетів.

На цей раз процедура установки займе трохи більше часу. Терпляче чекайте на закінчення інсталяції до появи заповітного рядка:

root@localhost:/#

Середа Debian Linuxвстановлена, і тепер можна перейти до розгортання графічної оболонки.

5. Встановлення всіх пакетів дистрибутива Linux виконується наступною командою:

apt-get install lxde

Є й варіант встановлення ядра системи з використанням рядка:

apt-get install lxde-core

Підтвердьте інсталяцію, повторно ввівши Y та натиснувши клавішу Enter. Почнеться процедура завантаження пакетів.

Під час встановлення переконайтеся, що успішно завантажилися всі файли, а при розпакуванні на вашому девайсі не скінчилося вільний простір. В іншому випадку запуск системи закінчиться помилкою.

6. Для завершення встановлення операційної системи необхідно завантажити три додаткові утиліти:

  • XTerm – для доступу до терміналу з графічної оболонки Linux;
  • Synaptic Package Manager - для керування пакетами apt та завантаження програм;
  • Pulseaudio – для встановлення драйверів звуку.

Усі три утиліти встановлюються за допомогою однієї команди терміналу GNURoot:

apt-get install xterm synaptic pulseaudio

На пристрій буде завантажено близько 260 Мб даних.

7. Тепер згорніть програму GNURoot і відкрийте раніше встановлену XServer XSDL. Погодьтеся із завантаженням додаткових шрифтів. Після закінчення установки кілька разів топніть по екрану (додаток запропонує вибрати роздільну здатність та розмір шрифтів - тут все залежить від ваших уподобань), доки не побачите заставку з синім фоном і білим текстом.

Повторно запустіть GNURoot і введіть наступні дві команди.

export DISPLAY=:0 PULSE_SERVER=tcp:127.0.0.1:4712
startlxde &

Послідовність подальшого перезапуску системи (коли ви захочете відкрити Linux повторно) виглядає так: запускаєте XServer XSDL і чекаєте появи синього екрану, відкриваєте GNURoot і вводите дві вказані вище команди, повертаєтеся до XServer XSDL.

Якщо термінал лається на неприпустиму команду, поверніться до пункту 5 даної інструкції та спробуйте встановити голе ядро. Перевірте стан пам'яті пристрою Android.

8. Тепер відкрийте XServer XSDL, зачекайте кілька секунд – і перед вами готова до роботи Linux.

Щоб інсталювати програми в нижньому лівому куті, відкрийте меню Start та виберіть Run. Введіть Synaptic та натисніть Enter.

У вікні, скористайтеся пошуком і встановіть потрібні програми. Це може бути браузер Firefoxредактор зображень GIMP, офісний пакет Libre та інші сумісні з Linux програми.

Зрозуміло, що такий варіант установки Linux не можна назвати повноцінним запуском операційної системи на Android. Віртуальна Linux має кілька обмежень, але при використанні бездротові мишіта клавіатури (можливе і підключення за допомогою OTG-перехідника та USB-хаба) ви зможете перетворити смартфон або планшет на портативний комп'ютер з функціональністю дорослої ОС.