Cum se configurează smartphone-uri și PC-uri. Portal informativ
  • Acasă
  • Fier
  • Instalarea ubuntu pe un smartphone Android. Descărcare Linux Deploy pentru Android

Instalarea ubuntu pe un smartphone Android. Descărcare Linux Deploy pentru Android

O zi bună, dragi utilizatori ai site-ului! Recent am încercat să instalez Linux pe dispozitivul meu Android. Am folosit un smartphone numit Explay Tornado ca cobai. Aveam nevoie de un computer cu conexiune la internet, un cablu USB și un smartphone în sine. Înainte de a instala un nou sistem pe smartphone, trebuie să vă asigurați că dispozitivul are un card Micro SD instalat și drepturi de root. Dacă nu aveți drepturi Root, atunci trebuie să le obțineți! Am folosit un program de calculator numit Kingo Android ROOT. Există multe alte programe de obținut.

Trebuie să descărcați următoarele programe de pe Google Market: Complete Linux Installer; Emulator de terminal pentru Android; VNCViewer

În primul rând, vom lucra cu aplicația sau programul Complete Linux Installer. Încă o dată, nu schimbăm sistemul Android în Linux, ci facem ca un sistem să funcționeze pe altul. Când lansăm pentru prima dată aplicația, programul ne solicită să instalăm componente suplimentare pentru lucrări ulterioare, bineînțeles că suntem de acord cu ele și începem instalarea. Instalarea nu va dura mai mult de un minut dacă aveți o conexiune bună la internet. După cum se arată în figură, aplicația vă solicită să instalați scripturi de pornire, vi se cere să faceți clic pe butonul OK.

  • În continuare, aplicația vă va cere să aveți acces deplin la sistem, motiv pentru care dvs. și cu mine am primit drepturi Root. Următorul pas este să permiteți aplicației să acceseze funcțiile de sistem ale smartphone-ului sau tabletei dvs.
  • Apoi trecem la pasul următor, și anume ghidul de instalare a sistemului. Programul începe automat să verifice dispozitivul dvs. pentru toți factorii principali pentru instalarea unui mediu nou și vă va oferi rezultatele versiunilor pe care le puteți instala pe tabletă sau telefon. În cazul meu, programul a selectat aceste versiuni ale programului.
  • După cum se arată în captura de ecran de mai sus, suntem listați cu opțiuni pe care dispozitivul nostru le poate reproduce cu siguranță. Dar, după cum a arătat practica, funcționează, dar cu accidente. Blocările se pot datora faptului că dispozitivul meu este prea slab, nu știu exact cum va funcționa pentru tine. Și deci să ne uităm la exemplul instalării Ubuntu 13.10.
  • Faceți clic pe butonul etichetat Ubuntu 13.10 și treceți la următorul punct, pe care îl vom discuta în detaliu cu dvs.

Programul oferă descărcarea într-o imagine de sistem și există 3 versiuni ale acestora, mare, mică și standard, prin ce diferă? În primul rând, ele diferă prin dimensiunea (greutatea) fișierelor și, prin urmare, prin funcționalitate. Deoarece toată lumea știe că dispozitivul meu nu are suficientă memorie, trebuie să instalez un card de memorie mai mare și să aleg sistemul care ocupă mai puțin spațiu pe cardul flash. Faceți clic pe descărcare imagine și selectați fișierul de care aveți nevoie. Dimensiunile sunt foarte mari, așa că sugerez descărcarea prin torrent de pe un smartphone. Ura, până când îl setăm pentru descărcare, putem îndeplini cerințele rămase ale programului.

Fără a părăsi programul, faceți clic pe descărcare Terminal Emulator pentru Android; și VNCViewer programul vă va duce imediat la Google Play la paginile necesare cu aplicații care trebuie descărcate și instalate. Ai descărcat totul și l-ai instalat? Acum, în timp ce imaginea sistemului se încarcă, descarcăm ES-Explorer și după descărcare, îl deschidem și mergem pe cardul de memorie. Prin Explorer creăm un folder cu numele sistemului nostru, ceea ce înseamnă că creăm un folder cu numele " Ubuntu„Când imaginea este descărcată, trebuie să despachetăm arhiva într-un folder nou ( Ubuntu).

  • După ce despachetați fișierul într-un folder nou, ar trebui să aveți două fișiere în el. Unul dintre ele are extensia .img. Acest fișier va porni sistemul nostru. Revenim la început și apăsăm pe selecția sistemului și apăsăm butonul de modificare din meniul suplimentar. În acest meniu indicăm calea completă către imaginea în sine, care va arăta ceva ca captura de ecran.
  • Se pare că totul este cu setările. Dar la pornire, trebuie să deschideți terminalul și să nu atingeți nimic, aplicația în sine ar trebui să selecteze automat datele necesare în fundal, dar pentru a executa comenzi text, va trebui să confirmați executarea acțiunilor dvs. prin acces rădăcină. Aici, desigur, permitem aplicației să continue să funcționeze.
  • După aceasta, noul tău sistem va porni, iar smartphone-ul tău poate funcționa ca nou, în timp ce toate capacitățile noului sistem vor fi disponibile pentru tine, precum și în terminal și într-un mediu grafic complet. Aceasta completează prima metodă de instalare Linux Ubuntu.

Probabil asta este tot, dacă aveți întrebări, adresați-le în comentariile sub materialul de mai jos, voi fi bucuros să vă ajut la rezolvarea oricăror probleme care apar pe cât posibil și înțelegând situația mea.

