Усталёўваны працоўны стол Linux на Android

Прывітанне, Хабр! Уяўляю вашай увазе пераклад артыкула з часопіса APC.

Усталёўваны працоўны стол Linux на Android
У дадзеным артыкуле разглядаецца поўная ўстаноўка аперацыйнага асяроддзя Linux разам з графічным асяроддзем працоўнага стала на Android-прыладах.

Адной з ключавых тэхналогій, якую ўжываюць шматлікія з сістэм Linux на Android, з'яўляецца pRoot. Гэта рэалізацыя ўтыліты chroot у карыстацкай прасторы, якая карыстаецца вялікай папулярнасцю ў настольных сістэмах і серверах Linux. Аднак для прылады chroot патрэбныя паўнамоцтвы карыстача root, якія не даступныя па змаўчанні на Android. pRoot жа дае гэтую перавагу за кошт усталявання прывязкі да дырэкторыі.

Тэрміналы Linux

Не ва ўсіх эмулятарах тэрміналаў Linux для Android маецца набор утыліт BusyBox, у адрозненне, напрыклад, ад Termux. Чыннікам таму з'яўляецца тая акалічнасць, што ўвесь сэнс падобных сістэм складаецца ў забеспячэнні «поўнай» усталёўкі ўсіх кампанентаў АС, у то час як BusyBox прызначаная для таго, каб звесці ўсё мноства агульных утыліт у адзін двайковы файл. У сістэмах, дзе не ўсталявана BusyBox, выкарыстоўваецца пачатковая загрузка для Linux, утрымоўвальная поўныя версіі праграм.
Усталёўваны працоўны стол Linux на Android"

Задайце лагін і пароль для дыстрыбутыва і VNC у UserLAnd.

Аднак у гэтых сістэмах прысутнічае дадатковая тэхналогія, якая не патрабуе наяўнасці Termux. У гэтым артыкуле будзе разглядацца поўнакамплектная ўсталёўка дыстрыбутыва Linux, а таксама працоўнага стала GUI. Але перш за неабходна абраць спосаб усталёўкі графічнай сістэмы.

Linux на Android

Як было згадана раней, праграмныя пакеты, якія мы будзем усталёўваць, запускаюцца ў карыстацкай прасторы.

Гэта азначае, што ў іх ёсць толькі дазвол для бягучага карыстальніка, які ў выпадку АС Android заўсёды з'яўляецца звычайным карыстачом, г.зн. не мае паўнамоцтваў адміністратара. Аднак для таго, каб усталяваць працоўны стол Linux, нам спатрэбіцца ўсталяваць графічны сервер, напрыклад, X ці Wayland. Калі б мы рабілі гэта ў аперацыйным асяроддзі Linux, то ён запусціўся б з паўнамоцтвамі звычайнага карыстача, не маючы пры гэтым доступу да графічнага ўзроўня АС Android. І таму мы павінны глядзець у бок усталёўкі сервера «стандартным» андроідаўскім спосабам, каб у яго быў доступ да жалеза і здольнасць падтрымліваць графічнае асяроддзе.

Разумныя хлопцы з супольнасці распрацоўшчыкаў прапанавалі два рашэнні гэтай праблемы. Першае складаецца ў тым, каб выкарыстаць уласныя версіі Linux (як правіла, гэта сервер X). Пасля таго, як тыя пачнуць працу ў фонавым рэжыме, у вас з'явіцца доступ да дадзенага фонавага працэсу праз VNC. Калі ж на вашым прыладзе Android ужо маецца праграма VNC viewer для выдаленага ўзаемадзеяння з іншымі кампутарамі, проста выкарыстайце яе, каб атрымаць выдалены доступ да лакальнага вузла. Гэта простае ў выкананні рашэнне, аднак некаторыя карыстачы паведамляюць аб тым, адчуваюць цяжкасці з працай праграмы.

