Lansarea sistemului de operare complet pe Android

Astăzi, două sisteme de operare ocupă nișe fruntașe în segmentul mobil - iOS și Android. Mulți producători sunt implicați îndeaproape în crearea propriilor sisteme mobile. Unele încercări au avut succes. Rezultatul au fost, în cel mai bun caz, câteva dispozitive care nu au avut niciodată succes pe piață. Ubuntu Touch a fost anunțat în 2013.

Telefoanele sunt echipate cu o versiune mobilă a sistemului Linux - Ubuntu Touch.

A avut un oarecare interes din partea utilizatorilor. Ubuntu Touch, care poate fi instalat și astăzi pe un smartphone, oferă utilizatorului nu doar o nouă interfață. Va fi de interes pentru entuziaști, precum și pentru toți fanii sistemului de operare Linux. Și doar pentru cei care s-au săturat de monotonia platformelor mobile.

Platforma mobilă Ubuntu Touch a apărut acum 4 ani. Ea a câștigat o popularitate destul de largă - acest lucru a fost facilitat de binecunoscuta „mamă” desktop a noului sistem mobil. Dar versiune populară pe telefon Ubuntu Nu eu am. Motivul pentru aceasta a fost stabilitatea scăzută, un numar mare de gandaci Dispozitivele care rulau acest sistem de operare au fost adesea repornite, iar shell-ul nu a reprezentat apogeul gândirii de design.

Presa a revenit de multe ori la acest subiect. sistem de operare. Au existat tot felul de zvonuri - atât despre înghețarea platformei, cât și despre încetarea completă a lucrărilor la ea. Nu poți avea încredere în toate, dar, de fapt, Ubuntu Touch apare destul de rar pe smartphone-uri. ÎN În ultima vreme sunt lansate informații despre actualizări semnificative ale platformei și acest lucru le oferă tuturor fanilor sistemului de operare mobil speranța că Canonical nu a uitat de produsul promițător.

Proiectul pentru versiunea mobilă Ubuntu are două separate versiuni globale- pentru smartphone-uri și tablete. Se numesc Telefon și, respectiv, Tabletă. Sunt practic aceleași pentru utilizatorul final, iar diferențele vizează, mai degrabă, susținerea platformei hardware.

Caracteristici cheie

Versiunea desktop a sistemului de operare folosește interfața grafică Unity, care este îndrăgită de utilizatorii Linux neprofesioniști. În telefonul mobil, producătorul s-a îndepărtat ușor de acesta - doar panourile laterale și de sus au rămas neschimbate.

Toate acțiunile principale din noul sistem de operare sunt efectuate folosind gesturi. De exemplu, dacă trageți între marginile ecranului, meniul multitasking va apărea pe acesta. Pentru utilizatorii de Android, această soluție va fi oarecum incomodă, dar inovatoare și neobișnuită.

În plus, Ubuntu are un terminal pe smartphone-ul tău! Aceasta este încă o versiune inferioară a acesteia și este încă departe de funcționalitatea celui desktop. Cu toate acestea, unele funcții sunt încă acolo, iar tehnicile funcționează.

Cum se instalează Ubuntu pe Android?

Pentru a instala Ubuntu pe telefonul dvs. în loc de Android, trebuie să aveți abilități de bază în lucrul cu sistemul Android. Instalarea nu va elimina sistemul dumneavoastră „nativ”;

IMPORTANT. Efectuați toate acțiunile pe propriul risc și risc.

  1. Veți avea nevoie de aplicația Android - Linux Deploy. Îl puteți găsi pe Play Market.
  2. Lansați programul și explorați meniul de ajutor de pe ecran. Ar trebui să vedeți un curs de acțiune sugerat.
  3. Dacă este necesar, accesați „Setări” și selectați limba rusă a interfeței.
  4. Crea profil nou pentru contabilitate intrări Linux. Pentru a face acest lucru, în ecranul principal al programului, faceți clic pe linia „Linux”. Este situat în partea de sus.
  5. Faceți clic pe OK. Tot ce rămâne este să selectezi profilul dorit.
  6. Și acum ai nevoie Manager de fișiere. Cel mai bine este să utilizați ES File Explorer. Deschidel. În directorul rădăcină, creați un folder Ubuntu. Este foarte important să scrieți numele în engleză. Fișierele OS vor fi instalate în acest folder.
  7. Notați calea folderului într-un loc separat. În continuare va fi la îndemână.
  8. Rulați Linux Deploy din nou. În opțiuni, selectați „Distribuire” - „Ubuntu”. După aceasta ar trebui să înceapă Descărcare Ubuntu la un smartphone.
  9. Când instalarea este finalizată, faceți clic pe butonul „Start”. Veți vedea mesaje de serviciu. Ei spun că procesul de implementare a sistemului de operare este în curs.
  10. Descărcați și instalați aplicația VNCViewer. Veți avea nevoie de el pentru a obține date suplimentare. Parola cont implicit este changeme.
  11. Asta e tot! Acum aveți o copie complet funcțională a Ubuntu instalată pe smartphone sau tabletă!

