Te whakarewa i te raina whakahau Linux i runga i te iOS

Te whakarewa i te raina whakahau Linux i runga i te iOS

I mohio koe ka taea e koe te whakahaere i te raina whakahau Linux i runga i te taputapu iOS? Kei te patai pea koe, "He aha ahau ka whakamahi ai i nga tono panui ki taku iPhone?" Patai tika. Engari ki te panui koe i te Opensource.com, ka mohio pea koe ki te whakautu: Kei te hiahia nga kaiwhakamahi Linux ki te whakamahi i runga i tetahi taputapu me te hiahia ki te whakarite i a raatau ano.

Engari ko te nuinga o nga mea katoa, e hiahia ana ratou ki te whakaoti rapanga uaua.

Kei a au he iPad 2 Mini e whitu tau he pai tonu mo te panui pukapuka-e me etahi atu mahi. Heoi ano, e hiahia ana ahau ki te whakamahi kia uru atu ki te rarangi whakahau o nga tono me taku huinga o nga kaupapa me nga tuhinga tuhi, me te kore e taea e au te mahi. Kei te hiahia ahau ki tetahi taiao kua waia ahau, me taku taiao whanaketanga paerewa. A koinei te huarahi i tutuki ai ahau.

Te hono ki te papapātuhi

Ko te mahi me te raina whakahau mo te whakamaarama ma te papapātuhi-mata o te waea, papa ranei he tino uaua. Ka tūtohu ahau ki te hono i tetahi papapātuhi o waho, ma te Nihokikorangi, ma te whakamahi ranei i te urutau hononga kamera hei hono i te papapātuhi waea (I whiriwhiria e au te mea whakamutunga). Ina hono koe i te papapātuhi wehewehe Kinesis Advantage ki te iPhone 6, ka whiwhi koe i tetahi taputapu rereke e rite ana rangatōpū ipurangideck mai i te matarohia takaro Shadowrun.

Te whakauru i te anga ki runga iOS

Ki te whakahaere i tetahi punaha Linux tino whakaatu i runga i te iOS, e rua nga whiringa:

  • Anga haumaru (SSH) e hono ana ki te rorohiko Linux
  • Te whakahaere i tetahi punaha mariko ma te whakamahi i te Alpine Linux me te iSH, he puna tuwhera engari me whakauru ma te whakamahi i te tono TestFlight rangatira a Apple

Hei rereke, e rua nga tono emulator tauranga puna tuwhera e whakarato ana i te kaha ki te mahi me nga taputapu puna-tuwhera i roto i te taiao aukati. Koinei te waahanga tino tihorea - inaa, koinei to whakahaere i nga taputapu Linux, ehara i te Linux. He nui nga here o te waahanga i te wa e mahi ana koe me enei tono, engari ka whiwhi koe i nga waahanga whakahau.

I mua i te neke ki nga otinga uaua, ka titiro ahau ki te tikanga ngawari.

Kōwhiringa 1: Anga pouaka kirikiri

Ko tetahi o nga huarahi ngawari ko te whakauru i te taupānga iOS LibTerm. Tenei puna tuwhera te anga whakahau pouaka kirikiri me te tautoko mo te neke atu i te 80 nga whakahau mo te kore taara. Ka uru mai me te Python 2.7, Python 3.7, Lua, C, Clang me te maha atu.

He rite tonu te mahi a-Anga, i whakaahuahia e nga kaihanga "he atanga kaiwhakamahi whakamatautau mo te papa whakauru mata." a-Ka whakairia nga puna anga tuwhera puna, kei roto i te whanaketanga kaha, e whakarato ana i te uru ki te punaha konae, ka tae mai me Lua, Python, Tex, Vim, JavaScript, C me C++, me Clang me Clang++. Ka taea e koe te whakauru i nga kohinga Python.

Kōwhiringa 2: SSH