Другі варыянт - усталяваць сервер, прызначаны спецыяльна для прылад на базе Android. Некаторыя серверы даступныя на Play Store у платнай і бясплатнай версіях. Перад усталёўкай неабходна праверыць, ці падтрымліваецца абраны варыянт ці прынамсі працуе ці з тым праграмным пакетам Linuх для Android, які вы збіраецеся ўсталяваць. Мы аддалі перавагу сістэме X-Server, і таму выкарыстоўвалі праграмны пакет XServer XSDL (спасылка). У артыкуле будзе апісвацца працэс усталёўкі дадзенага сервера, хоць ён можа трохі адрознівацца, калі ў вас усталявана іншае прыкладанне ці ж карыстаецеся VNC.

Выбар сістэмы

Як у выпадку з X-Servers, у Play Store існуе некалькі прыкладанняў па ўсталёўцы дыстрыбутываў сістэмы Linux. Тут таксама, як і з Termux, мы сканцэнтруемся на варыянтах, якія не патрабуюць паўнамоцтваў суперкарыстальніка, што ў сваю чаргу мяркуе пэўную ступень рызыкі. Гэтыя прыкладанні падаюць увесь неабходны для большасці карыстальнікаў функцыянал, захоўваючы пры гэтым вашыя дадзеныя ў бяспецы. Ніжэй прадстаўлены прыклады такіх прыкладанняў у Play Store:

- UserLAnd: вельмі папулярны выбар карыстальнікаў. Прыкладанне ўключае ў сябе набор распаўсюджаных дыстрыбутываў: Debian, Ubuntu, Arch і Kali. Цікаўна, што нягледзячы на ​​адсутнасць варыянтаў на базе RPM, UserLAnd уключае Alpine Linux для прылад з малодшым аб'ёмам памяці.

- AnLinux: дадзенае прыкладанне дапамагае ва ўсталёўцы аднаго або некалькіх спісаў дыстрыбутываў вялікага аб'ёму і можа складацца з Ubuntu/Debian, Fedora/ CentOS, openSUSE і нават Kali. Там таксама можна абраць нізказатратныя дэсктопныя варыянты: Xfce4, MATE, LXQtand LXDE. Для працы патрабуецца ўсталяваны Termux, а аперацыйная сістэма Android павінна быць ад 5.0 і вышэй.

- Андронікс вельмі падобны на AnLinux. Магчыма, мае лепшы дызайн, чым папярэдняе прыкладанне, аднак падтрымлівае меншую колькасць дыстрыбутываў.

- GNURoot WheezyX: гэты праект стартаваў як варыянт Linux на Android і распрацоўваўся для праграм з адчыненым зыходным кодам. Як падказвае назву, ён факусуецца на дыстрыбутывах Debian, у той час як 'X' на канцы азначае, што дадатак арыентавана на графічны працоўны стол. І нягледзячы на ​​тое, што стваральнікі спынілі распрацоўку праекта дзеля UserLAnd, GNURoot WheezyX усё яшчэ даступны на Play Store, калі ў кагосьці ёсць у ім патрэба.

Аўтары гэтага артыкула будуць выкарыстоўваць прыкладанне UserLAnd для ўстаноўкі працоўнага стала Linux на Android, і таму ёсць некалькі прычын. Па-першае, прыкладанне мае адчынены зыходны код (хоць AnLinux таксама яго мае). Па-другое, яно прапануе добры набор дыстрыбутываў (хоць у яго і не ўключаны Fedora або CentOS), таксама з дапамогай яго можна ўсталяваць дыстрыбутывы з мінімальнымі сістэмнымі патрабаваннямі, якія не зоймуць шмат месца ў памяці смартфона. Але галоўная перавага UserLAnd у тым, што яно мае прылады падтрымкі для ўсталёўкі асобных прыкладанняў замест цэлых дыстрыбутываў. Мы высветлім, што менавіта гэта значыць для нас, потым. А цяпер давайце ўсталюем UserLAnd на вашу прыладу.

Дадатак UserLAnd

Запампуйце дадатак з Google Play або F-Droid (спасылка) на АС Android. Яно ўсталёўваецца як і любое іншае прыкладанне - нічога асаблівага тут рабіць не трэба. Пасля гэтага запусціце яго з панэлі прыкладанняў.