Instalarea telefonului Ubuntu

Ne-am uitat la instalarea unui Ubuntu cu drepturi depline pe dispozitiv mobil. Instalarea Ubuntu De la mobil la smartphone - mai multe sarcină simplă. Poate fi realizat din versiunea desktop a acestui sistem de operare.

Instrucțiuni detaliate pentru conversia oricărui dispozitiv care rulează sub Control Android, într-un computer cu drepturi depline bazat pe Linux.

Rularea Linux pe Android este posibilă! Și pentru aceasta nu aveți nevoie de un dispozitiv cu drepturi de root: tot software-ul necesar este disponibil în magazin oficial Google Play. În doar 10–15 minute puteți obține un sistem de operare care diferă de Android prin funcționalitate avansată.

Notă: dacă urmați instrucțiunile noastre, sistemul de operare Linux va rula mediu virtual. Android va rula în continuare în fundal. A numi un astfel de sistem complet ar fi incorect. Cu toate acestea, cu lista sarcini standard se descurcă bine.

Înainte de instalare, închideți toate aplicațiile inutile și curățați RAM dispozitiv Android.

1. Din Google Play Store, instalați GNURoot Debian și XServer XSDL.

2. Înainte de început Instalări Linux Asigurați-vă că dispozitivul este conectat la o rețea Wi-Fi stabilă. Lansați GNURoot. Pachetele de mediu necesare vor începe descărcarea.

Instalarea durează de la 30 de secunde la câteva minute, în funcție de viteza conexiunii la internet. Ignorați tickerele până când apare următorul mesaj:

root@localhost:/#

Cei familiarizați cu conceptul de „drepturi rădăcină” nu ar trebui să fie speriați de această linie: aplicația nu va cauza niciun rău dispozitivului, deoarece funcționează într-un „sandbox”.

3. Introduceți următoarea comandă:

apt-get update

Așteptați până când pachetele sunt descărcate. Acest lucru va fi indicat de linia Reading package lists...Done.

4. Acum introduceți o altă linie:

apt-get upgrade

La întrebarea „Doriți să continuați?” introduceți litera engleză Y și apăsați Enter. Instalarea pachetelor va începe.

De data aceasta, procedura de instalare va dura puțin mai mult. Așteptați cu răbdare să se finalizeze instalarea până când apare linia râvnită:

root@localhost:/#

miercuri Debian Linux instalat, iar acum puteți trece la implementare înveliș grafic.

5. Instalarea tuturor pachetelor distribuție Linux executat cu următoarea comandă:

apt-get install lxde

Există, de asemenea, o opțiune de instalare a nucleului de sistem folosind linia:

apt-get install lxde-core

Confirmați instalarea introducând din nou Y și apăsând Enter. Procesul de descărcare a pachetului va începe.

În timpul instalării, asigurați-vă că toate fișierele au fost descărcate cu succes și că, la despachetare, dispozitivul dvs. nu rămâne fără spațiu liber. În caz contrar, pornirea sistemului va eșua.

6. Pentru a finaliza instalarea sistemului de operare, trebuie să descărcați trei utilitare suplimentare:

  • XTerm - pentru a accesa terminalul din shell-ul grafic Linux;
  • Synaptic Package Manager - pentru gestionarea pachetelor apt și descărcarea aplicațiilor;
  • Pulseaudio - pentru instalarea driverelor de sunet.

Toate cele trei utilitare sunt instalate folosind o comandă de terminal GNURoot:

apt-get install xterm synaptic pulseaudio

Aproximativ 260 MB de date vor fi descărcate pe dispozitiv.

7. Acum minimizați aplicația GNURoot și deschideți XServer XSDL instalat anterior. Sunteți de acord să descărcați fonturi suplimentare. După finalizarea instalării, atingeți de mai multe ori ecranul (aplicația vă va cere să selectați rezoluția și dimensiunea fontului - totul depinde de preferințele dvs.) până când vedeți un ecran de splash cu un fundal albastru și text alb.