Linux Deploy. Aceasta este o aplicație open source concepută pentru a automatiza procesul de instalare, configurare și rulare a distribuțiilor GNU/Linux pe platforma Android în interiorul unui container chroot. Aplicația creează o imagine de disc pe un card de memorie sau alt suport, o montează și instalează acolo distribuția Linux selectată. Este acceptată instalarea într-un fișier, direct pe o partiție a cardului de memorie, într-un director cu sistemul de fișiere ext2/ext3/ext4 și în RAM. Aplicațiile dintr-o distribuție Linux rulează într-un mediu chroot, rulează în paralel cu sistemul principal și sunt comparabile ca viteză. Toate modificările aduse dispozitivului sunt reversibile, de exemplu. Aplicația și componentele pe care le-a creat pot fi complet dezinstalate.

Instalarea distribuției Linux se realizează prin rețea din oglinzile oficiale de pe Internet. Deoarece Linux Deploy se bazează pe un apel de sistem către nucleul Linux, numai distribuțiile Linux pot acționa ca sisteme „oaspeți”. Prin interfața programului, puteți controla procesul de instalare a distribuției Linux, iar după instalare, puteți porni și opri serviciile sistemului instalat (există suport pentru lansarea propriilor scripturi). Procesul de instalare este afișat ca rapoarte text în fereastra principală a aplicației. În timpul instalării, programul însuși configurează mediul de lucru, care include sistemul de bază, serverul SSH, serverul VNC și un mediu grafic din care să alegeți. De asemenea, puteți gestiona parametrii serverelor SSH și VNC prin interfața programului.

Instalarea unei distribuții Linux durează aproximativ 30 de minute. Dimensiunea minimă recomandată a imaginii de disc fără GUI este de 512 MB, iar cu GUI - 1024 MB (pentru LXDE). După instalarea inițială, parola de acces prin SSH și VNC este atribuită ca „changeme”, care poate fi schimbată folosind instrumente de distribuție standard sau prin setările aplicației.

Caracteristici:

  • Distribuții acceptate: Debian, Ubuntu, Kali Linux, Arch Linux, Fedora, CentOS, Gentoo, openSUSE, Slackware, RootFS (tgz, tbz2, txz)
  • Tip de instalare: fișier, partiție, RAM, director
  • Sisteme de fișiere acceptate: ext2, ext3, ext4
  • Arhitecturi acceptate: ARM, ARM64, x86, x86_64, modul de emulare a arhitecturii (ARM<->x86)
  • Metode de conectare la container: CLI, SSH, VNC, server X, framebuffer
  • Interfețe de gestionare (CLI): terminal Android (sau adb), telnet, interfață web (terminal prin browser)
  • Mediu desktop: XTerm, LXDE, Xfce, MATE, altele (configurare manuală)
  • Limbi acceptate: interfață în mai multe limbi

ATENŢIE!

Acest program vine FĂRĂ NICIO GARANȚIE, iar autorul nu este responsabil pentru eventualele consecințe ale utilizării lui. Acesta este software gratuit și îl puteți redistribui conform termenilor licenței GPLv3.

INSTRUCȚIUNI DE INSTALARE GNU/LINUX

  1. Conectați WiFi sau altă rețea cu acces la Internet. Instalarea se realizează printr-o rețea și nu va funcționa fără acces la Internet.
  2. Asigurați-vă că dispozitivul dvs. a primit drepturi de superutilizator (root). Instalați cea mai recentă versiune de Linux Deploy și rulați-o.
  3. Când lansați pentru prima dată aplicația, se lansează automat actualizarea mediului de lucru, care este un director care conține toate scripturile, setările și profilurile containerului necesare. Setările mediului de lucru pot fi vizualizate în „ Setări -> Mediu de lucru". Directorul de mediu nu trebuie modificat decât dacă există un motiv pentru a face acest lucru. Este util să lăsați opțiunea " activată. Setări -> Ține ecranul aprins" ("Setări -> Blocarea ecranului"), cât timp aplicația este activă, ecranul, WiFi și procesorul nu vor intra în modul de repaus.
  4. Programul acceptă lucrul cu mai multe profiluri, unde sunt stocați parametrii fiecărei instanțe GNU/Linux. Puteți comuta rapid între instanțe prin fereastra de gestionare a profilului (se deschide făcând clic pe pictograma din antetul ferestrei principale). În mod implicit, un profil este creat cu numele „linux”. Accesați setările profilului curent (butonul din dreapta) și configurați opțiunile necesare pentru instalarea și rularea distribuției GNU/Linux ( vezi descrierea parametrului).
  5. Linux Deploy 2.x nu necesită instalare pe sistemul BusyBox, dar în cazuri rare este posibil să fie nevoie să utilizați sistemul BusyBox. Pentru a face acest lucru, instalați ®Compatibil BusyBox. În parametrii BusyBox, înainte de instalare, trebuie să selectați opțiunea " Înlocuiți applet-urile". Apoi, în setările mediului de lucru Linux Deploy, trebuie să specificați calea către sistem BusyBox în câmpul " Setări -> variabila PATH" ("Setări -> variabila PATH"), De exemplu, /system/xbinși începeți să actualizați mediul de lucru" Setări -> Actualizați mediul" ("Setări -> Actualizați ENV").
  6. Rulați instalarea distribuției selectate: " Meniul -> Instalare" ("Meniul -> Instalare"). Jurnalul de instalare este afișat în fereastra principală a aplicației. Instalarea durează în medie aproximativ 30 de minute. Etapa de creare a imaginii poate dura mult timp (aproximativ 15 minute) dacă dimensiunea este mai mare de 2 GB.
  7. Dacă instalarea este finalizată fără erori, puteți porni sistemul Linux cu „ START" ("START"). Acest lucru va lansa serviciile specificate în parametri - SSH, VNC și altele.
  8. Pentru a accesa consola unui sistem Linux prin SSH, trebuie să instalați ConnectBot (sau un alt client SSH). Pentru a accesa desktop-ul Linux, trebuie să instalați un server X, cum ar fi XServer XSDL. În setări ar trebui să specificați IP-ul dispozitivului de conectat, pentru același dispozitiv - 127.0.0.1. Parola pentru SSH și VNC este specificată în parametrii containerului. Puteți schimba parola utilizatorului curent din consolă folosind comanda passwd. Pentru a rula programe ca root, utilizați comanda sudo (de exemplu, sudo synaptic). În mod implicit, utilizatorul root (cu excepția cazului în care este specificat ca nume de utilizator în setări) nu are o parolă, dar puteți seta o parolă pentru aceasta cu comanda sudo passwd root.
  9. Pentru a opri sistemul Linux, toate serviciile care rulează sub el și pentru a demonta discurile, trebuie doar să apăsați butonul " STOP" ("STOP").
  10. Linux Deploy vă permite să gestionați containerele prin CLI (Command Line Interface). Pentru a accesa CLI, puteți folosi telnet sau un browser web, având în prealabil activat interfețele de management corespunzătoare în setări.
  11. Pentru a reduce timpul de instalare a sistemului de bază sau în cazul unor probleme cu instalarea sistemului din depozitele oficiale, puteți importa un container dintr-o arhivă pregătită în prealabil. În acest scop, există un depozit de containere create folosind Linux Deploy și accesibile prin interfața aplicației din " Repertoriu" ("Repertoriu"). Doar selectați containerul dorit în interfața de depozit și faceți clic pe " Import" ("Import"). După aceasta, în aplicație va fi creat un nou profil, ai cărui parametri pot fi modificați dacă este necesar. Apoi trebuie doar să rulați instalarea " Meniul -> Instalare" ("Meniul -> Instalare"), va fi pregătită calea de instalare (se va crea o imagine pentru container), arhiva containerului va fi descărcată, dezambalată și configurată. După finalizarea procedurii, puteți porni containerul cu butonul " START" ("START").