Першае, што вы ўбачыце там - гэта спіс дыстрыбутываў. У канцы можна знайсці пару дэсктопных варыянтаў: LXDE and Xfce4. Замыкае яго прыкладанне Firefox, пара гульняў і некалькі офісных утыліт: GIMP, Inkscape і LibreOffice. Гэта ўкладка называецца "Дадаткі". Прызначана яна для ўстаноўкі прыкладанняў.

Пасля таго, як вы ўсталюеце што-небудзь, на ўкладцы "Session" з'явіцца адпаведны запіс аб гэтым. Тут можна пачаць ці спыніць бягучую сэсію, а таксама паглядзець запушчаныя працэсы.

"Filesystems" - апошняя ўкладка, якая паказвае ўжо завершаныя ўстаноўкі. Варта адзначыць, што пасля таго, як вы выдаліце ​​любы элемент з Filesystems, звесткі аб ім будуць сцёрты з укладкі Session, што, аднак, не даказвае зваротнага. Гэта значыць, што вы зможаце стварыць новую сесію на базе бягучай файлавай сістэмы. Зразумець, як працуе гэтая ўзаемасувязь, нашмат прасцей, калі ўбачыць гэта ў дзеянні, і таму мы пачнем з усталёўкі прыкладання ў сістэмным асяроддзі UserLAnd.
Усталёўваны працоўны стол Linux на Android

Перад тым, як усталяваць дыстрыбутыў на смартфоне, неабходна падаць UserLAnd доступ да сховішча.

Дыстрыбутывы ў UserLAnd

Абярыце адзін з дыстрыбутываў, размешчаных на экране Apps, для ўстаноўкі на прыладу. У якасці прыкладу мы будзем выкарыстоўваць Ubuntu. Пры націску на значок з'яўляецца дыялогавае акно, дзе пытаецца імя карыстальніка, пароль і пароль VNC. Затым абярыце спосаб, з дапамогай якога вы атрымаеце доступ да дыстрыбутыва. Пачнецца загрузка, падчас якой будзе задзейнічана базавая выява абранага дыстрыбутыва. Распакоўка файла будзе ажыццяўляцца ў дырэкторыі UserLAnd.

Па канчатку загрузкі вярніцеся да эмулятара тэрмінала xterm. Можаце ўвесці службовую каманду, каб пазнаць, якую версію Linux вы ўсталявалі:

uname –a

Наступны крок заключаецца ў тым, каб усталёўваць працоўны стол, выкарыстоўваючы службовую каманду Ubuntu:

sudo apt install lxde

Апошні крок складаецца ў тым, каб пераканацца, што ваша новае асяроддзе працоўнага стала гатова да запуску. Каб зрабіць гэта, трэба адрэдагаваць файл .xinitrcfile, у якім у цяперашні час маецца ўсяго адзін радок /usr/ bin/twm. Яе неабходна змяніць на /usr/bin/startlxde. Цяпер выйдзіце з сесіі XSDL (пераканайцеся, што націснулі кнопку STOP у вобласці апавяшчэнняў), утрымлівайце кнопку «Ubuntu listing» на ўкладцы Sessions, затым націсніце «Stop Sessions» і паўторна запусціце сесіі. Праз некалькі секунд павінна з'явіцца сістэмнае асяроддзе LXDE. У ёй можна рабіць тое ж самае, што і на звычайным працоўным стале. Яна проста можа быць крыху менш і працаваць крыху павольней: каб націснуць кнопку на прыладзе, вам прыйдзецца чакаць даўжэй, чым калі б вы гэта рабілі з клавіятурай і мышшу. Давайце паглядзім, як канкрэтна мы можам удасканаліць сістэмнае асяроддзе Linux на смартфоне.

Кароткае кіраўніцтва да UserLAnd