Lansați din nou GNURoot și introduceți următoarele două comenzi una după alta:

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

Secvența de repornire ulterioară a sistemului (când doriți să deschideți din nou Linux) arată astfel: porniți XServer XSDL și așteptați să apară ecranul albastru, deschideți GNURoot și introduceți cele două comenzi de mai sus, reveniți la XServer XSDL.

Dacă terminalul se plânge de o comandă nevalidă, reveniți la pasul 5 al acestor instrucțiuni și încercați să instalați un nucleu complet. Verificați starea memoriei dispozitivului dvs. Android.

8. Acum deschideți XServer XSDL, așteptați câteva secunde și veți avea Linux gata de funcționare.

Pentru a instala aplicații în colțul din stânga jos, deschideți Meniul Startși selectați Run. Tastați Synaptic și apăsați Enter.

În fereastra care se deschide, utilizați căutarea și instalați aplicațiile necesare. Acesta ar putea fi browserul Firefox, editorul imagini GIMP, suite office Libre și alte programe compatibile cu Linux.

Desigur, această opțiune pentru instalarea Linux nu poate fi apelată lansare completă sistem de operare pe Android. Linux virtual are mai multe limitări, dar atunci când utilizați un mouse și o tastatură fără fir (este posibil să vă conectați folosind un adaptor OTG și un hub USB), vă puteți transforma smartphone-ul sau tableta în laptop cu funcționalitatea unui sistem de operare pentru adulți.

Mulți proprietari de telefoane Android întâmpină dificultăți să ruleze software Linux real pe dispozitivele lor. După toate legile, se pare că ar trebui să funcționeze aici, dar din anumite motive aveți nevoie de drepturi de root pentru a-l instala, el însuși este distribuit în unele instalatoare de casă, iar alegerea programelor este foarte limitată. Acest articol va oferi un răspuns la întrebarea de ce s-a întâmplat acest lucru și va sugera o soluție - mod convenabil instalând și rulând aproape orice software Linux pe Android.

Linux sau nu Linux?

După cum știți, Android se bazează pe Nucleul Linuxși include un set de biblioteci standard și utilitare de linie de comandă tipice unei distribuții Linux obișnuite. Cu toate acestea, lansarea software-ului Linux clasic aici este foarte dificilă din multe motive, inclusiv incompatibilitatea ABI, lipsa unui manager de pachete, sistemul de securitate proprietar și absența multor componente ale unui sistem Linux standard.

Deci, în ciuda prezenței în Standard Android bibliotecile libc și altele, implementarea lor în majoritatea cazurilor este incompatibilă cu bibliotecile din proiectul GNU și este mult redusă în funcționalitate. Din acest motiv, software-ul Linux trebuie cel puțin reconstruit special pentru procesoarele Android și ARM și, în multe cazuri, de asemenea, corectat, adăugând funcționalități care lipsesc din biblioteci.

BotBrew: lista de dispozitive acceptate

BotBrew a fost testat următoarele dispozitive: Barnes & Noble NOOK Color, LG P970 Optimus Black, Huawei Ascend M860, HTC Desire, HTC Evo 4G, HTC Evo 3D, HTC Inspire 4G, HTC Droid Eris, HTC Hero, Samsung Galaxy Nexus, Samsung Galaxy S2 (GT-I9100), Samsung Galaxy Y (GT-S5360), Motorola Atrix 4G, Motorola Droid/Milestone, Sony Ericsson Xperia X8, Asus EeePad Transformer TF101.

Sistem Securitate Android, tăind aplicațiile în privilegii prin program completși nu le permite să meargă dincolo de propriul director, interferează serios cu funcționarea software-ului standard Linux. Prin urmare, este adesea necesar să obțineți drepturi de root, ceea ce elimină aceste restricții. Lipsa unui manager de pachete care să vă permită să instalați software Linux obișnuit, și nu doar aplicații Java, forțează dezvoltatorii să scrie aplicații care sunt necesare doar pentru a instala alte aplicații. Așa apar toate aceste programe de instalare personalizate.

Ei bine, imaginea este completată de faptul că Android pur și simplu nu are multe standarde componente Linux, inclusiv, de exemplu, chiar și cele integrale precum stiva grafică X Window sau biblioteca GTK+. Se fac unele încercări de a aduce toate acestea aici, desigur, dar lucrurile nu se mișcă dincolo de versiunile alfa semi-funcționale.