Ko tetahi atu taahiraa mai i te tango i tetahi taupānga ko te whakatu i tetahi kaihoko SSH. Mo te wa roa inaianei, kua taea e matou te whakamahi i tetahi o te maha o nga taupānga kiritaki SSH mo iOS ki te hono atu ki tetahi tūmau whakahaere Linux, BSD ranei. Ko te painga o te whakamahi i te SSH ka taea e te tūmau te whakahaere i tetahi tohatoha me tetahi punaha. Mahi mamao koe me nga hua o to mahi ka whakawhiti noa ki te emulator tauranga i runga i to taputapu iOS.

Anga kimo he tono SSH utu rongonui i roto tuwhera puna. Mena ka warewarehia e koe te mata iti o te taputapu, he rite te whakamahi i tenei rorohiko ki te hono atu ki te tūmau ma tetahi atu raina whakahau. He pai te ahua o Blink Terminal, he maha nga kaupapa kua rerihia me te kaha ki te hanga i a koe ake, tae atu ki te kaha ki te whakarite me te taapiri i nga momotuhi hou.

Kōwhiringa 3: Whakarewa Linux

Ko te whakamahi i te SSH ki te hono atu ki te tūmau Linux he huarahi pai ki te uru atu ki te raina whakahau, engari me hiahia he tūmau o waho me te hononga whatunga. Ehara tenei i te aukati nui rawa atu, engari kare e taea te warewarehia, na reira ka hiahia koe ki te whakahaere Linux me te kore he tūmau.

Mena koinei to keehi, katahi ka hiahia koe ki te whai i tetahi taahiraa. TestFlight He ratonga whai mana mo te whakauru i nga tono kua whakawhanakehia ahakoa i mua i te whakaputanga ki te Apple App Store. Ka taea e koe te whakauru i te taupānga TestFlight mai i te Toa App katahi ka whakamahi i nga taupānga whakamatautau. Ko nga tono kei TestFlight ka taea te maha o nga kaiwhakamātau beta (te nuinga ki te 10) ki te mahi tahi me ratou mo te wa poto. Hei tango i tetahi tono whakamatautau, me haere koe mai i to taputapu ki tetahi hono kei te nuinga o te waa kei te paetukutuku o te kaiwhakawhanake tono whakamatautau.

Whakahaerehia te Alpine Linux me te iSH

ISH he tono TestFlight puna tuwhera e whakarewa ana i te miihini mariko me te tohatoha kua rite Alpine Linux (me te kaha iti, ka taea e koe te whakahaere i etahi atu tohatoha).

Āhuahira Nui: tono whakamatautau. I te mea ko te iSH he tono whakamatautau, kaua e tatari kia mahi tonu me te pono. He wa iti nga tono TestFlight. Ko taku hanga o naianei ka 60 ra anake. Ko te tikanga i muri i nga ra 60 ka whakakorehia ahau, ka uru ano ahau ki te waahi whakamatautau iSH e whai ake nei. I tua atu, ka ngaro aku konae katoa mena ka kaweake e au ma te whakamahi i nga konae kei runga iOS ka kape ranei ki te kaihautu Git, mā SSH. I etahi atu kupu: Kaua e whakaaro ka mahi tonu tenei! Kaua e hoatu tetahi mea nui ki a koe ki roto i te punaha! Whakahokia ki tetahi waahi motuhake!

Te whakauru iSH

Tīmata ki te tāutanga TestFlight mai i te Toa App. Na ka whakauruhia te iSH, riro te hono tāutanga mai i te paetukutuku tono. He tikanga whakauru ano ma te AltStore, engari kaore au i whakamatau. Ranei, mena kei a koe he putea kaiwhakawhanake utu, ka taea e koe te tango i te putunga iSH mai i GitHub me te whakauru i a koe ano.

Ma te whakamahi i te hono, ka whakauruhia e TestFlight te tono iSH ki to taputapu. Ka rite ki etahi atu tono, ka puta he tohu ki te mata.