ACTUALIZARE A PROGRAMULUI

După actualizarea programului, mediul de lucru este actualizat automat. Dacă este necesar, actualizarea poate fi pornită manual: " Setări -> Actualizați mediul" ("Setări -> Actualizați ENV"). Actualizările programului (mediului) nu afectează un sistem GNU/Linux deja instalat, adică sistemul instalat nu poate fi deteriorat sau modificat în niciun fel din cauza unei actualizări.
Pentru a modifica setările unui sistem deja instalat sau pentru a readuce setările la cele originale, trebuie să efectuați configurația: " Meniul -> Configurați" ("Meniul -> Configurați"). Dacă unele componente sunt selectate în parametri, atunci configurația va instala pachete pentru componentele selectate.

DEZINSTALAREA UNUI PROGRAM

Înainte de a dezinstala programul, trebuie să opriți distribuția GNU/Linux folosind butonul STOP, dacă nu puteți opri distribuția, este recomandat să reporniți dispozitivul. După aceea, rulați comanda " Setări -> Șterge mediul" ("Setări -> Eliminați ENV"). După aceasta, puteți șterge aplicația. Ștergerea unei aplicații cu un container nemontat este periculoasă; ștergerea unei versiuni de aplicație mai mică decât 1.5.3 șterge și toate datele din toate partițiile montate în container! Pot exista și fișiere .img care sunt create pe cardul de memorie la instalarea distribuțiilor, astfel de fișiere pot fi șterse manual prin orice manager de fișiere.

Descărcați aplicația pentru a instala Linux pe Android - Linux Deploy pe Android poti urma linkul de mai jos.

Mulți utilizatori moderni de computere sau dispozitive mobile au auzit cel puțin despre un sistem de operare precum Linux. Dar puțini oameni știu că popularul telefon mobil se bazează și pe acest sistem, renumit pentru securitatea sa. Desigur, mințile curios au avut o întrebare - este posibil să instalați Linux pe o tabletă? Sau pe un smartphone? Vei fi surprins, dar se poate.

De ce este nevoie?

Mai întâi, să ne dăm seama de ce este posibil să aveți nevoie de Linux pe un dispozitiv mobil. Utilizatorul mediu probabil nu are nevoie de atât de mult, dar există și specialiști, de exemplu, dezvoltatori, administratori și alții. Desigur, ca instrument principal de lucru, aceasta este o decizie destul de controversată. Dar dacă îl considerăm ca un asistent mobil care va ajuta pe drum sau undeva departe de computerul principal, această opțiune are dreptul la viață.

Da, poate fi util și pentru utilizatorul mediu Linux. Este întotdeauna mai convenabil să aveți la îndemână versiuni complete de software, de exemplu, aplicații de birou, un client pentru rețele de torrent și multe altele. În plus, să nu uităm că acesta este practic același sistem de operare ca pe un computer, prin urmare, întreaga varietate de software pentru Linux, în cele mai multe cazuri, se va instala și va funcționa pe o tabletă fără probleme.

Dacă sunteți deja interesat, atunci acum vă întrebați cât de dificil este să instalați Linux pe un dispozitiv mobil. Probabil ați auzit despre cum administratorii cu barbă în pulovere tricotate își configurează mașinile pe timp de noapte și cred că doar câțiva aleși se pot descurca cu acest proces, dar nu este așa. În primul rând, în fiecare an, Linux devine din ce în ce mai ușor de utilizat (aparent, pentru a populariza sistemul, iar acest lucru funcționează parțial), iar în al doilea rând, multe autoinstalare și instrucțiuni detaliate au fost create special pentru instalare pe dispozitive mobile. Și în timp ce un utilizator neexperimentat poate avea o problemă cu cel din urmă, cu primul, cel mai adesea totul merge ca un ceas.

Cum se instalează și ce este necesar pentru aceasta