Cu toate acestea, oportunitatea de a transfera funcționalitatea unui sistem Linux cu drepturi depline pe Android este o idee prea tentantă pentru ca pasionații să nu încerce să rezolve problemele care apar în acest proces și să ne ofere o soluție cu drepturi depline. solutie universala. Cea mai evidentă și simplă modalitate este de a rula o versiune „virtualizată” a unei distribuții Linux cu drepturi depline, despre care am scris deja în detaliu. Această metodă este interesantă, dar suferă de problema împărțirii sistemului în două zone, fiecare dintre acestea funcționând independent de cealaltă.

Proiectul BotBrew pare mult mai interesant - în cadrul său, se dezvoltă un manager de pachete și un depozit destul de obișnuit pentru sistemele Linux, cu ajutorul căruia puteți instala software-ul Linux într-un director separat în interiorul Android. De asemenea, la un moment dat, au fost inventate multe scripturi diferite care facilitează și fără probleme inutile asamblarea software-ului Linux potrivit pentru a lucra în interiorul Android pe frate mai mare. Restul articolului va fi dedicat acestor două proiecte.

BotBrew

Proiectul BotBrew este conceput pentru a rezolva multe probleme legate de instalarea software-ului Linux pe care un utilizator le poate avea și să se pregătească sistem Android să accepte cereri străine ei. În esență, sistemul este format din patru componente:
  • depozit cu precompilate pentru aplicații Android, folosind care puteți instala multe aplicații Linux folosind o singură comandă;
  • manager de pachete, care folosește Opkg sau dpkg ușor împreună cu apt-get în versiunea experimentală a BotBrew Bazil;
  • managerul de proces runit, care este necesar pentru a lansa și a menține corect funcționarea demonilor, dacă sunt instalați;
  • un sistem de construcție proprietar care conține toate instrumentele necesare pentru compilarea încrucișată a aplicațiilor folosind orice distribuție Linux desktop.
Pentru a funcționa, acest miracol al gândirii de programare nu necesită absolut nimic: drepturi de root și puțin spațiu liber memorie interna smartphone sau card de memorie. Mai mult decât atât, prima opțiune este de preferat, deoarece în cazul SD fișierele vor fi aruncate pe un disc virtual, care nu este acceptat de toate nucleele.


Inițializare

În acest moment, versiunea clasică de BotBrew, care folosește propriul depozit, vă permite să instalați software precum dcron, GCC, Git, dropbear SSH server, browser consola Lynx, scanner de securitate Nmap, instrument de backup rsync, Editor Vim, server web lighttpd, limbaje de scripting Python și Ruby, precum și alte câteva zeci de pachete. Apropo, toate acestea sunt instalate într-un director dedicat în memoria internă a smartphone-ului/tabletei și nu aglomerează în niciun fel sistemul principal. Cu alte cuvinte, puteți scăpa de BotBrew și de tot ce ați instalat prin simpla ștergere a unui director.

Instalați software-ul

Deci, cum folosiți BotBrew pentru a instala software-ul Linux? În primul rând, avem nevoie de un pachet cu programul în sine. Este disponibil pe Google Play (rețineți că aveți nevoie de root BotBrew, nu Bazil experimental) și cântărește mai puțin de un megaoctet. După instalare, lansați și faceți clic pe butonul „Continuați” din partea de jos a ecranului, astfel încât software-ul să descarce toate componentele necesare funcționării sale, cum ar fi manager de consolă pachete și alte utilitare (în termeni Debian Linux - bootstrap). Cântăresc doar câțiva megaocteți, așa că nu va trebui să așteptați mult. Odată ce instalarea este finalizată, BotBrew va afișa o fereastră cu site-ul oficial al proiectului, pe care o puteți închide în siguranță.

Acum pe ecran ar trebui să vedeți o listă de pachete disponibile pentru instalare. Există destul de multe, dar din motivele descrise mai sus nu veți găsi aplicații grafice printre ele. Dar există o varietate de servere, compilatoare și interpreți, așa că toți cei care doresc să se „joace” serios cu un smartphone vor avea loc să se întoarcă. Pentru a instala un pachet, trebuie doar să atingeți numele acestuia și pe următorul ecran care conține informații despre aplicație, faceți clic pe butonul „Instalare”.

Dans cu tamburine

Dacă întâmpinați probleme cu BotBrew bootstrap, puteți încerca să îl instalați manual folosind următoarea comandă:

Wget http://repo.botbrew.com/anise/bootstrap/install.sh -O - | su
Dacă acest lucru nu ajută, puteți încerca să eliminați toate instalările („Eliminați BotBrew” din setări) și apoi încercați să rulați această comandă.