Пры ўважлівым вывучэнні змесціва працоўнага стала можна выявіць дакладнае ўзнаўленне дэксктопнай версіі. Калі вы выкарыстоўваеце UserLAnd на прыладзе з клавіятурай і мышшу (падлучаных праз Bluetooth-злучэнне ці якім-небудзь іншым чынам), вам будзе лёгка прыстасавацца да выкарыстання сістэмнага асяроддзя Linux у такім фармаце. За выключэннем невялікага адставання, якое адбываецца за рахунак таго, што курсор X-Windows сінхранізуецца з курсорам прылады на Android, усё працуе плыўна.

Магчыма, першае, што вы захочаце зрабіць, гэта адрэгуляваць усталяваную па змаўчанні сістэму шрыфтоў, паколькі памер шрыфтоў працоўнага стала занадта вялікі для экрана тэлефона. Перайдзіце ў галоўнае меню, затым абярыце «Налады» → «Настройка знешняга выгляду і віджэтаў» → «Віджэт». Тут можна памяняць памер шрыфта па змаўчанні на больш прыдатны варыянт для вашага тэлефона.

Магчыма, далей вы захочаце ўсталяваць свае каханыя праграмы ў сістэмнае асяроддзе Linux. Як сказана вышэй, службовыя каманды ў гэтым выпадку не будуць працаваць, так што адважна выкарыстоўвайце сапраўды незаменную прыладу, які ўсталяваны ў сістэмным асяроддзі UserLAnd, пад назовам ASAP:

sudo apt install emacs

Усталёўваны працоўны стол Linux на Android

Дыстрыбутывы ў дадатку прадстаўлены ў выглядзе сесій. Вы можаце пачаць і закрыць іх.

Усталёўваны працоўны стол Linux на Android

Пасля ўсталёўкі дыстрыбутыва можна дадаць асяроддзе працоўнага стала са стандартнымі камандамі.

Верагодна, вам таксама спатрэбяцца альтэрнатыўныя спосабы ўсталявання злучэння для свайго дыстрыбутыва. Той факт, што вы першапачаткова ўсталявалі XSDL, не азначае, што ён павінен быць нязменным увесь час. Вы можаце стварыць яшчэ адзін уліковы запіс на ўкладцы Session і абраць іншы сервер. Толькі пераканайцеся, што паказалі яго ў адной і тое ж файлавай сістэме. UserLAnd паспрабуе накіраваць вас на патрэбнае прыкладанне, каб усталяваць новы тып злучэння: альбо XSDL, ConnectBot для SSH, ці bVNC.

Аднак настойлівасць, з якой прыкладанне аўтаматычна накіроўвае вас у Play Store пры спробе перападключэння, можа раздражняць. Каб спыніць гэта, дастаткова змяніць сервер з дапамогай ўстаноўкі спецыяльнага прыкладання. Для ўсталёўкі SSH абярыце стары правераны VX ConnectBot. Проста ўвайдзіце ў порт 2022 на працоўнай станцыі пад вашым імем і паролем. Для таго, каб падлучыцца да сервера VNC дастаткова ўсталяваць камерцыйнае, але ў шматлікіх адносінах прасунутае прыкладанне Jump Desktop, і набраць адрас 127.0.0.1:5951.

Спадзяемся, вы падушыце пароль VNC, які задалі, калі стваралі файлавую сістэму.
Атрымаць доступ да бягучай сесіі UserLAnd таксама можна выкарыстоўваючы падобныя прылады на іншым кампутары ў вашай сетцы. Досыць падлучыць SSH да працавальнага сеансу (з тыпам злучэння SSH, натуральна) пасродкам тэрмінала Linux, напрыклад, Konsole, або падлучыцца да сеансу VNC з дапамогай KRDC. Проста заменіце лакальныя адрасы на экране кампутара IP-адрасамі вашага андроіда.

У спалучэнні з парай пераносных прыкладанняў гэтая ўсталёўка дасць вам зручную партатыўную сістэму Linux, да якой можна падлучыцца з дапамогай любога кампутара, даступнага вам у дадзены момант.

Крыніца: habr.com

Дадаць каментар