Deci, încă ați decis să instalați Linux pe tabletă. Ce vei avea nevoie pentru asta:

  • dispozitivul în sine (nucleul firmware-ului trebuie să accepte dispozitive în buclă, frecvența ceasului este de cel puțin 1 GHz - toate aceste date pot fi găsite cu ușurință fie în documentația dispozitivului, fie în rețea);
  • drepturile root obținute asupra acestuia;
  • aproximativ 4 gigabytes de memorie liberă;
  • Suport sistem de fișiere Ext2.

De menționat că majoritatea tabletelor îndeplinesc aceste specificații, așa că nu ar trebui să aveți probleme.

După ce sunteți sigur că dispozitivul dvs. îndeplinește toate cerințele, trebuie să descărcați imaginea sistemului și scriptul de instalare. Există destul de multe dintre ele, vă recomandăm să utilizați Ubuntu Installer ca fiind unul dintre cele mai simple și mai intuitive. Și Ubuntu în sine este destul de prietenos chiar și cu utilizatorii complet neexperimentați.


Există două versiuni de imagini Ubuntu pentru tablete - o versiune de probă, cu o cantitate minimă de software preinstalat și o versiune maximă, axată pe utilizarea de zi cu zi (cu o suită de birou deja instalată, client torrent, program de e-mail, instrumente de dezvoltare pentru mai multe limbaje de programare populare etc.).

Pe lângă imagine și script, veți avea nevoie și de un emulator de terminal pentru Android și VNC Viewer. De asemenea, nu uitați să îl activați în setările sistemului.


Algoritmul este foarte simplu - lansați emulatorul de terminal și introduceți trei comenzi:

- cd /sdcard/ubuntu

- sh ubuntu.sh

După care scriptul vă va cere o rezoluție (de exemplu, 1024x768 sau alta) și, dacă ați descărcat imaginea maximă, shell-ul grafic în care doriți să lucrați. Aveți de ales între Gnome și LXDE, pe dispozitivele mobile este mai bine să alegeți a doua opțiune.

Rămâne să răspundem la câteva solicitări: autentificare/parolă (ubuntu/ubuntu), adresa IP (localhost) și portul (5900). Gata, înainte de tine este un Ubuntu cu drepturi depline cu shell-ul LXDE.


Avantajul acestei metode de instalare este că necesită cel mai mic număr de acțiuni din partea utilizatorului și nu instalează Linux în loc de Android, ci îl imită. Desigur, există modalități de a instala Linux ca un al doilea sistem sau de a înlocui „robotul verde” cu totul, dar pentru a începe și a vă familiariza cu posibilitățile, metoda descrisă mai sus este mai mult decât suficientă.

12 noiembrie 2011 la 03:17

Transmigrarea sufletului: Linux pe o tabletă Android

  • *nix

Bună ziua tuturor.

Povestea mea începe cu lectura, după care am decis să cumpăr un miracol al producției chinezești de tablete: un superpad. Această tabletă a fost luată ca o jucărie pentru „sapă puțin”, part-time, un cititor, un joc pentru perechi și un ceas într-o călătorie lungă... O să notez imediat că am două hard disk-uri USB de 500 GB și 1TB, pe care este stocat tot ceea ce este cel mai important pentru o viață distractivă și sunt împărțite în ntfs și ext4. Și, firește, tableta nu le vede.

Iată voluntarul meu

Acesta este primul motiv pentru a săpa mai adânc. După ce ați vizualizat 200 de pagini de forum pe xda-developers.com, sigur

În această etapă, toate încercările de a deschide această tabletă au fost abandonate. Până la momentul glorios pentru student - sesiune. Și din moment ce în timpul sesiunii elevii fac absolut de toate, atâta timp cât nu sunt în materie, s-au reluat adunările de noapte distractive pe internet pe site-uri evident burgheze. Și ideea genială a venit să instalez Orthodox Linux pe această tabletă, în cazul meu - ubuntu.
Ce a ieșit din asta, vezi mai jos.

Este clar că nu poți să-l ridici și să-l instalezi... ei bine, unde s-a dus al nostru...

Noi vom avea nevoie:

Să ne uităm la principalele etape ale încărcării Android și Linux
1. Porniți și porniți executarea codului ROM Porniți și porniți execuția codului ROM
2. Încărcătorul de pornire Încărcătorul de pornire
3. Nucleul Linux Nucleul Linux
4. Procesul de init Procesul de init
5. Zygote și Dalvik console(bash, zsh...) / wm(kde, gnome...)
6. Serverul de sistem Încărcare finalizată
7. Încărcare finalizată

După cum puteți vedea, diferențele încep din etapa de execuție init.
Este cel mai ușor lucru de schimbat.

O să scriu sincer, m-am gândit că poți folosi doar Android init și că a fost bine înșurubat de kernel. Și chiar și după ce am primit un exemplu de disc ram funcțional de pe o altă tabletă, nu credeam că va începe...

conţinutul ramdiska
bin dev etc home init init.rc lib linuxrc mnt newroot opt ​​​​proc root sbin sys tmp usr var
În /bin există busybox, în /sbin există switch_root cu un link către acesta.
Cod de pornire de pe ramdisk de la zt-180

#!/bin/sh echo Pornind de la imaginea initram. Echo Se așteaptă trezirea SD-CARD... sleep 3 echo "Montarea noilor rootfs" mount -t ext2 /dev/mmcblk0p2 /newroot && echo OK echo Așteptați, comutați la root... exec switch_root /newroot /sbin/init echo hrm, au un shell în loc de exec /bin/ash

Tot ce rămâne este să flash discul ram în memorie (am folosit Burntool sub xp) și - voila, etapa de pornire. Da, am flashat firmware-ul în loc de recuperare, așa că pentru a porni Linux trebuie să țineți apăsate tastele la pornire.

Deci, etapa de încărcare a fost finalizată și ar trebui să aveți răbdare, deoarece consola nu dă semne de viață și totul se încarcă destul de lent.