Whakahaerenga mokete

Ka whakahaerehia e iSH he emulator x86 me Alpine Linux. Ko Alpine he distro iti, iti iho i te 5MB te rahi. Ko tenei taku wa tuatahi ki te mahi tahi me Alpine, no reira i whakaaro ahau he hoha te iti, engari he tino pai ki ahau.

Te whakarewa i te raina whakahau Linux i runga i te iOS
Ka whakamahi a Alpine i te kaiwhakahaere kete apk, he maamaa ake i a apt, pacman ranei.

Me pehea te whakauru i te kete:

apk add package

Me pehea te tango i tetahi kete:

apk del package

Me pehea te rapu i etahi atu whakahau me nga korero:

apk --help

Whakahōu kaiwhakahaere mōkī:

apk update
apk upgrade

Te tāuta i te ētita kuputuhi

Ko te ētita kuputuhi taunoa a Alpine ko Vi, engari he pai ki ahau te Vim, no reira i whakauruhia e ahau:

apk add vim

Mena ka hiahiatia, ka taea e koe te whakauru i te Nano, i nga Emacs ranei.

Huri anga

Kaore au i te mohio ki a koe, engari i hiahia ahau te anga ika. Ko etahi atu e pai ana Bash ranei Maoro. Heoi, ka whakamahia e Alpine te pungarehu! Ko te pungarehu he marau o te anga Dash, he marau ano o te pungarehu taketake, ranei Anga Almquist. Ko tana kaupapa matua ko te tere. I whakatau ahau ki te hokohoko tere mo te whakaotinga-aunoa, nga tae, nga mana matua Vim, me nga tohu wetereo e aroha ana ahau, e mohio ana mai i te anga ika.

Te whakaurunga ika:

apk add fish

Mena ka hiahia koe ki a Bash me tana whakaotinga aunoa me nga wharangi tangata, katahi ka whakauruhia:

apk add bash bash-doc bash-completion

Ko te tikanga o te whakaaro iti o Alpine ko te tikanga ko etahi o nga hotaka kua kohia ki etahi atu tohatoha ka wehewehea ki etahi kete iti ake. Ko te tikanga ka taea e koe te whakarite me te whakaiti i te rahi o to punaha kia rite ki to hiahia.

Mo etahi atu korero mo te whakauru i te Bash, tirohia tenei akoranga.

Te huri i te anga taunoa

Whai muri i te whakaurunga ika, ka taea e koe te huri mo te wa poto ma te whakauru fish ka haere ki roto i te anga. Engari e hiahia ana ahau ki te hanga ika te anga taunoa me te whakahau chsh, i whakamahia e ahau ki etahi atu tohatoha, kaore i mahi.

Tuatahi ka kitea e matou te waahi ka whakauruhia nga ika:

which fish

Anei taku i whiwhi:

/usr/bin/fish

Whai muri, hurihia te anga takiuru ki te ika. Ka taea e koe te whakamahi i tetahi ētita e waatea ana mo koe. Mena he timatanga koe, katahi ka whakauruhia a Nano (me te whakahau apk add nano) kia taea ai e koe te whakatika i nga konae whirihoranga me te penapena ma te CTRL+X, whakau me te puta.

Engari i whakamahia e ahau a Vim:

vim /etc/passwd

Ko taku rarangi tuatahi he penei:

root:x:0:0:root:/root:/bin/ash

Hei hanga ika te anga taunoa, hurihia tenei rarangi ki enei e whai ake nei:

root:x:0:0:root:/root:/usr/bin/fish

Na ka tiakina te konae ka puta.

