Vissir þú að þú getur keyrt Linux skipanalínuna á iOS tæki? Þú gætir verið að spyrja: "Hvers vegna ætti ég að nota textaforrit á iPhone mínum?" Sanngjarn spurning. En ef þú lest Opensource.com veistu líklega svarið: Linux notendur vilja geta notað það á hvaða tæki sem er og vilja sérsníða það sjálfir.
En mest af öllu þrá þeir að leysa flókin vandamál.
Ég á sjö ára gamlan iPad 2 Mini sem er samt nokkuð góður til að lesa rafbækur og önnur verkefni. Hins vegar vil ég líka nota það til að fá aðgang að skipanalínu forrita með settinu mínu af forritum og forskriftum, án þess get ég ekki unnið. Ég þarf umhverfi sem ég er vanur, auk staðlaðrar þróunarumhverfis. Og hér er hvernig mér tókst að ná þessu.
Tengist lyklaborði
Það er frekar óþægilegt að vinna með skipanalínuna til að forrita í gegnum skjályklaborð síma eða spjaldtölvu. Ég mæli með að tengja ytra lyklaborð, annaðhvort í gegnum Bluetooth, eða nota myndavélartengingar millistykki til að tengja lyklaborð með snúru (ég valdi hið síðarnefnda). Þegar þú tengir Kinesis Advantage klofna lyklaborðið við iPhone 6 færðu skrítið tæki sem líkist
Að setja upp skelina á iOS
Til að keyra fullbúið Linux kerfi á iOS eru tveir valkostir:
- Örugg skel (SSH) tengd við Linux tölvu
- Að keyra sýndarkerfi með Alpine Linux með iSH, sem er opinn uppspretta en verður að vera settur upp með því að nota eigin TestFlight forrit frá Apple
Í staðinn eru tvö opinn uppspretta flugstöðvahermiforrit sem veita möguleika á að vinna með opinn uppspretta verkfæri í takmörkuðu umhverfi. Þetta er afmarkaðasti valkosturinn - í raun er þetta hvernig þú keyrir Linux verkfæri, ekki Linux. Það eru alvarlegar takmarkanir á eiginleikum þegar unnið er með þessi forrit, en þú færð að hluta skipanalínuvirkni.
Áður en farið er yfir í flóknar lausnir mun ég skoða einföldustu aðferðina.
Valkostur 1: Sandkassaskel
Ein auðveldasta leiðin er að setja upp iOS appið
Hefur um það bil sömu virkni
Valkostur 2: SSH
Annað skref upp á við frá því að hlaða niður forriti er að setja upp SSH viðskiptavin. Í langan tíma höfum við getað notað eitthvað af mörgum SSH biðlaraforritum fyrir iOS til að tengjast netþjóni sem keyrir Linux eða BSD. Kosturinn við að nota SSH er að þjónninn getur keyrt hvaða dreifingu sem er með hvaða hugbúnaði sem er. Þú vinnur í fjarvinnu og niðurstöður vinnu þinnar eru einfaldlega fluttar yfir í flugstöðvahermi á iOS tækinu þínu.
Valkostur 3: Ræstu Linux
Að nota SSH til að tengjast Linux netþjóni er frábær leið til að fá aðgang að skipanalínunni, en það krefst ytri netþjóns og nettengingar. Þetta er ekki stærsta hindrunin, en það er ekki hægt að hunsa hana alveg, svo þú gætir þurft að keyra Linux án netþjóns.
Ef þetta er þitt mál, þá þarftu að taka það einu skrefi lengra.
Keyrir Alpine Linux með iSH
Mikilvægt atriði: tilraunaumsókn. Þar sem iSH er eins og er prófunarforrit, ekki búast við stöðugri og áreiðanlegri notkun. TestFlight forrit eru tímatakmörkuð. Núverandi smíði mín mun aðeins endast í 60 daga. Þetta þýðir að eftir 60 daga mun ég verða úr leik og þarf að taka þátt í næstu umferð iSH prófanna aftur. Þar að auki mun ég missa allar skrárnar mínar nema ég flytji þær út með skrám á iOS eða afriti þær á Git hýsingaraðila eða
Er að setja upp iSH
Byrjaðu með uppsetningu
Með því að nota hlekkinn mun TestFlight setja upp iSH forritið á tækinu þínu. Eins og með öll önnur forrit mun táknmynd birtast á skjánum.
Pakkastjórnun
iSH keyrir x86 keppinaut með Alpine Linux. Alpine er pínulítið dreifing, sem er minna en 5MB að stærð. Þetta var í fyrsta skipti sem ég vinn með Alpine, svo ég hélt að naumhyggja myndi vera pirrandi, en mér líkaði það reyndar mjög vel.
Alpine notar pakkastjóra
Hvernig á að setja upp pakkann:
apk add package
Hvernig á að fjarlægja pakka:
apk del package
Hvernig á að finna aðrar skipanir og upplýsingar:
apk --help
Uppfærsla pakkastjóra:
apk update
apk upgrade
Að setja upp textaritil
Sjálfgefinn textaritill Alpine er Vi, en ég vil frekar Vim, svo ég setti hann upp:
apk add vim
Ef þess er óskað geturðu sett upp Nano eða Emacs.
Skipt um skel
Ég veit ekki með þig, en ég þurfti
Fiskur uppsetning:
apk add fish
Ef þú þarft Bash með sjálfvirkri útfyllingu og mannasíðum skaltu setja þær upp:
apk add bash bash-doc bash-completion
Minimalísk hugmyndafræði Alpine þýðir venjulega að sumum forritum sem er pakkað í aðrar dreifingar verður skipt í nokkra smærri pakka. Það þýðir líka að þú getur sérsniðið og minnkað stærð kerfisins nákvæmlega eins og þú vilt.
Fyrir frekari upplýsingar um uppsetningu Bash, sjá
Að breyta sjálfgefna skelinni
Eftir að hafa sett upp fisk geturðu skipt yfir í hann tímabundið með því að slá inn fish
og fara inn í skelina. En ég vil gera fisk að sjálfgefna skelinni og skipuninni chsh
, sem ég notaði á aðrar dreifingar, virkaði ekki.
Fyrst komumst við að því hvar fiskur er settur upp:
which fish
Hér er það sem ég fékk:
/usr/bin/fish
Næst skaltu breyta innskráningarskelinni í fisk. Þú getur notað hvaða ritstjóra sem er sem hentar þér. Ef þú ert byrjandi skaltu setja upp Nano (með skipuninni apk add nano
) svo að þú getir breytt stillingarskrám og vistað þær með CTRL+X, staðfesta og hætta.
En ég notaði Vim:
vim /etc/passwd
Fyrsta línan mín var svona:
root:x:0:0:root:/root:/bin/ash
Til að gera fisk að sjálfgefna skelinni skaltu breyta þessari línu í eftirfarandi:
root:x:0:0:root:/root:/usr/bin/fish
Vistaðu síðan skrána og hættu.
Ég er viss um að það er góð leið til að breyta slóðinni að skelinni svo hægt sé að nota hana strax. En ég veit það ekki, svo ég mæli með því að fara aftur í forritavafrann, þvinga út úr skelinni og til öryggis skaltu slökkva á og endurræsa iPad eða iPhone. Opnaðu iSH aftur og núna, auk skilaboðanna „Velkomin í Alpine!“ og upplýsingar um ræsingu frá apk muntu sjá venjulegu velkomin skilaboð fyrir fiskinnskráningu: Velkomin í fiskinn, vinalegu gagnvirku skelina. Húrra!
Setja upp Python og pip
Ég ákvað að bæta við
apk add python3
Þó að Python 2.x sé úrelt geturðu sett það upp:
apk add python
Við skulum setja upp Python pakkastjórann sem heitir pip og
python3 -m ensurepip --default-pip
Það mun taka nokkurn tíma að setja upp og stilla pakkastjórann, svo bíddu bara.
Þú getur síðan halað niður tóli til að flytja skrár yfir netið
apk add curl
Að lesa handbækur
Fish notar innbyggða sjálfvirka útfyllingu byggða á mansíðum. Eins og aðrir skipanalínunotendur nota ég handbókina man
, en það er ekki sett upp í Alpine. Svo ég setti það upp með terminal pager
apk add man man-pages less less-doc
Auk mannsins nota ég stórkostlegt
Ég setti það upp með pip:
pip install tldr
Team tldr
tengist vefnum til að sækja síður þegar það rekst á beiðni um nýja síðu. Ef þú þarft að vita hvernig á að nota skipun geturðu skrifað eitthvað eins og tldr curl
og fáðu lýsingu á venjulegri ensku og góð dæmi um hvernig á að nota skipunina.
Auðvitað er hægt að sjálfvirka alla þessa uppsetningarvinnu með því að nota
viðbótarupplýsingar
iSH Wiki er með síðu "
Önnur wiki síða útskýrir hvernig
Þú getur líka sett upp Git (já! apk add git
) og ýttu verkinu þínu í fjargeymslu eða fluttu það á netþjóninn í gegnum SSH. Og auðvitað geturðu halað niður og keyrt hvaða fjölda frábærra opinn-uppspretta verkefna frá GitHub.
Frekari upplýsingar um iSH má finna á þessum krækjum:
Um réttindi auglýsinga
Vdsina tilboð
Heimild: www.habr.com