Se configurează autentificarea automată pentru prima consolă
În /etc/init/tty1.conf înlocuiți ultima linie cu exec /bin/login -f Yor_Login< /dev/tty1 >/dev/tty1 2>&1 apoi în ~/.bashrc puteți scrie comenzi care vor porni în timpul conectării automate.
Ne luptăm cu serverul X
Pentru mine cu siguranță nu a funcționat bine cu ecranul tactil, xorg.conf și xterm... Am eliminat driverul sinaptic și am pus următoarele în ~/.xinitrc:
#!/bin/bash # $Xorg: xinitrc.cpp,v 1.3 2000/08/17 19:54:30 cpqbld Exp $ # /etc/X11/xinit/xinitrc # # fișier global xinitrc, folosit de toate sesiunile X începute prin xinit (startx) # invocă scriptul global de sesiune X #. /etc/X11/Xsession xclock -geometry 50x50-1+1 & exec xterm -geometry 80x66+0+0 -name login
Combaterea mediului de lucru
Am vrut să instalez kde pentru că îmi place foarte mult redarea grafică cu biblioteca qt. O să spun imediat: da, s-a instalat și a pornit, dar CUM...
În primul rând, am configurat imediat autentificarea automată:
în /etc/kde4/kdm/kdmrc găsim și modificăm următoarele pentru a ne potrivi
AutoLoginEnable=true # Dacă este adevărat, autentificare automată după deconectare. Dacă este fals, autentificarea automată este efectuată numai # când pornește o sesiune de afișare. # Implicit este fals #AutoLoginAgain=true # Întârzierea în secunde înainte de autentificarea automată. # Implicit este 0 AutoLoginDelay=3 # Utilizatorul să se conecteze automat. NU specifica niciodată root! # Implicit este "" AutoLoginUser=Autentificare # Parola pentru ca utilizatorul să se autentifice automat. Acest lucru NU este necesar # decât dacă utilizatorul este conectat la un domeniu NIS sau Kerberos. Dacă utilizați această opțiune #, ar trebui să „chmod 600 kdmrc” din motive evidente. # Implicit este "" AutoLoginPass=Parola
și, așa cum este scris, facem chmod 600 kdmrc în consolă sub root, astfel încât oamenii răi să nu spioneze parola noastră.
În al doilea rând, la intrare, screen saver-ul a rămas suspect de mult timp, iar eu, având îndoieli, am sunat startkde de pe consolă. După o afișare lungă și plictisitoare de tot felul de erori, plasma s-a încărcat în sfârșit în modul netbook. Efectele grafice sunt dezactivate, deoarece stăm sub un framebuffer, iar în unele locuri există încetiniri sălbatice, dar totuși acesta este kde și s-a încărcat!
Reglați totul pentru a vă potrivi
Fiecare are a lui, nu am făcut încă nicio optimizare, dar sunt multe de făcut: accelerarea încărcării, optimizarea spațiului de lucru. Mă uit către un wm mai ușor – e16 – dar nu l-am făcut încă cel principal. De asemenea, trebuie să calibrați ecranul tactil, din fericire există deja o tastatură virtuală în kde.
Mă uit spre openbox +

A trecut foarte puțin timp de la lansarea primelor smartphone-uri care rulează sistemul de operare Android înainte ca entuziaștii să învețe să ruleze distribuții Linux cu drepturi depline pe ele. Astăzi, metodele de instalare a distribuțiilor Linux pe dispozitivele Android sunt cunoscute pe scară largă, iar depozitul Google Play are chiar sisteme automate pentru instalarea și rularea Linux. În acest articol, voi încerca să acumulez toată experiența acumulată de lucru cu Linux pe smartphone-uri, să vă spun de ce este necesar acest lucru și să arăt cum să evitați posibilele capcane atunci când transferați Linux pe un smartphone sau tabletă.

Pentru ce?

La prima vedere, poate părea ciudat că cineva încearcă să ruleze un sistem de operare pe un dispozitiv mobil care, în principiu, nu este conceput să funcționeze cu un ecran mic și fără un manipulator (mouse) și tastatură suficient de precise. Cu toate acestea, nu ar trebui să trageți concluzii pripite. O distribuție Linux poate oferi proprietarului unui smartphone destul de multe avantaje, inclusiv un set de instrumente vechi dovedite, cum ar fi utilitare de linie de comandă, editori avansati, servere FTP și SSH, instrumente de rețea și instrumente de dezvoltare a aplicațiilor. Rulând Linux fără un shell grafic pe un smartphone cu o tastatură hardware (Motorola Droid, de exemplu), puteți utiliza toate acestea destul de confortabil în deplasare, fără a fi nevoie să părăsiți Androidul însuși. Toate instrumentele sunt disponibile în orice moment, iar smartphone-ul continuă să fie un smartphone, permițându-vă să primiți apeluri și să ascultați radio pe internet.

Al doilea argument pentru instalarea Linux pe un smartphone este capacitatea de a-l folosi ca stație de lucru portabilă care poate fi conectată la orice PC și poate accesa imediat terminalul folosind un client SSH/Telnet sau un client VNC/RDesktop. Aceasta este prin definiție mai bună decât unitățile flash cu Linux instalat, deoarece nu este nevoie, în primul rând, să reporniți mașina și, în al doilea rând, să conduceți datele înainte și înapoi; rezultatele muncii dvs. vor fi disponibile imediat după ce vă deconectați smartphone-ul de la computer.

În cele din urmă, Linux oferă cel mai mare beneficiu pe tablete, al căror ecran vă permite să lucrați mai mult sau mai puțin tolerabil într-un mediu grafic, iar capacitatea de a conecta un mouse și o tastatură printr-un cablu OTG oferă în general șansa de a transforma tableta într-un stație de lucru cu drepturi depline. În același timp, nu există nicio diferență specială între instalarea unei distribuții Linux pe o tabletă și un smartphone.