După aceasta, pachetul va apărea în fila „Instalat”, dar nu veți vedea niciun buton „Run” sau ceva similar. Aplicația va trebui lansată independent de consolă, ceea ce este totuși logic. Aplicația în sine este instalată în structura de directoare /data/botbrew, în care mediul real al distribuției Linux cu directoarele /etc, /usr și altele este „emulat”. Și pentru a nu chinui utilizatorii cu nevoia de a introduce calea completă către comandă, dezvoltatorii BotBrew au furnizat o comandă wrapper cu același nume. Pentru a-l utiliza pentru a lansa, de exemplu, browserul de consolă Lynx instalat, ar trebui să tastați următoarea comandă:

$ botbrew lynx http://xakep.ru
Alternativ, directorul /data/botbrew/bin poate fi adăugat la variabila de mediu PATH, dar acest lucru va trebui făcut după fiecare pornire a terminalului:

$ export PATH="$PATH:/data/botbrew/bin"
Apropo, lucrurile stau mult mai bine cu demonii și cu diverse servicii de rețea. După pornire, demonii vor fi lansati imediat și puteți controla includerea lor prin interfața grafică, accesibilă făcând clic pe butonul „Play” din partea de jos a interfeței BotBrew. Unele aplicații pot necesita crearea utilizatori suplimentariși modificându-le parametrii, acest lucru se poate face în același mod ca într-un sistem Linux obișnuit:

  1. Crearea unui utilizator:
    $ botbrew adduser Vasya
  2. Deschiderea accesului la Internet pentru utilizator:
    $ botbrew addgroup vasya inet
  3. Comutați BotBrew la alt utilizator:
    $ botbrew su vasya
Vă rugăm să rețineți că toate aceste modificări vor afecta doar mediul virtual BotBrew și nu vor afecta în niciun fel sistemul principal. Consola poate fi folosită și pentru a instala aplicații care ocolesc GUI. Pentru a face acest lucru, ar trebui să utilizați managerul de pachete de consolă Opkg, a cărui sintaxă a comenzii este pe deplin compatibilă cu apt-get:

$ botbrew opkg instalează dropbear
Funcționare inversă:

$ botbrew opkg eliminați dropbear
Pentru a rămâne „în fruntea progresului”, depozitul BotBrew trebuie actualizat din când în când făcând clic pe butonul corespunzător din interfața grafică (nu îl puteți confunda cu nimic altceva). Noile versiuni ale pachetelor vor fi afișate în fila „Upgradable”. Doar atingeți numele lui și faceți clic pe „Actualizați”.

BotBrew Busuioc

De asemenea, puteți găsi pe piață o aplicație numită BotBrew Basil, care este marcată ca experimentală. În esență, acesta este în continuare același BotBrew, dar cu o diferență foarte importantă. În loc de propriile depozite și managerul de pachete Opkg, folosește depozitele Debian Linux ARM și managerul de pachete apt-get. Aceasta înseamnă că cantitatea de software care poate fi instalată folosind „versiunea braziliană” a aplicației este mult mai mare. De zece ori mai mult.

Pe lângă utilizarea depozitelor Debian, Basil are și o interfață ușor modificată. De exemplu, imediat după lansare, vă solicită să selectați un director de instalare. Implicit este /data/botbrew-basil, ceea ce, după părerea mea, este destul de logic, dar puteți alege oricare altul, inclusiv pe partiția ext2 a cardului de memorie (FAT nu va funcționa).

A doua diferență importantă este posibilitatea de a alege modul de utilizare a aplicației, care apare imediat după ce faceți clic pe „Continuați”. Există patru opțiuni aici:

  1. Utilizați BotBrew pe Linie de comanda- de fapt, un analog al instalării în stilul unui BotBrew obișnuit.
  2. Utilizați sistemul dpkg/APT - instalarea împreună cu apt-get și depozitele Debian. Opțiune de instalare recomandată.
  3. Rulați programe Python - similar cu prima opțiune cu instalare automată Piton.
  4. Instalați o Debian minimă - instalare minimalistă a Debian.
Permiteți-mi să explic al doilea și al patrulea punct. Primul BotBrew și primul articol din această listă nu fac altceva decât să instaleze un sistem Linux minimalist (constând doar din câteva comenzi și biblioteci), în cadrul căruia este lansat software-ul Linux. Cu toate acestea, apt-get, spre deosebire de minimalistul Opkg, necesită o instalare Linux mai mult sau mai puțin completă. Prin urmare, selectând a doua opțiune, veți obține un fel de micro-Linux pe smartphone-ul dvs. Și dacă putem instala o microversiune, de ce să nu instalăm o distribuție mai mult sau mai puțin cu drepturi depline. Acesta este motivul pentru care există un al patrulea punct.