E mohio ana ahau he huarahi pai hei whakarereke i te huarahi ki te anga kia taea ai te whakamahi i tenei wa tonu. Engari kaore au i te mohio, na reira ka tūtohu ahau kia hoki mai ki te tirotiro tono, tohe kia puta atu i te anga, kia noho ki te taha haumaru, whakawetohia ka whakaara ano i to iPad, iPhone ranei. Whakatuwherahia ano te iSH inaianei, hei taapiri i te panui "Nau mai ki Alpine!" me nga korero e pa ana ki te whakarewatanga mai i te apk, ka kite koe i te panui powhiri urunga ika: Nau mai ki te ika, te anga tauwhitiwhiti hoa. Hore!

Te whakarewa i te raina whakahau Linux i runga i te iOS

Te whakatu i te Python me te pip

I whakatau ahau ki te taapiri nānati (putanga 3.x), ehara i te mea ki te tuhi waehere anake, engari na te mea ka whakamahia e au etahi kaupapa Python. Kia tāuta tatou:

apk add python3

Ahakoa he tawhito a Python 2.x, ka taea e koe te whakauru:

apk add python

Me whakauru te kaiwhakahaere kete Python e kiia nei ko pip me tatūnga:

python3 -m ensurepip --default-pip

Ka roa te wa ki te whakauru me te whirihora i te kaiwhakahaere kete, na me tatari noa.

Ka taea e koe te tango i tetahi taputapu hei whakawhiti i nga konae i runga i te whatunga Tuhinga:

apk add curl

Te panui i nga pukapuka

Ka whakamahia e te ika te whakaoti-aunoa i runga i nga wharangi tangata. Ka rite ki etahi atu kaiwhakamahi raina whakahau, ka whakamahi ahau i te pukapuka man, engari kaore i whakauruhia ki Alpine. Na ka whakauruhia e ahau ki te wharangi kati iti:

apk add man man-pages less less-doc

I tua atu i te tangata ka whakamahia e ahau te ataahua kaupapa wharangi tldr, e whakarato ana i nga wharangi tangata ngawari me te akiakihia e te hapori.

I whakauruhia e ahau ma te whakamahi i te pip:

pip install tldr

rōpū tldr hono ana ki te ipurangi ki te tiki wharangi ina tutaki he tono mo tetahi wharangi hou. Mena kei te hiahia koe ki te mohio ki te whakamahi i te whakahau, ka taea e koe te tuhi i tetahi mea penei tldr curl me te tiki whakaahuatanga ki te reo Ingarihi maamaa me nga tauira pai mo te whakamahi i te whakahau.

Ko te tikanga, ko enei mahi whakauru katoa ka taea te whakamahi aunoa dotfiles he tuhinga whakauru ranei, engari kaore tenei e tino rite ki te whakaaro o Alpine - te whakarite i te whakaurunga iti kia rite ki o hiahia. I tua atu, he roa te wa, kaore?

mōhiohio atu

He wharangi to te iSH Wiki "he aha te mahi" me nga purongo mo nga kohinga kei te whakahaere i tenei wa. Ma te ara, ko te ahua npm kaore e mahi inaianei.

Ko tetahi atu wharangi wiki e whakamarama ana me pehea uru ki nga konae iSH mai i te taupānga Kōnae iOS. Koinei tetahi o nga huarahi ka taea e koe te neke me te kape i nga konae.

Ka taea hoki e koe te whakauru i a Git (ae! apk add git ) ka pana i to mahi ki tetahi putunga mamao, whakawhiti ranei ki te tūmau ma te SSH. Ae ra, ka taea e koe te tango me te whakahaere i nga maha o nga kaupapa tuwhera-puna nui mai i GitHub.

Ka kitea etahi atu korero mo te iSH i enei hononga:

I runga i nga Tika Tika

Vdsina tuku tūmau mariko i runga i te Linux Windows ranei. Ka whakamahia anake e matou taputapu waitohu, Ko te pai rawa atu o tana momo paewhiri mana tūmau o tana ake hoahoa me tetahi o nga pokapū raraunga pai rawa atu i Russia me te EU. Kia tere ki te ota!

Te whakarewa i te raina whakahau Linux i runga i te iOS

Source: will.com

Tāpiri i te kōrero