Cum?

Este foarte ușor să portați Linux pe Android și kernel-ul Linux joacă un rol major aici. Orice distribuție Linux este un set de aplicații și biblioteci care rulează peste nucleul Linux și, deoarece Android în sine se bazează pe un kernel Linux aproape neschimbat, aceste aplicații și biblioteci pot fi rulate în mediul Android fără probleme. Trebuie doar să găsiți o distribuție pentru care există un port pentru platforma ARM (nu uitați că 99% din toate dispozitivele Android rulează pe ARM), să o instalați folosind un emulator ARM pe un hard disk virtual (adică să un fișier), plasați acest fișier pe cardul SD al dispozitivului, deschideți un terminal, montați imaginea ca dispozitiv de loopback și crootați-o în interior. Toate! Este la fel de simplu ca rularea unui server FTP într-un mediu chrootat - o metodă simplă și testată de zeci de ani.

Singura piatră de poticnire atunci când decideți să rulați o distribuție Linux în interiorul Android este mediul grafic. Deși nu există dificultăți în accesarea consolei datorită prezenței unui emulator de terminal cu drepturi depline, problemele încep cu aplicațiile grafice - nu există un server X nativ pentru Android și este imposibil să rulați un server X obișnuit în cadrul distribuției în sine. datorită diferențelor fundamentale în arhitectura grafică subsisteme robot verzi. În ciuda faptului că folosește un standard Linux Framebuffer pe deasupra căruia puteți rula un server X, dreptul exclusiv de a-l folosi aparține inițial bibliotecilor Android de nivel superior, așa că vă rămâne fie să încărcați o distribuție Linux în loc de Android ( care este complet nepractic) sau găsirea unor soluții alternative.

Verificarea functionarii modulelor necesare

Rețineți că suportul pentru dispozitivele loopback și sistemele de fișiere ext2/ext3 necesare pentru a monta imaginea nu este disponibil în toate nucleele Linux instalate pe smartphone-urile Android. Puteți verifica asistență folosind lsmod | grep -e bucla -e ext2.

Entuziaștii au ieșit din această situație folosind o metodă simplă de conectare „de la distanță” la desktop folosind orice client VNC disponibil pentru Android. În mediul chroot, serverul Xvnc X rulează și toate aplicațiile rulează sub controlul său. Utilizatorul trebuie doar să instaleze clientul VNC, să introducă adresa locală - și voila, pe ecran apare un desktop cu drepturi depline.

Singurul blocaj atunci când utilizați Desktop la distanță este performanța. Chiar și atunci când lucrează la nivel local, VNC nu poate oferi nivelul adecvat de putere, care ar fi suficient pentru defilarea lină sau mișcarea ferestrelor fără întârziere. Nu a fost încă posibil să se rezolve această problemă; proiectele de dezvoltare a unui server X nativ care să folosească subsistemul grafic Android sunt încă foarte brute și nu pot fi folosite pentru a rula medii grafice cu drepturi depline. Cu toate acestea, nimeni nu interzice utilizarea lor; de exemplu, X Server de la Darkside Technologies Pty Ltd (goo.gl/ap3uD) este destul de potrivit pentru rularea unui software simplu.

Inițial, Linux pentru Android exista doar sub forma unei imagini cu un sistem deja instalat, precum și instrucțiuni explicative despre cum să conectați și să utilizați această imagine. Apoi au apărut script-uri care au automatizat procesul de conectare a imaginii și de pornire a Linux-ului, dar au necesitat și ceva muncă a creierului. În sfârșit, recent au existat programe de instalare disponibile pe Google Play (de exemplu, goo.gl/RSA1j), care automatizează într-o oarecare măsură procesul de lansare a distribuției, deși, în esență, acesta este încă același ghid de instalare, dar interactiv, cu link-uri directe către descărcarea de imagini și scripturi.

Opțiuni alternative

Am menționat deja mai sus că distribuția Linux poate fi încărcată în loc de Android, datorită căruia se va putea folosi Framebuffer pentru acces direct la adaptorul video și va accelera semnificativ funcționarea interfeței grafice. Cu toate acestea, a face acest lucru pe un smartphone este aproape inutil - Linux este nepotrivit ca sistem principal pe ecrane mici și va fi imposibil să primiți apeluri și să utilizați Internetul. Dar pe o tabletă Linux va arăta destul de decent.

De obicei, așa-numita versiune nativă a distribuției Linux este instalată pe un dispozitiv care rulează inițial Android, după cum urmează. O partiție suplimentară este creată pe unitatea internă NAND a tabletei, pe care este copiată distribuția Linux. Încărcătorul de pornire U-Boot (utilizat de majoritatea tabletelor) este apoi configurat să folosească această partiție ca partiție de pornire. Ca rezultat, tableta va porni automat în sistemul Linux după pornirea alimentării.

Pentru a lăsa posibilitatea de a porni Android, încărcătorul de boot U-Boot este reconfigurat astfel încât partiția cu sistemul Linux să nu fie cea principală, ci să servească drept „partiție de recuperare” (Recovery Mode), accesibilă prin pornirea dispozitivului cu tasta de volum ținută apăsată (aceeași care este folosită pentru a flash-ul dispozitivului și pentru a efectua diverse operațiuni de recuperare). În acest fel, puteți obține un dispozitiv cu pornire dublă: Android în mod implicit și o distribuție Linux atunci când porniți în modul de recuperare. Modul de recuperare în sine rămâne accesibil doar cu ajutorul unor instrumente speciale.

Dacă memoria NAND nu este suficientă pentru a găzdui un sistem Linux cu drepturi depline, părți din acesta (de obicei partiția /usr) sunt mutate într-o imagine sau o partiție de pe un card SD. Apropo, partiția ext2 de pe cardul de memorie poate fi folosită și pentru a instala Linux care rulează într-un mediu chroot.