După bootstrap-ul BotBrew Basil, pe ecran va apărea aceeași interfață de gestionare a instalării aplicației, cunoscută nouă din versiunea clasică a aplicației, iar în sistem va apărea comanda botbrew2, cu ajutorul căreia puteți lansa software-ul. Nu există diferențe semnificative în management aici, cu excepția, poate, a comenzii apt-get în loc de opkg și a capacității de a conecta depozite suplimentare (inclusiv primul depozit BotBrew) direct prin interfața de instalare a aplicației.

Să luăm lucrurile în propriile noastre mâini

Aplicațiile precompilate și depozitele pre-ambalate sunt grozave, dar dacă aplicație necesară nu este disponibil pentru instalare? La urma urmei, chiar și același BotBrew Basil, care vă permite să conectați depozitele Debian cu o cantitate imensă de software, datorită naturii sale experimentale, nu va funcționa pe fiecare smartphone.

În acest caz, putem încerca să construim singuri aplicația. Cu toate acestea, aici ne așteaptă câteva dificultăți: adevărul este că pentru a construi software pentru un smartphone, va trebui să pregătiți instrumentele necesare de compilare încrucișată, apoi să țineți cont de toate dependențele aplicației care este asamblată și, în cele din urmă, în unele cazuri, efectuați modificările necesare la cod. Toate acestea sunt chestiuni destul de supărătoare pe care nu merită să pierdeți timpul.

Cu toate acestea, putem folosi munca altor oameni pentru a automatiza procesul de construire a software-ului. Una dintre cele mai dezvoltate și solutii interesante din această zonă este un set de scripturi SCRIPTSET dezvoltate de utilizatorul smitna de la XDA Developers. Permite literalmente câtorva echipe să adune multe dintre cele mai multe aplicatii diferite, inclusiv htop, ImageMagick, iptables, ELinks, Screen, mc, node.js, Samba, strace, QEMU, Parted, SANE (poate fi folosit pentru a imprima direct la o imprimantă de pe telefon!) și multe altele. Scriptul în sine va descărca compilatorul încrucișat, toate dependențele și aplicațiile necesare, va aplica patch-uri acolo unde este necesar și va genera o arhivă pregătită pentru despachetare pe telefon.

SCRIPTSET funcționează numai pe Linux, dar dacă aveți Windows, puteți instala Ubuntu pe mașină virtuală. Apoi, ar trebui să deschideți un terminal și să instalați instrumentele necesare pentru a construi compilatorul încrucișat:

$ sudo apt-get install build-essential cmake autoconf2.13 scons
După aceasta, puteți obține SCRIPTSET-ul însuși și îl puteți despacheta:

$ cd ~ $ wget http://goo.gl/zvnom -O scriptset-2.6.zip $ unzip scriptset-2.6.zip
Ca urmare a despachetării, vom primi... o altă arhivă: scriptset-2.6.tar.bz2. Dar asta nu este tot, arhiva este ambalată fără directorul rădăcină tradițional pentru tar, așa că trebuie să o creați singur. Și deja despachetați în el:

$ mkdir scriptset $ cd scriptset $ tar -xjf ../scriptset-2.6.tar.bz2

După despachetare, în director vor apărea mai multe scripturi, configurații, precum și un fișier README impresionant care conține instrucțiuni de utilizare a scripturilor. Scripturile nu au un bit de execuție (ceea ce nu este surprinzător, având în vedere problemele anterioare), așa că trebuie să îl setați singur:

$ chmod 755 *.sh

# vi ~/scriptset/configuration.conf // Director pentru instalarea aplicațiilor pe smartphone TARGET_SYSROOT="/data/sysroot" // Procesor țintă TARGET_MARCH="armv7-a" TARGET_MTUNE="cortex-a9" TARGET_MFPU="neon" TARGET_MFLOAT =" softfp"

Acest lucru va fi suficient pentru a construi corect orice aplicație; Procesorul țintă va fi ARMv7 standard cu un set suplimentar de instrucțiuni NEON. Acesta este instalat în orice smartphone lansat în ultimii trei până la patru ani. Directorul /data/sysroot va fi folosit pentru a instala aplicații pe smartphone, totuși, destul de ciudat, va trebui să fie creat și pe computerul desktop:

