Si të konfiguroni telefonat inteligjentë dhe PC. Portali informativ
  • shtëpi
  • Windows Phone
  • Instalimi i Linux në një sistem Android. Instalimi i programeve Linux në një smartphone me Android

Instalimi i Linux në një sistem Android. Instalimi i programeve Linux në një smartphone me Android

Përdorimi i Linux në Android është i mundur! Dhe nuk keni nevojë për një pajisje me të drejta rrënjësore për këtë: i gjithë softueri i nevojshëm është i disponueshëm në dyqanin zyrtar të Google Play. Në vetëm 10–15 minuta mund të merrni një sistem operativ që ndryshon nga Android në funksionalitetin e avancuar.

Shënim: nëse ndiqni udhëzimet tona, Linux OS do të funksionojë në një mjedis virtual. Android do të vazhdojë të funksionojë në sfond. Të quash një sistem të tillë të plotë do të ishte e gabuar. Sidoqoftë, ai përballet mirë me një listë të detyrave standarde.

Para instalimit, mbyllni të gjitha aplikacionet e panevojshme dhe pastroni RAM-in e pajisjes suaj Android.

1. Nga Google Play Store, instaloni GNURoot Debian dhe XServer XSDL.

2. Përpara se të filloni të instaloni Linux-in, sigurohuni që pajisja juaj të jetë e lidhur me një rrjet të qëndrueshëm Wi-Fi. Hapni GNURoot. Paketat e kërkuara të mjedisit do të fillojnë të shkarkohen.

Instalimi zgjat nga 30 sekonda deri në disa minuta në varësi të shpejtësisë së lidhjes suaj të internetit. Injoroni shenjat derisa të shfaqet mesazhi i mëposhtëm:

root@localhost:/#

Për ata që e njohin konceptin e "", mos lejoni që kjo linjë t'ju trembë: aplikacioni nuk do t'i shkaktojë asnjë dëm pajisjes, pasi funksionon në një "sandbox".

3. Futni komandën e mëposhtme:

apt-merr përditësimin

Prisni derisa të shkarkohen paketat. Kjo do të tregohet nga rreshti Leximi i listave të paketave...U krye.

4. Tani futni një rresht tjetër:

apt-get upgrade

Në pyetjen "A doni të vazhdoni?" futni shkronjën angleze Y dhe shtypni Enter. Do të fillojë instalimi i paketave.

Këtë herë procedura e instalimit do të zgjasë pak më shumë. Prisni me durim që instalimi të përfundojë derisa të shfaqet linja e lakmuar:

root@localhost:/#

Mjedisi Debian Linux është instaluar dhe tani mund të vazhdoni me vendosjen e guaskës grafike.

5. Instalimi i të gjitha paketave të shpërndarjes Linux kryhet me komandën e mëposhtme:

apt-get install lxde

Ekziston gjithashtu një mundësi për të instaluar kernelin e sistemit duke përdorur linjën:

apt-get instalo lxde-core

Konfirmoni instalimin duke rifutur Y dhe duke shtypur Enter. Procesi i shkarkimit të paketës do të fillojë.

Gjatë instalimit, sigurohuni që të gjithë skedarët të jenë shkarkuar me sukses dhe që kur e shpaketoni, pajisjes tuaj nuk i mbaron hapësira e lirë. Përndryshe, nisja e sistemit do të dështojë.

6. Për të përfunduar instalimin e sistemit operativ, duhet të shkarkoni tre shërbime shtesë:

  • XTerm - për të hyrë në terminal nga guaska grafike Linux;
  • Synaptic Package Manager - për menaxhimin e paketave të përshtatshme dhe shkarkimin e aplikacioneve;
  • Pulseaudio - për instalimin e drejtuesve të zërit.

Të tre shërbimet janë instaluar duke përdorur një komandë të terminalit GNURoot:

apt-get instaloni xterm pulseaudio sinaptike

Përafërsisht 260 MB të dhëna do të shkarkohen në pajisje.