Instalarea unei distribuții native Linux este mai dificilă decât instalarea uneia care rulează într-un mediu chroot, dar merită dacă ai o tabletă și un cablu OTG cu care poți conecta o tastatură și un mouse.

Lecție practică

După cum am spus deja, numai distribuțiile portate pe arhitectura ARM sunt potrivite pentru rularea Android. În primul rând, acestea sunt Ubuntu și Debian, iar primul, din motive evidente, prezintă un interes mult mai mare în rândul roboticii. De asemenea, puteți instala Gentoo și mai multe distribuții specializate, cum ar fi Backtrack. Să luăm în considerare cel mai tipic caz, adică instalarea Ubuntu conform schemei standard, fără a folosi instalatori automati sau orice altceva.


Mai întâi, avem nevoie de o imagine de hard disk cu distribuția instalată. Îl puteți crea singur folosind emulatorul QEMU, însă, datorită faptului că procedura de instalare este absolut standard și tipică, nu o voi descrie, ci pur și simplu vă voi direcționa către adresa goo.gl/9nvBi. Iată o arhivă cu o imagine pe care este preinstalat Ubuntu 12.04 cu mediul grafic LXDE (nu ar fi înțelept să rulați Unity/Gnome pe un telefon/tabletă). Arhiva trebuie dezambalată și fișierul ubuntu.img ar trebui să fie plasat pe cardul de memorie.

Apoi, trebuie să montați imaginea și să o faceți un chroot în mediul de distribuție. Pentru a face acest lucru, aveți nevoie de drepturi de root, firmware cu suport pentru dispozitive de loopback bloc și busybox instalat (căutați pe Piață „instalator busybox”; CyanogenMod îl are în mod implicit). Secvențiere:

  1. Deschideți emulatorul de terminal în Android (dacă nu, puteți instala emulatorul de terminal din Market). Sau conectăm smartphone-ul/tableta la computer și accesăm terminalul folosind adb: $ cd path-to-Android-SDK/platform-tools $ sudo ./adb shell

    Nu uitați că modul de depanare în acest caz trebuie să fie activat: „Setări -> Pentru dezvoltatori -> Depanare Android”.

  2. Obținem drepturi root:$su
  3. Creăm un dispozitiv de loopback bloc, conectăm o imagine de disc la el și o montem:# 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

    Conținutul imaginii ar trebui să apară în directorul /sdcard/ubuntu. Verificați dacă acesta este cazul.

  4. Conectăm toate sistemele de fișiere virtuale necesare pentru ca distribuția să funcționeze:# mount -t proc proc /mnt/ubuntu/proc # mount -t sysfs sysfs /mnt/ubuntu/sys # mount -o bind /dev /mnt/ubuntu/dev
  5. Îl configuram astfel încât să puteți obține acces complet la rețea din mediul 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. Să mergem la mediul chroot:# chroot /mnt/ubuntu

De fapt, aici se termină instalarea. Acum puteți lansa software-ul consolei, actualiza sistemul, porniți servicii de rețea și faceți aproape tot ce se poate face cu un sistem Linux desktop obișnuit, fără a uita, desigur, că unele software care interacționează direct cu hardware-ul și diverse pseudo-dispozitive specializate vor nu functioneaza. De asemenea, nu uitați că FS virtual ar trebui să fie demontat după terminarea lucrărilor.

Acum trebuie să instalăm și să rulăm serverul Xvnc X, care exportă dispozitivele de afișare și intrare folosind protocolul VNC. TightVNCserver este deja în imaginea prezentată și este chiar configurat, dar pentru a înțelege mai bine procesul și a putea rezolva orice probleme care apar, voi descrie în detaliu procesul de instalare și lansare.

  1. Actualizați și instalați TightVNCserver:# apt-get update # apt-get install tightvncserver
  2. Creați un fișier /root/.vnc/xstartup și scrieți următoarele în el:#!/bin/sh xrdb $HOME/.Xresources xsetroot -solid gri export XKL_XMODMAP_DISABLE=1 icewm & lxsession

    A treia comandă este necesară aici pentru a remedia problemele care pot apărea din cauza absenței fizice a unei tastaturi pe dispozitiv.

  3. Lansăm Xvnc folosind wrapper-ul vncserver cu drepturi de root:# export USER=rădăcină # vncserver -geometry 1024x800

    Ca urmare a executării ultimei comenzi, pe ecran va fi afișată o solicitare pentru o parolă pentru a accesa serverul VNC; este mai bine să specificați ceva simplu precum „123”. Puteți seta practic orice rezoluție, dar este mai bine dacă se potrivește cu rezoluția fizică a ecranului dispozitivului.

  4. Instalați aplicația AndroidVNC pe smartphone, lansați-o, specificați adresa IP și portul 5901 și conectați-vă. Desktopul LXDE ar trebui să apară pe ecran.

Pentru a nu vă deranja să introduceți manual toate comenzile, puteți folosi scriptul ubuntu.sh, aflat aici: goo.gl/xSpK4. Doar puneți-l și imaginea ubuntu.img în directorul ubuntu de pe cardul SD și rulați scriptul cu comanda sh ubuntu.sh, iar după 5-10 secunde conectați-vă la desktop folosind AndroidVNC. Rețineți că scriptul montează imaginea în directorul /data/local/mnt.


Instalarea Gentoo pe o partiție ext2

Deci, am instalat Ubuntu folosind o imagine cu un sistem de fișiere și trucuri cu un dispozitiv loopback și un mediu chroot. Acest lucru s-a dovedit a fi ușor de făcut, iar cu utilizarea scripturilor este în general foarte ușor, dar dacă mergem mai departe și instalăm o distribuție mai hardcore, și nu folosind imagini, ci pe o partiție ext2 dedicată pe cardul de memorie? Astfel putem rezolva problema unor firmware și nuclee fără suport pentru dispozitivele loopback și, mai mult, ne putem bucura de o distribuție normală instalată conform tuturor regulilor.