$ sudo mkdir -p /data/sysroot $ sudo chown user:users /data/sysroot $ sudo chmod 777 /data/sysroot
După cum explică autorul scripturilor, această acțiune este necesară deoarece căile pentru directoarele cheie din unele aplicații sunt cusute în etapa de construire. Prin urmare, dacă ar fi să construim o aplicație folosind directorul curent și orice alt director ca rădăcină, pur și simplu nu ar funcționa pe un smartphone din cauza diferențelor de căi. Sunt sigur că ar fi mai corect să rezolvi această problemă folosind chroot, dar este mai ușor și mai rapid să creezi directorul dorit și să-l ștergi când ai terminat.

În continuare, trebuie să indicăm lista aplicațiilor pe care intenționăm să le colectăm. Pentru a face acest lucru, deschideți fișierul package_selection.conf și schimbați nu cu da în opțiunile necesare. De exemplu, pentru a construi bash, ImageMagick și Screen, trebuie să modificați următoarele trei linii:

# vi ~/scriptset/package_selection.conf BASH=da IMAGEMAGICK=da SCREEN=da
Rețineți că setările dintre liniile # ALWAYS NEEDED nu pot fi modificate. Aceste aplicații și biblioteci sunt întotdeauna necesare și fără ele pur și simplu nu pot fi construite alte aplicații. Acum puteți compila aplicațiile. Pentru a face acest lucru, trebuie doar să rulați scriptul build.sh fără argumente:

$./build.sh
Dacă toate pachetele necesare au fost instalate și compilatorul nu a generat erori în timpul construirii, ca urmare a construirii vor apărea două arhive în directorul curent: cs-sysroot.tar.bz2 și android-mysysroot.tar.bz2. Primul este mediul necesar rulării aplicațiilor, creat de compilatorul încrucișat, iar al doilea este setul de aplicații în sine. Ambele arhive trebuie transferate pe cardul de memorie al smartphone-ului și apoi, rulând un emulator de terminal pe acesta sau conectându-se prin ADB, executați două comenzi:

$ tar xjf /sdcard/cs-sysroot.tar.bz2 $ tar xjf /sdcard/android-mysysroot.tar.bz2
Ca urmare, directorul /data/sysroot va apărea în memoria internă a smartphone-ului, în care vor fi localizate aplicațiile. Acestea ar trebui să fie lansate de pe același terminal, indicând calea completă. De exemplu:

$ /data/sysroot/usr/bin/bash
Ei bine, sau după ce porniți terminalul, adăugați /data/sysroot/usr/bin la PATH:

$ export PATH="$PATH:/data/sysroot/usr/bin"

concluzii

În ciuda diferențelor destul de serioase dintre Android și o distribuție tipică Linux, instalarea aplicațiilor de consolă Linux pe un smartphone nu este atât de dificilă. Din păcate, o aplicatii graficeîncă nu se vorbește, dar există deja proiecte pentru portarea bibliotecii Qt și a serverului grafic Wayland pe Android și, în curând, sper că vom obține o soluție funcțională.


Prima dată publicată în revista Hacker, 08/2013.

12 noiembrie 2011 la 03:17

Transmigrarea sufletului: linux pe tableta 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

Pe î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ă se pună această tabletă Linux ortodox, î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 etapele principale descărcări Androidși Linux
1.Porniți si cizma 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 Boot 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. Ecou Așteptând SD-CARD wake up... 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, have un shell în schimb 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, l-am afișat în loc de recuperare, deci pt lansează Linux Trebuie să țineți apăsate tastele când porniți.

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 # The parola pentru utilizatorul să se conecteze 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. Efecte grafice oprit, 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 l-am optimizat încă, dar sunt multe de făcut: grăbiți încărcarea, optimizați spațiul de lucru. Mă uit către un wm mai ușor – e16 – dar nu l-am făcut încă cel principal. trebuie să calibrezi și ecranul tactil, din fericire tastatura virtuala deja disponibil în kde.
Mă uit spre openbox +

Rularea Linux pe Android este posibilă! Și nu aveți nevoie de un dispozitiv cu drepturi de root pentru aceasta: tot software-ul necesar este disponibil în magazinul oficial Google Play. În doar 10–15 minute puteți obține un sistem de operare care diferă de Android prin funcționalitate avansată.

Notă: dacă urmați instrucțiunile noastre, sistemul de operare Linux va rula într-un mediu virtual. Android va rula în continuare în fundal. A numi un astfel de sistem complet ar fi incorect. Cu toate acestea, face față bine unei liste de sarcini standard.