7. Tani minimizoni aplikacionin GNURoot dhe hapni XServerin XSDL të instaluar më parë. Pranoni të shkarkoni fonte shtesë. Pasi të përfundojë instalimi, trokitni lehtë mbi ekran disa herë (aplikacioni do t'ju kërkojë të zgjidhni rezolucionin dhe madhësinë e shkronjave - gjithçka varet nga preferencat tuaja) derisa të shihni një ekran spërkatës me sfond blu dhe tekst të bardhë.

Rinisni GNURoot dhe futni dy komandat e mëposhtme njëra pas tjetrës:

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

Sekuenca për rinisjen e mëtejshme të sistemit (kur dëshironi të hapni përsëri Linux) duket kështu: nisni XServer XSDL dhe prisni që të shfaqet ekrani blu, hapni GNURoot dhe futni dy komandat e mësipërme, kthehuni te XServer XSDL.

Nëse terminali ankohet për një komandë të pavlefshme, kthehu te hapi 5 i këtyre udhëzimeve dhe provo të instalosh një kernel të zhveshur. Kontrolloni statusin e kujtesës së pajisjes suaj Android.

8. Tani hapni XServer XSDL, prisni disa sekonda dhe do të keni Linux gati për të shkuar.

Për të instaluar aplikacione, në këndin e poshtëm të majtë, hapni menynë Start dhe zgjidhni Run. Shkruani Synaptic dhe shtypni Enter.

Në dritaren që hapet, përdorni kërkimin dhe instaloni aplikacionet e nevojshme. Ky mund të jetë shfletuesi Firefox, redaktori i imazheve GIMP, paketa e zyrës Libre dhe programe të tjera të pajtueshme me Linux.

Sigurisht, ky opsion për instalimin e Linux nuk mund të quhet një nisje e plotë e sistemit operativ në Android. Linux virtual ka disa kufizime, por nëse përdorni një maus dhe tastierë me valë (mundësisht duke u lidhur me një përshtatës OTG dhe një shpërndarës USB), mund ta ktheni telefonin inteligjent ose tabletin tuaj në një laptop me funksionalitetin e një sistemi operativ të rritur.

Shumë përdorues modernë të kompjuterëve ose pajisjeve mobile të paktën kanë dëgjuar për një sistem operativ si Linux. Por pak njerëz e dinë se në këtë sistem bazohet edhe celulari i njohur, i famshëm për sigurinë e tij. Natyrisht, mendjet kureshtare kishin një pyetje - a është e mundur të instaloni Linux në një tabletë? Apo në një smartphone? Do të habiteni, por është e mundur.

Pse është e nevojshme?

Së pari, le të kuptojmë pse mund t'ju duhet Linux në një pajisje celulare. Përdoruesi mesatar mesatar ndoshta nuk ka nevojë për kaq shumë, por ka edhe specialistë, për shembull, zhvillues, administratorë dhe të tjerë. Sigurisht, si mjeti kryesor i punës, ky është një vendim mjaft i diskutueshëm. Por nëse e konsiderojmë atë si një asistent celular që do të ndihmojë në rrugë ose diku larg kompjuterit kryesor, ky opsion ka të drejtën e jetës.

Po, mund të jetë gjithashtu i dobishëm për përdoruesin mesatar të Linux. Është gjithmonë më i përshtatshëm të kesh në dorë versione të plota të softuerit, për shembull, aplikacione zyre, një klient për rrjetet torrent dhe shumë të tjerë. Për më tepër, të mos harrojmë se ky është praktikisht i njëjti sistem operativ si në një kompjuter, prandaj, e gjithë larmia e softuerit për Linux, në shumicën e rasteve, do të instalojë dhe funksionojë në një tabletë pa asnjë problem.

Nëse tashmë jeni të interesuar, atëherë tani po pyesni se sa e vështirë është të instaloni Linux në një pajisje celulare. Ju ndoshta keni dëgjuar se si administratorët me mjekër në pulovra të thurura i konfigurojnë makineritë e tyre gjatë natës dhe mendojnë se vetëm disa të zgjedhur mund ta përballojnë këtë proces, por kjo nuk është kështu. Së pari, çdo vit Linux bëhet gjithnjë e më miqësor për përdoruesit (me sa duket, për të popullarizuar sistemin, dhe kjo pjesërisht funksionon), dhe së dyti, shumë instalues ​​automatikë dhe udhëzime të hollësishme janë krijuar posaçërisht për instalim në pajisjet mobile. Dhe ndërsa një përdorues i papërvojë mund të ketë një problem me këtë të fundit, me të parën, më shpesh gjithçka shkon si orë.

Si të instaloni dhe çfarë nevojitet për këtë

Pra, ju ende keni vendosur të instaloni Linux në tabletin tuaj. Çfarë do t'ju duhet për këtë:

  • vetë pajisja (kerneli i firmuerit duhet të mbështesë pajisjet e lakut, frekuenca e orës është të paktën 1 GHz - të gjitha këto të dhëna mund të gjenden lehtësisht ose në dokumentacionin për pajisjen ose në rrjet);
  • të drejtat rrënjësore të marra mbi të;
  • rreth 4 gigabajt memorie të lirë;
  • Mbështetje për sistemin e skedarëve Ext2.

Duhet të theksohet se shumica e tabletave i plotësojnë këto specifika, ndaj nuk duhet të keni asnjë problem.

Pasi të jeni të sigurt se pajisja juaj i plotëson të gjitha kërkesat, duhet të shkarkoni imazhin e sistemit dhe skriptin e instalimit. Ka mjaft prej tyre, ne rekomandojmë përdorimin e Ubuntu Installer si një nga më të thjeshtët dhe më intuitivët. Dhe vetë Ubuntu është mjaft miqësor edhe për përdoruesit krejtësisht të papërvojë.


Ekzistojnë dy versione të imazheve të Ubuntu për tableta - një version provë, me një sasi minimale të softuerit të para-instaluar dhe një version maksimal, i fokusuar në përdorimin e përditshëm (me një paketë zyrash të instaluar tashmë, klient torrent, program emaili, mjete zhvillimi për disa gjuhë programimi të njohura, etj.).

Përveç imazhit dhe skriptit, do t'ju duhet gjithashtu një emulator terminali për Android dhe VNC Viewer. Gjithashtu, mos harroni ta aktivizoni atë në cilësimet e sistemit.


Algoritmi është shumë i thjeshtë - hapni emulatorin e terminalit dhe futni tre komanda:

- cd /sdcard/ubuntu

- sh ubuntu.sh

Pas së cilës skripti do t'ju kërkojë një rezolutë (për shembull, 1024x768 ose një tjetër) dhe, nëse keni shkarkuar imazhin maksimal, guaskën grafike në të cilën dëshironi të punoni. Ju keni një zgjedhje midis Gnome dhe LXDE, në pajisjet celulare është më mirë të zgjidhni opsionin e dytë.

Mbetet për t'iu përgjigjur disa kërkesave të tjera: login/fjalëkalimin (ubuntu/ubuntu), adresën IP (localhost) dhe portin (5900). U krye, përpara jush është një Ubuntu i plotë me guaskën LXDE.


Avantazhi i kësaj metode instalimi është se kërkon numrin më të vogël të veprimeve nga përdoruesi dhe nuk instalon Linux në vend të Android, por e imiton atë. Sigurisht, ka mënyra për të instaluar Linux si një sistem të dytë apo edhe për të zëvendësuar "robotin e gjelbër", por për të filluar dhe për t'u njohur me mundësitë, metoda e përshkruar më sipër është më se e mjaftueshme.

Përdorimi i Linux në Android është i mundur! Dhe nuk keni nevojë për një pajisje me të drejta rrënjësore për këtë: i gjithë softueri i nevojshëm është i disponueshëm në dyqanin zyrtar të Google Play. Në vetëm 10–15 minuta mund të merrni një sistem operativ që ndryshon nga Android në funksionalitetin e avancuar.

Shënim: nëse ndiqni udhëzimet tona, Linux OS do të funksionojë në një mjedis virtual. Android do të vazhdojë të funksionojë në sfond. Të quash një sistem të tillë të plotë do të ishte e gabuar. Sidoqoftë, ai përballet mirë me një listë të detyrave standarde.

Para instalimit, mbyllni të gjitha aplikacionet e panevojshme dhe pastroni RAM-in e pajisjes suaj Android.

1. Nga Google Play Store, instaloni GNURoot Debian dhe XServer XSDL.

2. Përpara se të filloni të instaloni Linux-in, sigurohuni që pajisja juaj të jetë e lidhur me një rrjet të qëndrueshëm Wi-Fi. Hapni GNURoot. Paketat e kërkuara të mjedisit do të fillojnë të shkarkohen.

Instalimi zgjat nga 30 sekonda deri në disa minuta në varësi të shpejtësisë së lidhjes suaj të internetit. Injoroni shenjat derisa të shfaqet mesazhi i mëposhtëm:

root@localhost:/#

Për ata që e njohin konceptin e "", mos lejoni që kjo linjë t'ju trembë: aplikacioni nuk do t'i shkaktojë asnjë dëm pajisjes, pasi funksionon në një "sandbox".

3. Futni komandën e mëposhtme:

apt-merr përditësimin

Prisni derisa të shkarkohen paketat. Kjo do të tregohet nga rreshti Leximi i listave të paketave...U krye.

4. Tani futni një rresht tjetër:

apt-get upgrade

Në pyetjen "A doni të vazhdoni?" futni shkronjën angleze Y dhe shtypni Enter. Do të fillojë instalimi i paketave.

Këtë herë procedura e instalimit do të zgjasë pak më shumë. Prisni me durim që instalimi të përfundojë derisa të shfaqet linja e lakmuar:

root@localhost:/#

Mjedisi Debian Linux është instaluar dhe tani mund të vazhdoni me vendosjen e guaskës grafike.

5. Instalimi i të gjitha paketave të shpërndarjes Linux kryhet me komandën e mëposhtme:

apt-get install lxde

Ekziston gjithashtu një mundësi për të instaluar kernelin e sistemit duke përdorur linjën:

apt-get instalo lxde-core

Konfirmoni instalimin duke rifutur Y dhe duke shtypur Enter. Procesi i shkarkimit të paketës do të fillojë.

Gjatë instalimit, sigurohuni që të gjithë skedarët të jenë shkarkuar me sukses dhe që kur e shpaketoni, pajisjes tuaj nuk i mbaron hapësira e lirë. Përndryshe, nisja e sistemit do të dështojë.

6. Për të përfunduar instalimin e sistemit operativ, duhet të shkarkoni tre shërbime shtesë:

  • XTerm - për të hyrë në terminal nga guaska grafike Linux;
  • Synaptic Package Manager - për menaxhimin e paketave të përshtatshme dhe shkarkimin e aplikacioneve;
  • Pulseaudio - për instalimin e drejtuesve të zërit.

Të tre shërbimet janë instaluar duke përdorur një komandë të terminalit GNURoot:

apt-get instaloni xterm pulseaudio sinaptike

Përafërsisht 260 MB të dhëna do të shkarkohen në pajisje.

7. Tani minimizoni aplikacionin GNURoot dhe hapni XServerin XSDL të instaluar më parë. Pranoni të shkarkoni fonte shtesë. Pasi të përfundojë instalimi, trokitni lehtë mbi ekran disa herë (aplikacioni do t'ju kërkojë të zgjidhni rezolucionin dhe madhësinë e shkronjave - gjithçka varet nga preferencat tuaja) derisa të shihni një ekran spërkatës me sfond blu dhe tekst të bardhë.

Rinisni GNURoot dhe futni dy komandat e mëposhtme njëra pas tjetrës:

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

Sekuenca për rinisjen e mëtejshme të sistemit (kur dëshironi të hapni përsëri Linux) duket kështu: nisni XServer XSDL dhe prisni që të shfaqet ekrani blu, hapni GNURoot dhe futni dy komandat e mësipërme, kthehuni te XServer XSDL.

Nëse terminali ankohet për një komandë të pavlefshme, kthehu te hapi 5 i këtyre udhëzimeve dhe provo të instalosh një kernel të zhveshur. Kontrolloni statusin e kujtesës së pajisjes suaj Android.

8. Tani hapni XServer XSDL, prisni disa sekonda dhe do të keni Linux gati për të shkuar.

Për të instaluar aplikacione, në këndin e poshtëm të majtë, hapni menynë Start dhe zgjidhni Run. Shkruani Synaptic dhe shtypni Enter.

Në dritaren që hapet, përdorni kërkimin dhe instaloni aplikacionet e nevojshme. Ky mund të jetë shfletuesi Firefox, redaktori i imazheve GIMP, paketa e zyrës Libre dhe programe të tjera të pajtueshme me Linux.

Sigurisht, ky opsion për instalimin e Linux nuk mund të quhet një nisje e plotë e sistemit operativ në Android. Linux virtual ka disa kufizime, por nëse përdorni një maus dhe tastierë me valë (mundësisht duke u lidhur me një përshtatës OTG dhe një shpërndarës USB), mund ta ktheni telefonin inteligjent ose tabletin tuaj në një laptop me funksionalitetin e një sistemi operativ të rritur.

dite te mire te gjitheve.

Historia ime fillon me leximin e këtij artikulli, pas të cilit vendosa të blej një mrekulli të prodhimit kinez të tabletave: një superpad. Ky tablet është marrë si një lodër për të "gërmuar pak", me kohë të pjesshme, një lexues, një lojë për çifte dhe një orë në një udhëtim të gjatë... Do të vërej menjëherë se kam dy disqe USB 500 GB. dhe 1 TB, në të cilat ruhet gjithçka që është më e rëndësishmja për një jetë argëtuese, dhe ato ndahen në ntfs dhe ext4. Dhe, natyrisht, tableti nuk i sheh ato.

Këtu është vullnetari im

Kjo është arsyeja e parë për të gërmuar më thellë. Pas shikimit të 200 faqeve të forumit në xda-developers.com, sigurisht

Në këtë fazë, të gjitha përpjekjet për të hapur këtë tabletë janë anuluar. Deri në kohën e lavdishme për studentin - seancën. Dhe duke qenë se gjatë seancës studentët bëjnë absolutisht gjithçka, për sa kohë që nuk janë në temë, tubimet argëtuese të natës në internet në faqet padyshim borgjeze kanë rifilluar. Dhe ideja e shkëlqyer erdhi për të instaluar Linux Ortodoks në këtë tabletë, në rastin tim - ubuntu.
Çfarë doli nga kjo, shihni më poshtë.

Është e qartë se nuk mund ta marrësh dhe ta instalosh... mirë, ku shkuan tanët...

Do të na duhen:

Le të shohim fazat kryesore të ngarkimit të Android dhe Linux
1. Ndizni dhe nisni ekzekutimin e kodit ROM Ndizni dhe nisni ekzekutimin e kodit ROM
2. Ngarkuesi i nisjes Ngarkuesi i nisjes
3. Kerneli Linux Kerneli Linux
4. Procesi i fillimit Procesi i fillimit
5. Zygota dhe Dalvik konsol (bash, zsh...) / wm(kde, gnome...)
6. Serveri i sistemit Boot e përfunduar
7. Boot përfunduar

Siç mund ta shihni, ndryshimet fillojnë që në fazën fillestare të ekzekutimit.
Është gjëja më e lehtë për të ndryshuar.

Do të shkruaj sinqerisht, mendova se mund të përdorni vetëm initin Android dhe se ishte i lidhur fort në kernel. Dhe edhe pasi mora një shembull të një ramdisku që punon nga një tabletë tjetër, nuk mendova se do të fillonte ...

përmbajtja ramdiska
bin dev etj home init init.rc lib linuxrc mnt newroot opt proc root sbin sys tmp usr var
Në /bin ka busybox, në /sbin ka switch_root me një lidhje për të.
Kodi fillestar nga ramdisk nga zt-180

#!/bin/sh echo Duke filluar nga imazhi initram. Echo Në pritje për zgjimin e SD-CARD... gjumë 3 jehonë "Mounting new rootfs" montoj -t ext2 /dev/mmcblk0p2 /newroot && echo OK echo Mbajeni, ndërroni rrënjën... exec switch_root /newroot /sbin/init echo hrm, në vend të kësaj keni një guaskë exec /bin/ash

Mbetet vetëm për të ndezur ramdiskun në memorie (kam përdorur burntool nën xp) dhe - voila, faza e nisjes. Po, unë ndeza firmuerin në vend të rikuperimit, kështu që për të nisur Linux-in duhet të mbani të shtypur çelësat në fillim.

Pra, faza e ngarkimit ka përfunduar dhe duhet të jeni të duruar, pasi tastiera nuk jep shenja jete dhe gjithçka ngarkohet mjaft ngadalë.

Vendosja e identifikimit automatik për tastierën e parë
Në /etc/init/tty1.conf zëvendësoni rreshtin e fundit me exec /bin/login -f Yor_Login< /dev/tty1 >/dev/tty1 2>&1 pastaj në ~/.bashrc tuaj mund të shkruani komanda që do të fillojnë gjatë identifikimit automatik.
Ne po luftojmë me serverin X
Për mua definitivisht nuk funksionoi mirë me ekranin me prekje, xorg.conf dhe xterm... Unë hoqa drejtuesin sinaptik dhe vendosa sa vijon në ~/.xinitrc:
#!/bin/bash # $Xorg: xinitrc.cpp,v 1.3 2000/08/17 19:54:30 cpqbld Exp $ # /etc/X11/xinit/xinitrc # # skedar global xinitrc, i përdorur nga të gjitha seancat X filloi nga xinit (startx) # thirrni skriptin global të sesionit X #. /etc/X11/Xsession xclock -geometry 50x50-1+1 & exec xterm -geometry 80x66+0+0 -name login
Luftimi i mjedisit të punës
Doja të instaloja kde sepse më pëlqen shumë interpretimi i grafikëve me bibliotekën qt. Unë do të them menjëherë: po, u instalua dhe filloi, por SI ...
Së pari, vendosa menjëherë hyrjen automatike:
në /etc/kde4/kdm/kdmrc gjejmë dhe ndryshojmë sa vijon për t'iu përshtatur vetes
AutoLoginEnable=true # Nëse është e vërtetë, identifikohu automatikisht pas daljes. Nëse është false, identifikimi automatik kryhet vetëm # kur fillon një sesion ekrani. # Parazgjedhja është false #AutoLoginAgain=true # Vonesa në sekonda përpara se të fillojë identifikimi automatik. # Parazgjedhja është 0 AutoLoginDelay=3 # Përdoruesi që do të identifikohet automatikisht. Asnjëherë mos specifikoni rrënjë! # Default është "" AutoLoginUser=Identifikohu # Fjalëkalimi që përdoruesi të identifikohet automatikisht. Kjo NUK kërkohet # përveç nëse përdoruesi është i identifikuar në një domen NIS ose Kerberos. Nëse përdorni këtë opsion #, duhet të "chmod 600 kdmrc" për arsye të dukshme. # Parazgjedhja është "" AutoLoginPass=Fjalëkalimi
dhe, siç është shkruar, ne bëjmë chmod 600 kdmrc në tastierën nën rrënjë, në mënyrë që njerëzit e këqij të mos spiunojnë fjalëkalimin tonë.
Së dyti, në hyrje, mbrojtësi i ekranit u var për një kohë të gjatë të dyshimtë, dhe unë, duke pasur dyshime, thirra startkde nga tastiera. Pas një shfaqjeje të gjatë dhe të lodhshme të të gjitha llojeve të gabimeve, plazma më në fund u ngarkua në modalitetin netbook. Efektet grafike janë të fikur, pasi ne jemi ulur nën një framebuffer, dhe në disa vende ka ngadalësime të egra, por megjithatë kjo është kde dhe është ngarkuar!
Rregulloni gjithçka dhe këdo që t'ju përshtatet
Secili ka të vetin, unë nuk e kam optimizuar ende, por ka shumë për të bërë: përshpejtoni ngarkimin, optimizoni hapësirën e punës. Unë jam duke kërkuar drejt një wm më të lehtë - e16 - por ende nuk e kam bërë atë kryesore. Ju gjithashtu duhet të kalibroni ekranin me prekje, për fat të mirë ekziston tashmë një tastierë virtuale në kde.
Po shikoj drejt openbox +

Shumë pronarë të telefonave Android kanë vështirësi në ekzekutimin e softuerit të vërtetë Linux në pajisjet e tyre. Sipas të gjitha ligjeve, duket se duhet të funksionojë këtu, por për ndonjë arsye ju nevojiten të drejta rrënjësore për ta instaluar, ai vetë shpërndahet në disa instalues ​​shtëpiak dhe zgjedhja e programeve është shumë e kufizuar. Ky artikull do të ofrojë një përgjigje për pyetjen pse ndodhi kjo dhe do të sugjerojë një zgjidhje - një mënyrë e përshtatshme për të instaluar dhe ekzekutuar pothuajse çdo softuer Linux në Android.

Linux apo jo Linux?

Siç e dini, Android bazohet në kernelin Linux dhe përfshin një sërë bibliotekash standarde dhe shërbime të linjës së komandës tipike për një shpërndarje të rregullt Linux. Sidoqoftë, lansimi i softuerit klasik Linux këtu është shumë i vështirë për shumë arsye, duke përfshirë papajtueshmërinë e ABI, mungesën e një menaxheri të paketave, sistemin e sigurisë së pronarit dhe mungesën e shumë komponentëve të një sistemi standard Linux.

Pra, megjithë praninë e bibliotekës standarde libc dhe të tjerave në Android, zbatimi i tyre në shumicën e rasteve është i papajtueshëm me bibliotekat nga projekti GNU dhe funksionaliteti është shumë i reduktuar. Për këtë arsye, softueri Linux duhet të paktën të rindërtohet posaçërisht për procesorët Android dhe ARM, dhe në shumë raste edhe të rregullohet, duke shtuar funksionalitetin që mungon në biblioteka.

BotBrew: lista e pajisjeve të mbështetura

BotBrew është testuar në pajisjet e mëposhtme: 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.

Sistemi i sigurisë Android, i cili ndërpret privilegjet e aplikacionit në maksimum dhe nuk i lejon ata të shkojnë përtej drejtorisë së tyre, gjithashtu pengon seriozisht funksionimin e softuerit standard Linux. Prandaj, shpesh është e nevojshme të merren të drejtat rrënjësore, gjë që heq këto kufizime. Mungesa e një menaxheri të paketave që ju lejon të instaloni softuer të rregullt Linux, dhe jo vetëm aplikacione Java, i detyron zhvilluesit të shkruajnë aplikacione që nevojiten vetëm për të instaluar aplikacione të tjera. Kështu shfaqen të gjithë këta instalues ​​të personalizuar.

Epo, për të përfunduar figurën, Android thjesht nuk ka shumë komponentë standardë Linux, duke përfshirë, për shembull, edhe ato integrale si pirgja grafike X Window ose biblioteka GTK+. Natyrisht, disa përpjekje po bëhen për të sjellë të gjitha këto këtu, por gjërat nuk po shkojnë përtej versioneve alfa gjysmë funksionale.

Sidoqoftë, mundësia për të transferuar funksionalitetin e një sistemi Linux të plotë në Android është një ide shumë joshëse për entuziastët që të mos përpiqen të zgjidhin problemet që lindin në proces dhe të na japin një zgjidhje universale të plotë. Mënyra më e dukshme dhe e thjeshtë është të ekzekutoni një version të "virtualizuar" të një shpërndarjeje të plotë Linux, për të cilën kemi shkruar tashmë në detaje. Kjo metodë është interesante, por vuan nga problemi i ndarjes së sistemit në dy zona, secila prej të cilave funksionon në mënyrë të pavarur nga tjetra.

Projekti BotBrew duket shumë më interesant - brenda kornizës së tij, po zhvillohet një menaxher paketash dhe depo që është mjaft e zakonshme për sistemet Linux, me ndihmën e të cilit mund të instaloni softuerin Linux në një drejtori të veçantë brenda Android. Gjithashtu, në një kohë, u shpikën shumë skripta të ndryshëm që e bëjnë të lehtë dhe pa probleme të panevojshme montimin e softuerit Linux të përshtatshëm për të punuar brenda Android në vëllain e tij të madh. Pjesa tjetër e artikullit do t'i kushtohet këtyre dy projekteve.

BotBrew

Projekti BotBrew është krijuar për të zgjidhur shumë probleme me instalimin e softuerit Linux që mund të ketë një përdorues dhe për të përgatitur sistemin Android për të pranuar aplikacione që janë të huaja për të. Në thelb, sistemi përbëhet nga katër komponentë:
  • një depo me aplikacione të parapërpiluara Android, duke përdorur të cilat mund të instaloni shumë aplikacione Linux duke përdorur një komandë të vetme;
  • menaxher i paketave, i cili përdor Opkg të lehtë ose dpkg së bashku me apt-get në versionin eksperimental të BotBrew Bazil;
  • menaxheri i procesit të ekzekutimit, i cili është i nevojshëm për të nisur dhe mirëmbajtur funksionimin e demonëve, nëse ka të instaluar;
  • një sistem ndërtimi i pronarit që përmban të gjitha mjetet e nevojshme për të ndërthurur aplikacione duke përdorur çdo shpërndarje Linux desktop.
Për të funksionuar, kjo mrekulli e mendimit të programimit nuk kërkon asgjë: të drejta rrënjësore dhe pak hapësirë ​​​​të lirë në memorien e brendshme të smartphone ose në kartën e kujtesës. Për më tepër, opsioni i parë është i preferueshëm, pasi në rastin e SD skedarët do të hidhen në një disk virtual, i cili nuk mbështetet nga të gjitha bërthamat.


Inicializimi

Për momentin, versioni klasik i BotBrew, i cili përdor depon e tij, ju lejon të instaloni softuer të tillë si dcron, GCC, Git, serverin dropbear SSH, shfletuesin e konsolës Lynx, skanerin e sigurisë Nmap, mjetin rezervë rsync, redaktuesin Vim, web lighttpd server, gjuhë skriptimi Python dhe Ruby, si dhe disa dhjetëra paketa të tjera. Nga rruga, e gjithë kjo është instaluar në një drejtori të dedikuar në memorien e brendshme të telefonit inteligjent/tabletë dhe në asnjë mënyrë nuk e ngatërron sistemin kryesor. Me fjalë të tjera, ju mund të hiqni qafe BotBrew dhe gjithçka që keni instaluar thjesht duke fshirë një direktori.

Instaloni softuerin

Pra, si e përdorni BotBrew për të instaluar softuerin Linux? Së pari, na duhet një paketë me vetë programin. Është i disponueshëm në Google Play (vini re se keni nevojë për rrënjë BotBrew, jo Bazil eksperimental) dhe peshon më pak se një megabajt. Pas instalimit, hapni dhe klikoni butonin "Vazhdo" në fund të ekranit në mënyrë që softueri të shkarkojë të gjithë komponentët e nevojshëm për funksionimin e tij, si menaxheri i paketave të konsolës dhe shërbimet e tjera (në termat e Debian Linux - bootstrap). Ata peshojnë vetëm disa megabajt, kështu që nuk do t'ju duhet të prisni gjatë. Pasi të përfundojë instalimi, BotBrew do të shfaqë një dritare me faqen zyrtare të projektit, të cilën mund ta mbyllni me siguri.

Tani në ekran duhet të shihni një listë të paketave të disponueshme për instalim. Ka mjaft prej tyre, por për arsyet e përshkruara më sipër, nuk do të gjeni asnjë aplikacion grafik midis tyre. Por ka serverë, përpilues dhe interpretues të ndryshëm, kështu që të gjithë ata që duan të "luajnë" seriozisht me një smartphone do të kenë hapësirë ​​për t'u kthyer. Për të instaluar një paketë, thjesht trokitni lehtë mbi emrin e saj dhe në ekranin tjetër që përmban informacione rreth aplikacionit, klikoni butonin "Instalo".

Duke kërcyer me dajre

Nëse keni probleme me bootstrap BotBrew, mund të provoni ta instaloni manualisht duke përdorur komandën e mëposhtme:

Wget http://repo.botbrew.com/anise/bootstrap/install.sh -O - | su
Nëse kjo nuk ju ndihmon, mund të provoni të hiqni të gjitha instalimet (“Remove BotBrew” në cilësimet) dhe më pas provoni të ekzekutoni këtë komandë.

Pas kësaj, paketa do të shfaqet në skedën "Instaluar", por nuk do të shihni asnjë buton "Run" ose diçka të tillë. Aplikacioni do të duhet të lansohet në mënyrë të pavarur nga tastiera, gjë që, megjithatë, është logjike. Vetë aplikacioni është i instaluar brenda strukturës së drejtorisë /data/botbrew, në të cilën "emulohet" mjedisi real i shpërndarjes Linux me drejtoritë /etc, /usr dhe të tjerët. Dhe për të mos munduar përdoruesit me nevojën për të shtypur rrugën e plotë të komandës, zhvilluesit e BotBrew kanë ofruar një komandë mbështjellëse me të njëjtin emër. Për ta përdorur atë për të nisur, për shembull, shfletuesin e instaluar të konsolës Lynx, duhet të shkruani komandën e mëposhtme:

$ botbrew rrëqebull http://xakep.ru
Përndryshe, drejtoria /data/botbrew/bin mund të shtohet në variablin e mjedisit PATH, por kjo duhet të bëhet pas çdo fillimi të terminalit:

$ eksport PATH="$PATH:/data/botbrew/bin"
Nga rruga, gjërat janë shumë më mirë me demonët dhe shërbimet e ndryshme të rrjetit. Pas fillimit, demonët do të lansohen menjëherë, dhe ju mund të kontrolloni përfshirjen e tyre përmes ndërfaqes grafike, e arritshme duke klikuar në butonin "Luaj" në fund të ndërfaqes BotBrew. Disa aplikacione mund të kërkojnë krijimin e përdoruesve shtesë dhe ndryshimin e cilësimeve të tyre, kjo mund të bëhet në të njëjtën mënyrë si në një sistem të rregullt Linux:

  1. Krijimi i një përdoruesi:
    $ botbrew adduser Vasya
  2. Hapja e aksesit në internet për përdoruesin:
    $ botbrew addgroup vasya inet
  3. Kaloni BotBrew në një përdorues tjetër:
    $ botbrew su vasya
Ju lutemi vini re se të gjitha këto ndryshime do të ndikojnë vetëm në mjedisin virtual BotBrew dhe nuk do të ndikojnë në asnjë mënyrë në sistemin kryesor. Konsola mund të përdoret gjithashtu për të instaluar aplikacione duke anashkaluar GUI-në. Për ta bërë këtë, duhet të përdorni menaxherin e paketave të konsolës Opkg, sintaksa e komandës së të cilit është plotësisht e pajtueshme me apt-get:

$ botbrew opkg install dropbear
Operacioni i kundërt:

$ botbrew opkg hiqni dropbear
Për të qëndruar "në ballë të progresit", depoja e BotBrew duhet të përditësohet herë pas here duke klikuar në butonin përkatës në ndërfaqen grafike (nuk mund ta ngatërroni me asgjë tjetër). Versionet e reja të paketave do të shfaqen në skedën "E përditësueshme". Thjesht prekni emrin e tij dhe klikoni "Përmirëso".

BotBrew Basil

Në treg mund të gjeni edhe një aplikacion të quajtur BotBrew Basil, i cili është shënuar si eksperimental. Në thelb, ky është ende i njëjti BotBrew, por me një ndryshim shumë të rëndësishëm. Në vend të depove të veta dhe menaxherit të paketave Opkg, ai përdor depo Debian Linux ARM dhe menaxherin e paketave apt-get. Kjo do të thotë se sasia e softuerit që mund të instalohet duke përdorur "versionin brazilian" të aplikacionit është shumë më i madh. Dhjetë herë më shumë.

Përveç përdorimit të depove Debian, Basil gjithashtu përmban një ndërfaqe pak të modifikuar. Për shembull, menjëherë pas nisjes ju kërkon të zgjidhni një drejtori instalimi. Parazgjedhja është /data/botbrew-basil, e cila, për mendimin tim, është mjaft logjike, por ju mund të zgjidhni ndonjë tjetër, përfshirë ndarjen ext2 të kartës së kujtesës (FAT nuk do të funksionojë).

Dallimi i dytë i rëndësishëm është aftësia për të zgjedhur mënyrën e përdorimit të aplikacionit, i cili shfaqet menjëherë pasi klikoni "Vazhdo". Këtu ka katër opsione:

  1. Përdorni BotBrew në vijën e komandës - në thelb një analog instalimi në stilin e BotBrew të rregullt.
  2. Përdorni sistemin dpkg/APT - instalimi së bashku me magazinat apt-get dhe Debian. Opsioni i rekomanduar i instalimit.
  3. Run Python programs është një analog i opsionit të parë me instalimin automatik të Python.
  4. Instaloni një Debian minimal - instalim minimalist i Debian.
Më lejoni të shpjegoj pikën e dytë dhe të katërt. BotBrew i parë dhe artikulli i parë në këtë listë nuk bëjnë asgjë më shumë se instalimi i një sistemi minimalist Linux (i përbërë nga vetëm disa komanda dhe biblioteka), brenda të cilit lëshohet softueri Linux. Sidoqoftë, apt-get, ndryshe nga Opkg minimalist, kërkon një instalim pak a shumë të plotë Linux. Prandaj, duke zgjedhur opsionin e dytë, ju do të merrni një lloj mikro-Linux në smartphone tuaj. Dhe nëse mund të instalojmë një mikroversion, pse të mos instalojmë një shpërndarje pak a shumë të plotë. Kjo është arsyeja pse ekziston një pikë e katërt.

Pas bootstrap BotBrew Basil, e njëjta ndërfaqe e menaxhimit të instalimit të aplikacionit, e njohur për ne nga versioni klasik i aplikacionit, do të shfaqet në ekran dhe komanda botbrew2 do të shfaqet në sistem, me të cilin mund të nisni softuerin. Këtu nuk ka dallime domethënëse në menaxhim, përveç ndoshta komandës apt-get në vend të opkg dhe aftësisë për të lidhur depo shtesë (përfshirë depon e parë BotBrew) drejtpërdrejt përmes ndërfaqes së instalimit të aplikacionit.

Le t'i marrim gjërat në duart tona

Aplikacionet dhe depot e para-përpiluara me paketa të gatshme janë të shkëlqyera, por çka nëse aplikacioni që ju nevojitet nuk është i disponueshëm për instalim? Në fund të fundit, edhe i njëjti BotBrew Basil, i cili ju lejon të lidhni depot e Debian me një sasi të madhe softuerësh, për shkak të natyrës së tij eksperimentale nuk do të funksionojë në çdo smartphone.

Në këtë rast, ne mund të përpiqemi ta ndërtojmë vetë aplikacionin. Sidoqoftë, këtu na presin disa vështirësi: fakti është se për të ndërtuar softuer për një smartphone, do të duhet të përgatisni mjetet e nevojshme të ndërthurjes, më pas të merrni parasysh të gjitha varësitë e aplikacionit që po montohet dhe, së fundi, në disa në rastet, bëni ndryshimet e nevojshme në kod. Të gjitha këto janë çështje mjaft shqetësuese për të cilat vështirë se ia vlen të humbasësh kohë.

Megjithatë, ne mund të përdorim punën e njerëzve të tjerë për të automatizuar procesin e ndërtimit të softuerit. Një nga zgjidhjet më të zhvilluara dhe më interesante në këtë fushë është një grup skriptesh SCRIPTSET, të zhvilluara nga përdoruesi smitna nga XDA Developers. Kjo ju lejon të grumbulloni fjalë për fjalë një shumëllojshmëri të gjerë aplikacionesh në vetëm disa komanda, duke përfshirë htop, ImageMagick, iptables, ELinks, Screen, mc, node.js, Samba, strace, QEMU, Parted, SANE (mund të përdoret për printim direkt në një printer me telefon!) dhe shumë të tjera. Vetë skripti do të shkarkojë ndër-përpiluesin, të gjitha varësitë dhe aplikacionet e nevojshme, do të aplikojë arna aty ku është e nevojshme dhe do të gjenerojë një arkiv të gatshëm për shpaketim në telefon.

SCRIPTSET funksionon vetëm në Linux, por nëse keni Windows, mund ta instaloni Ubuntu në një makinë virtuale. Më pas, duhet të hapni një terminal dhe të instaloni mjetet e nevojshme për të ndërtuar ndër-përpiluesin:

$ sudo apt-get install build-thesential cmake autoconf2.13 scons
Pas kësaj, ju mund të merrni vetë SCRIPTSET dhe ta shpaketoni atë:

$ cd ~ $ wget http://goo.gl/zvnom -O scriptset-2.6.zip $ unzip scriptset-2.6.zip
Si rezultat i paketimit, do të marrim... një arkiv tjetër: scriptset-2.6.tar.bz2. Por kjo nuk është e gjitha, arkivi është i paketuar pa direktoriumin rrënjësor tradicional për tar, kështu që ju duhet ta krijoni vetë. Dhe tashmë shpaketoni në të:

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

Pas shpaketimit, disa skripte, konfigurime, si dhe një skedar README me madhësi mbresëlënëse që përmban udhëzime për përdorimin e skripteve do të shfaqen në drejtori. Skriptet nuk kanë një bit ekzekutimi (gjë që nuk është për t'u habitur, duke pasur parasysh problemet e mëparshme), kështu që ju duhet ta vendosni vetë:

$ chmod 755 *.sh

# vi ~/scriptset/configuration.conf // Drejtori për instalimin e aplikacioneve në smartphone TARGET_SYSROOT="/data/sysroot" // Procesori i synuar TARGET_MARCH="armv7-a" TARGET_MTUNE="cortex-a9" TARGET_MFARGATLOET_F" =" softfp"

Kjo do të jetë e mjaftueshme për të ndërtuar saktë çdo aplikacion; Procesori i synuar do të jetë një standard ARMv7 me një grup instruksionesh shtesë NEON. Ky është i instaluar në çdo smartphone të lëshuar gjatë tre deri në katër vitet e fundit. Drejtoria /data/sysroot do të përdoret për të instaluar aplikacione në smartphone, megjithatë, çuditërisht, do të duhet të krijohet edhe në kompjuterin desktop:

$ sudo mkdir -p /data/sysroot $ sudo chown user:users /data/sysroot $ sudo chmod 777 /data/sysroot
Siç shpjegon autori i skripteve, ky veprim është i nevojshëm sepse shtigjet për drejtoritë kryesore në disa aplikacione janë të qepura në fazën e ndërtimit. Prandaj, nëse do të ndërtonim një aplikacion duke përdorur direktoriumin aktual dhe çdo direktori tjetër si rrënjë, ai thjesht nuk do të funksiononte në një smartphone për shkak të dallimeve në shtigje. Jam i sigurt se do të ishte më e saktë ta zgjidhni këtë problem duke përdorur chroot, por është më e lehtë dhe më e shpejtë të krijoni drejtorinë e dëshiruar dhe ta fshini atë kur të përfundoni.

Më pas, duhet të tregojmë listën e aplikacioneve që planifikojmë të mbledhim. Për ta bërë këtë, hapni skedarin package_selection.conf dhe ndryshoni jo në po në opsionet e nevojshme. Për shembull, për të ndërtuar bash, ImageMagick dhe Screen, duhet të ndryshoni tre rreshtat e mëposhtëm:

# vi ~/scriptset/package_selection.conf BASH=po IMAGEMAGICK=po SCREEN=po
Mbani në mend se cilësimet midis rreshtave # GJITHMONË NEVOJSHME nuk mund të ndryshohen. Këto aplikacione dhe biblioteka janë gjithmonë të nevojshme, dhe pa to thjesht nuk mund të ndërtohen aplikacione të tjera. Tani mund të përpiloni aplikacionet. Për ta bërë këtë, thjesht ekzekutoni skriptin build.sh pa argumente:

$./build.sh
Nëse të gjitha paketat e nevojshme janë instaluar dhe përpiluesi nuk ka krijuar ndonjë gabim gjatë ndërtimit, si rezultat i ndërtimit do të shfaqen dy arkiva në drejtorinë aktuale: cs-sysroot.tar.bz2 dhe android-mysysroot.tar.bz2. E para është mjedisi i nevojshëm për ekzekutimin e aplikacioneve, i krijuar nga ndër-përpiluesi, dhe i dyti është vetë grupi i aplikacioneve. Të dyja këto arkiva duhet të transferohen në kartën e kujtesës së telefonit inteligjent dhe më pas, duke ekzekutuar një emulator terminali në të ose duke u lidhur nëpërmjet ADB, ekzekutoni dy komanda:

$ tar xjf /sdcard/cs-sysroot.tar.bz2 $ tar xjf /sdcard/android-mysysroot.tar.bz2
Si rezultat, drejtoria /data/sysroot do të shfaqet në memorien e brendshme të telefonit inteligjent, në të cilin do të vendosen aplikacionet. Ato duhet të nisen nga i njëjti terminal, duke treguar rrugën e plotë. Për shembull:

$ /data/sysroot/usr/bin/bash
Epo, ose pasi të keni nisur terminalin, shtoni /data/sysroot/usr/bin në PATH:

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

konkluzionet

Pavarësisht nga dallimet mjaft serioze midis Android dhe një shpërndarjeje tipike Linux, instalimi i aplikacioneve të konsolës Linux në një smartphone nuk është aq i vështirë. Fatkeqësisht, ende nuk flitet për aplikacione grafike, por tashmë ka projekte për transferimin e bibliotekës Qt dhe serverit grafik Wayland në Android, dhe së shpejti, shpresoj, do të marrim një zgjidhje funksionale.


Botuar për herë të parë në revistën Hacker, 08/2013.

Artikujt më të mirë mbi këtë temë