Să luăm Gentoo ca pe un sistem experimental. Pentru a-l instala pe o partiție ext2, avem nevoie de un card de memorie cu o capacitate de cel puțin 2 GB și un smartphone rootat cu busybox instalat. Secvența acțiunilor este următoarea.

  1. Facem o copie de rezervă a datelor de pe cardul de memorie și creăm o partiție suplimentară pe aceasta, cu o capacitate de cel puțin doi gigaocteți. Acest lucru se poate face folosind orice program de partiționare a discului, dar rețineți că, dacă doriți să continuați să utilizați cardul SD în scopul propus, atunci ar trebui să creați o partiție FAT32 la începutul cardului, astfel încât să devină prima unul, iar o partiție suplimentară pentru instalarea distribuției ar trebui să fie a doua.
  2. Formatarea partițiilor cardului SD:$ sudo mkfs.vfat /dev/sdc1 $ sudo mkfs.ext2 /dev/sdc2
  3. Luăm telefonul, mergem la „Setări -> Despre telefon” și ne uităm la ce procesor este instalat. Apoi, accesați pagina goo.gl/PRfux și descărcați stage3 pentru arhitectura dorită, de exemplu stage3 pentru ARM v7 se află în directorul current-stage3-armv7a.
  4. Montăm partiția ext2 a cardului de memorie pe computer și despachetăm conținutul arhivei rezultate în ea:$ sudo mount /dev/sdc2 /mnt $ sudo tar -xxpf stage3-*.bz2 -C /mnt

    Edităm imediat configurațiile și tot ce aveți nevoie, după gust, inclusiv editarea /etc/resolv.conf conform exemplului din secțiunea anterioară.

  5. Lansăm emulatorul de terminal (sau rulăm „adb shell”), montăm tot ce avem nevoie și mergem la chroot (aproape la fel ca în cazul Ubuntu): # mount -o remount,rw / # mkdir /mnt/gentoo # mount /dev/ block/mmcblk0p2 /mnt/gentoo # mount -t proc 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

Accesul la desktop se face la fel ca în Ubuntu, doar că acum va trebui să asamblați o grămadă de software direct pe telefon :). Cu toate acestea, puteți configura un mediu pentru compilarea încrucișată pe computer, dar acesta este un subiect pentru un articol separat.

Instalare nativă

După ce ați lansat Ubuntu folosind un server VNC, veți observa încetineala funcționării acestuia, care este asociată cu protocolul VNC pentru transmiterea imaginilor „prin rețea”. Pentru a evita această problemă, puteți instala Ubuntu ca sistem principal lângă Android, astfel încât să poată utiliza direct adaptorul video. Din păcate, nu există o modalitate universală de a face acest lucru. Fiecare dispozitiv este unic în felul său, incluzând diferite tabele de partiții ale memoriei NAND pe care este instalat, diverse dispozitive și drivere pentru funcționarea lor.


Din fericire, procesul de instalare a versiunii native a distribuției este bine descris pentru multe dispozitive pe forumurile în limba rusă, așa că găsirea instrucțiunilor nu va fi dificilă. Cu toate acestea, merită să acordați atenție imediat mai multor caracteristici ale acestui tip de instalare:

  • Partiție NAND separată sau principală. Distribuția Linux poate fi instalată fie într-o partiție pre-creată în memoria NAND, fie în partiția principală de boot. În primul caz, dezvoltatorul de firmware lasă de obicei opțiunea de a încărca Android folosind un script special sau prin încărcarea unei distribuții Linux în modul de recuperare; în al doilea, acesta va fi instalat în loc de Android și pentru a returna capacitatea de a descărca robotul, va trebui să reflashați din nou dispozitivul.
  • Capacitate dublă de pornire. Dacă distribuția Linux este instalată pe o partiție separată, dezvoltatorul poate lăsa opțiunea de a porni Android. Cu toate acestea, ar trebui să acordați imediat atenție modului în care are loc această descărcare: folosind modul de recuperare sau un script lansat de pe un computer obișnuit. Totuși, a doua metodă va fi incomodă pe drum.
  • Suport hardware. Nucleul Linux original al firmware-ului Android include deja toate driverele necesare care pot fi necesare pentru funcționarea unui sistem Linux cu drepturi depline, dar nu toate firmware-urile Linux vor porni totul de la sine. Probleme apar adesea cu adaptorul Wi-Fi și ecranul tactil, care nu răspunde adecvat la atingere. Prin urmare, înainte de a instala firmware-ul, ar trebui să citiți cu atenție despre posibilele complicații.

În orice caz, fiți pregătiți pentru faptul că în timpul instalării distribuției Linux toate datele dumneavoastră vor fi distruse. Nu există nicio cale fără asta.

Ce urmeaza

O distribuție Linux instalată lângă sistemul original Android poate deveni un instrument de lucru foarte convenabil, dar în acest moment „Linux inside Android” este considerat mai mult o jucărie și o modalitate de a se arăta prietenilor decât o soluție serioasă. Sunt sigur că în curând, când va apărea o implementare cu drepturi depline a serverului grafic Wayland pentru Android, situația va începe să se schimbe și vom vedea distribuții cu o interfață adaptată pentru ecrane mici, precum și aplicații Linux cu drepturi depline distribuite în sub formă de pachete APK obișnuite. De asemenea, nu uitați de proiectul „Ubuntu pentru Android” - în cadrul acestuia, se lucrează la un port oficial al Ubuntu pentru Android, care vă va permite să vă folosiți smartphone-ul ca unitate de sistem portabilă conectată la orice monitor.

Cele mai bune articole pe această temă