Înainte de instalare, închideți toate aplicațiile inutile și ștergeți memoria RAM a dispozitivului dvs. Android.

1. Din Google Play Store, instalați GNURoot Debian și XServer XSDL.

2. Înainte de a începe să instalați Linux, asigurați-vă că dispozitivul este conectat la o rețea Wi-Fi stabilă. Lansați GNURoot. Pachetele de mediu necesare vor începe descărcarea.

Instalarea durează de la 30 de secunde la câteva minute, în funcție de viteza conexiunii la internet. Ignorați tickerele până când apare următorul mesaj:

root@localhost:/#

Pentru cei familiarizați cu conceptul de „”, nu lăsați această linie să vă sperie: aplicația nu va cauza niciun rău dispozitivului, deoarece funcționează într-un „sandbox”.

3. Introduceți următoarea comandă:

apt-get update

Așteptați până când pachetele sunt descărcate. Acest lucru va fi indicat de linia Reading package lists...Done.

4. Acum introduceți o altă linie:

apt-get upgrade

La întrebarea „Doriți să continuați?” introduceți litera engleză Y și apăsați Enter. Instalarea pachetelor va începe.

De data aceasta, procedura de instalare va dura puțin mai mult. Așteptați cu răbdare să se finalizeze instalarea până când apare linia râvnită:

root@localhost:/#

Mediul Debian Linux este instalat și acum puteți continua să implementați shell-ul grafic.

5. Instalarea tuturor pachetelor de distribuție Linux se realizează cu următoarea comandă:

apt-get install lxde

Există, de asemenea, o opțiune de instalare a nucleului de sistem folosind linia:

apt-get install lxde-core

Confirmați instalarea introducând din nou Y și apăsând Enter. Procesul de descărcare a pachetului va începe.

În timpul instalării, asigurați-vă că toate fișierele au fost descărcate cu succes și că, la despachetare, dispozitivul dvs. nu rămâne fără spațiu liber. În caz contrar, pornirea sistemului va eșua.

6. Pentru a finaliza instalarea sistemului de operare, trebuie să descărcați trei utilitare suplimentare:

  • XTerm - pentru a accesa terminalul din shell-ul grafic Linux;
  • Synaptic Package Manager - pentru gestionarea pachetelor apt și descărcarea aplicațiilor;
  • Pulseaudio - pentru instalarea driverelor de sunet.

Toate cele trei utilitare sunt instalate folosind o comandă de terminal GNURoot:

apt-get install xterm synaptic pulseaudio

Aproximativ 260 MB de date vor fi descărcate pe dispozitiv.

7. Acum minimizați aplicația GNURoot și deschideți XServer XSDL instalat anterior. Sunteți de acord să descărcați fonturi suplimentare. După finalizarea instalării, atingeți de mai multe ori ecranul (aplicația vă va cere să selectați rezoluția și dimensiunea fontului - totul depinde de preferințele dvs.) până când vedeți un ecran de splash cu un fundal albastru și text alb.

Lansați din nou GNURoot și introduceți următoarele două comenzi una după alta:

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

Secvența de repornire ulterioară a sistemului (când doriți să deschideți din nou Linux) arată astfel: porniți XServer XSDL și așteptați să apară ecranul albastru, deschideți GNURoot și introduceți cele două comenzi de mai sus, reveniți la XServer XSDL.

Dacă terminalul se plânge de o comandă nevalidă, reveniți la pasul 5 al acestor instrucțiuni și încercați să instalați un nucleu complet. Verificați starea memoriei dispozitivului dvs. Android.

8. Acum deschideți XServer XSDL, așteptați câteva secunde și veți avea Linux gata de funcționare.

Pentru a instala aplicații, în colțul din stânga jos, deschideți meniul Start și selectați Run. Tastați Synaptic și apăsați Enter.

În fereastra care se deschide, utilizați căutarea și instalați aplicațiile necesare. Acesta ar putea fi browserul Firefox, editorul de imagini GIMP, suita de birou Libre și alte programe compatibile cu Linux.

Desigur, această opțiune pentru instalarea Linux nu poate fi numită o lansare cu drepturi depline a sistemului de operare pe Android. Virtual Linux are mai multe limitări, dar dacă utilizați un mouse și o tastatură fără fir (eventual conectarea cu un adaptor OTG și un hub USB), vă puteți transforma smartphone-ul sau tableta într-un laptop cu funcționalitatea unui sistem de operare pentru adulți.