Na-amalite ahịrị iwu Linux na iOS

Na-amalite ahịrị iwu Linux na iOS

Ị maara na ị nwere ike ịgba ọsọ ahịrị iwu Linux na ngwaọrụ iOS? Ị nwere ike na-ajụ, "Gịnị kpatara m ga-eji jiri ngwa izipu ozi na iPhone m?" Ajụjụ ziri ezi. Mana ọ bụrụ na ị gụọ Opensource.com, ị ga-ama azịza ya: Ndị ọrụ Linux chọrọ ka ha nwee ike iji ya na ngwaọrụ ọ bụla ma chọọ ịhazi ya n'onwe ha.

Mana nke kachasị, ọ na-agụsi ha agụụ ike idozi nsogbu ndị siri ike.

Enwere m iPad 2 Obere dị afọ asaa nke ka dị mma maka ịgụ akwụkwọ e-akwụkwọ na ọrụ ndị ọzọ. Otú ọ dị, m na-achọkwa iji ya iji nweta usoro iwu nke ngwa na usoro mmemme na edemede m, na-enweghị nke m enweghị ike ịrụ ọrụ. Achọrọ m gburugburu ebe m na-emebu, yana ọnọdụ mmepe ọkọlọtọ m. Nke a bụ ka m siri nwee ike nweta nke a.

Ijikọ na ahụigodo

Ịrụ ọrụ na ahịrị iwu maka mmemme site na ahụigodo ihuenyo nke ekwentị ma ọ bụ mbadamba adịghị mma. Ana m akwado ijikọ ahụigodo mpụga, ma ọ bụ site na Bluetooth, ma ọ bụ iji ihe nkwụnye njikọ igwefoto jikọọ ahụigodo wired (m họọrọ nke ikpeazụ). Mgbe ị jikọọ Kinesis Advantage kewaa kiiboodu na iPhone 6, ị ga-enweta ngwaọrụ pụrụ iche nke yiri ụlọ ọrụ cyberdeck si kpochapụwo ghọrọ onye ọzọ Shadowrun.

Ịwụnye shei na iOS

Iji mee usoro Linux zuru oke na iOS, enwere nhọrọ abụọ:

  • Nchekwa shei (SSH) jikọọ na kọmputa Linux
  • Na-eji Alpine Linux na iSH na-eme usoro mebere, nke bụ isi mmalite mana a ga-etinyerịrị ya site na iji ngwa TestFlight nke Apple.

Dịka ọzọ, enwere ngwa emulator oghere abụọ mepere emepe nke na-enye ike iji ngwaọrụ mepere emepe rụọ ọrụ na gburugburu amachibidoro. Nke a bụ nhọrọ kacha agbachapụ - n'ezie, otu a ka ị na-esi agba ngwa Linux, ọ bụghị Linux. Enwere oke njiri mara mgbe ị na-arụ ọrụ na ngwa ndị a, mana ị na-enweta ọrụ ahịrị iwu akụkụ.

Tupu ịga n'ihu na ngwọta mgbagwoju anya, m ga-eleba anya na usoro kachasị mfe.

Nhọrọ 1: Sandbox shell

Otu n'ime ụzọ kachasị mfe bụ ịwụnye ngwa iOS Okwu Lib. Nke a isi mmalite Shei iwu sandboxed nwere nkwado maka iwu 80 maka dollar efu. Ọ na-abịa na Python 2.7, Python 3.7, Lua, C, Clang na ọtụtụ ndị ọzọ.

Nwere ihe dị ka otu ọrụ a-shell, nke ndị nrụpụta kọwara dị ka “nleba anya onye ọrụ maka ikpo okwu ntinye ihuenyo.” a-Shell isi mmalite ka ebiputere Isi mmalite, ọ bụ na mmepe na-arụsi ọrụ ike, na-enye ohere faịlụ faịlụ, na-abịa na Lua, Python, Tex, Vim, JavaScript, C na C ++, yana Clang na Clang ++. Ọ na-enye gị ohere ịwụnye ngwugwu Python.

Nhọrọ 2: SSH

Nzọụkwụ ọzọ sitere na nbudata ngwa bụ ịmepụta onye ahịa SSH. Ruo ogologo oge ugbu a, anyị enweela ike iji nke ọ bụla n'ime ọtụtụ ngwa ahịa ndị ahịa SSH maka iOS iji jikọọ na sava na-agba Linux ma ọ bụ BSD. Uru nke iji SSH bụ na ihe nkesa nwere ike iji ngwanrọ ọ bụla na-ekesa nkesa ọ bụla. Ị na-arụ ọrụ nke ọma na nsonaazụ nke ọrụ gị na-ebufe ya na emulator njedebe na ngwaọrụ iOS gị.

Shei na-egbuke egbuke bụ ngwa SSH na-ewu ewu na-akwụ ụgwọ na Isi mmalite. Ọ bụrụ na ị leghara obere ihuenyo nke ngwaọrụ ahụ anya, mgbe ahụ iji ngwanrọ a yiri njikọ na ihe nkesa site na ahịrị iwu ọ bụla ọzọ. Blink Terminal dị oke mma, nwere ọtụtụ isiokwu emebere na ikike imepụta nke gị, gụnyere ikike ịhazi na ịgbakwunye mkpụrụedemede ọhụrụ.

Nhọrọ 3: Mwepụta Linux

Iji SSH jikọọ na ihe nkesa Linux bụ ụzọ dị mma iji nweta ahịrị iwu, mana ọ chọrọ ihe nkesa mpụga yana njikọ netwọkụ. Nke a abụghị nnukwu nsogbu, mana enweghị ike ileghara ya anya kpamkpam, yabụ ị nwere ike ịgba ọsọ Linux na-enweghị ihe nkesa.

Ọ bụrụ na nke a bụ ikpe gị, mgbe ahụ, ị ​​ga-achọ iwere ya otu nzọụkwụ n'ihu. Ọnọdụ nnwale bụ ọrụ nwe maka ịwụnye ngwa ndị mepere emepe ọbụlagodi tupu ebipụta ha na Storelọ Ahịa Apple App. Ị nwere ike iwunye ngwa TestFlight site na Ụlọ Ahịa App wee jiri ngwa ule. Ngwa dị na TestFlight na-enye ohere ọnụọgụ beta dị ntakịrị (na-abụkarị ihe ruru 10) ka ha na ha rụọ ọrụ obere oge. Iji budata ngwa ule, ịkwesịrị ịga na ngwaọrụ gị gaa na njikọ nke na-adịkarị na webụsaịtị onye nrụpụta ngwa nnwale.

Na-agba ọsọ Alpine Linux na iSH

ISH bụ ngwa TestFlight mepere emepe nke na-ewepụta igwe mebere nke nwere nkesa emebere Linux Alpine (site na obere mgbalị, ị nwere ike ịgba ọsọ nkesa ndị ọzọ).

Akụkụ dị mkpa: ngwa nnwale. Ebe ọ bụ na iSH bụ ngwa ule ugbu a, atụla anya ọrụ mgbe niile na ntụkwasị obi. Ngwa TestFlight nwere oke oge. Ihe owuwu m ugbu a ga-adị naanị ụbọchị 60. Nke a pụtara na mgbe ụbọchị 60 gachara, a ga-ewepụ m, m ga-abanyekwa ọzọ na nyocha iSH ọzọ. Ọzọkwa, m ga-atụfu faịlụ m niile ọ gwụla ma m bupụ ha site na iji Faịlụ na iOS ma ọ bụ detuo ha na onye ọbịa Git ma ọ bụ site na SSH. Yabụ: Atụla anya na nke a ga-aga n'ihu na-arụ ọrụ! Etinyela ihe ọ bụla dị gị mkpa na sistemụ! Kwado na ebe dị iche!

Ịwụnye iSH

Malite na ntinye Ọnọdụ nnwale site na Ụlọ Ahịa Ngwa. Mgbe ahụ wụnye iSH, natara njikọ nwụnye site na webụsaịtị ngwa. Enwere usoro nrụnye ọzọ na-eji AltStore, mana anwalebeghị m ya. Ma ọ bụ, ọ bụrụ na ị nwere akaụntụ onye nrụpụta akwụ ụgwọ, ịnwere ike ibudata ebe nchekwa iSH na GitHub wee wụnye ya n'onwe gị.

Iji njikọ ahụ, TestFlight ga-etinye ngwa iSH na ngwaọrụ gị. Dịka ọ dị na ngwa ọ bụla ọzọ, akara ngosi ga-apụta na ihuenyo.

Njikwa ngwugwu

iSH na-agba ọsọ x86 emulator na Alpine Linux. Alpine bụ obere distro, na-atụ ihe na-erughị 5MB n'ogo. Nke a bụ oge mbụ m na-arụ ọrụ na Alpine, yabụ echere m na minimalism ga-ewe iwe, mana ọ masịrị m n'ezie.

Na-amalite ahịrị iwu Linux na iOS
Alpine na-eji njikwa ngwugwu apk, nke dị mfe karịa ọbụna apt ma ọ bụ pacman.

Otu esi etinye ngwugwu:

apk add package

Otu esi ewepu ngwugwu:

apk del package

Otu esi achọta iwu na ozi ndị ọzọ:

apk --help

Mmelite njikwa ngwugwu:

apk update
apk upgrade

Ịwụnye ndezi ederede

Onye ndezi ederede ndabara nke Alpine bụ Vi, mana Vim masịrị m, yabụ etinyere m ya:

apk add vim

Ọ bụrụ na achọrọ, ịnwere ike ịwụnye Nano ma ọ bụ Emacs.

Shell mgbanwe

Amaghị m gbasara gị, mana achọrọ m azụ azụ. Ndị ọzọ masịrị kụọ ma ọ bụ zsh. Agbanyeghị, Alpine na-eji ntụ ntụ! Ash bụ ndụdụ nke shei Dash, nke n'onwe ya bụ ndụdụ nke ntụ mbụ, ma ọ bụ Almquist shei. Ihe kacha ya mkpa bụ ọsọ. Ekpebiri m ịzụ ahịa ọsọ maka mmecha akpaaka arụnyere, agba, njikwa igodo Vim, na syntax na-egosi na m hụrụ n'anya ma mara site na shei azụ.

Ntinye azụ:

apk add fish

Ọ bụrụ na ịchọrọ Bash na ibe ya na akpaaka ya, tinyezie ha:

apk add bash bash-doc bash-completion

Echiche dị nta nke Alpine na-apụtakarị na a ga-ekewa ụfọdụ mmemme ndị etinyere na nkesa ndị ọzọ n'ọtụtụ ngwugwu dị nta. Ọ pụtakwara na ị nwere ike hazie ma belata nha sistemụ gị kpọmkwem otu ịchọrọ.

Maka ozi ndị ọzọ gbasara ịwụnye Bash, hụ nkuzi a.

Na-agbanwe shei ndabara

Mgbe ị wụnyechara azụ, ị nwere ike ịgbanwe ya nwa oge site na ịbanye fish na ịbanye na shei. Mana achọrọ m ịme azụ ka ọ bụrụ shei na iwu chsh, nke m na-eji na nkesa ndị ọzọ, arụghị ọrụ.

Mbụ anyị chọpụta ebe etinyere azụ:

which fish

Nke a bụ ihe m nwetara:

/usr/bin/fish

Na-esote, gbanwee shei nbanye ka ọ bụrụ azụ. Ị nwere ike iji nchịkọta akụkọ ọ bụla dabara gị. Ọ bụrụ na ị bụ onye mbido, tinyezie Nano (ya na iwu apk add nano) ka ị nwee ike dezie faịlụ nhazi wee chekwaa ha site na CTRL+X, gosi na pụọ.

Mana ejiri m Vim:

vim /etc/passwd

Ahịrị mbụ m dị ka nke a:

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

Iji mee ka azụ bụrụ shei ndabara, gbanwee ahịrị a ka ọ bụrụ nke a:

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

Wee chekwaa faịlụ ahụ wee pụọ.

Eji m n'aka na enwere uzo di nma isi gbanwee uzo na shei ka enwere ike iji ya ozugbo. Ma amaghị m ya, yabụ ana m akwado ịlaghachi na ihe nchọgharị ngwa ahụ, manye ịpụ na shei ahụ, na ịnọ n'akụkụ nchekwa, gbanyụọ ma malitegharịa iPad ma ọ bụ iPhone gị. Mepee iSH ugboro ugboro, na mgbakwunye na ozi "Nnọọ na Alpine!" na ozi gbasara launching from apk, you will see the standard fish login welcome message: Nabata na azụ, shea mmekọrịta mmekọrịta. Hụ!

Na-amalite ahịrị iwu Linux na iOS

Ịtọlite ​​​​Python na pip

Ekpebiri m ịgbakwunye Python (ụdị 3.x), ọ bụghị naanị ide koodu, kamakwa n'ihi na m na-eji ọtụtụ mmemme Python. Ka anyị tinye ya:

apk add python3

Ọ bụ ezie na Python 2.x bụ ihe ochie, ị nwere ike tinye ya:

apk add python

Ka anyị tinye onye njikwa ngwugwu Python nke a na-akpọ pip na ntọlite:

python3 -m ensurepip --default-pip

Ọ ga-ewe oge iji wụnye na hazie njikwa ngwugwu, yabụ chere naanị.

Ị nwere ike ibudata ngwá ọrụ iji nyefee faịlụ na netwọk curl:

apk add curl

Ịgụ akwụkwọ ntuziaka

Azụ na-eji arụrụ arụ ọrụ dabere na ibe mmadụ. Dịka ndị ọrụ ahịrị iwu ndị ọzọ, m na-eji akwụkwọ ntuziaka man, mana etinyeghị ya na Alpine. N'ihi ya, m tinye ya na terminal pager Mpekarị:

apk add man man-pages less less-doc

Na mgbakwunye na mmadụ m na-eji ebube tldr ibe oru ngo, nke na-enye ibe mmadụ dị mfe yana nke obodo na-eduzi.

Ejiri m pip tinye ya:

pip install tldr

otu tldr jikọọ na webụ iji weghachite ibe mgbe ọ zutere arịrịọ maka ibe ọhụrụ. Ọ bụrụ na ịchọrọ ịma ka esi eji iwu, ị nwere ike dee ihe dịka tldr curl wee nweta nkọwa n'asụsụ bekee dị larịị na ezigbo ọmụmaatụ otu esi eji iwu ahụ.

N'ezie, a niile ọrụ echichi nwere ike na-akpaghị aka na-eji dotfiles ma ọ bụ edemede nrụnye, mana n'ezie nke a adabaghị n'echiche Alpine - ịhazi nrụnye dị ntakịrị ka ọ dabara maka mkpa gị. E wezụga nke ahụ, o were ogologo oge, ọ́ bụghị ya?

na ozi ndị ọzọ

ISH Wiki nwere ibe"ihe na-arụ ọrụ" na akụkọ nke ngwugwu na-agba ọsọ ugbu a. N'agbanyeghị, ọ dị ka npm anaghị arụ ọrụ ugbu a.

Ibe wiki ọzọ na-akọwa otú nweta iSH faịlụ site na ngwa faịlụ iOS. Nke a bụ otu n'ime ụzọ ị nwere ike ibugharị na detuo faịlụ.

Ị nwekwara ike ịwụnye Git (ee! apk add git ) ma kwanye ọrụ gị na ebe nchekwa dịpụrụ adịpụ ma ọ bụ bufee ya na ihe nkesa site na SSH. Ma, n'ezie, ị nwere ike ibudata ma mee ọnụ ọgụgụ ọ bụla nke nnukwu ọrụ mmeghe sitere na GitHub.

Enwere ike ịchọta ozi ndị ọzọ gbasara iSH na njikọ ndị a:

Ikike nke Mgbasa Ozi

Vdsina na-enye Virtual sava na Linux ma ọ bụ Windows. Anyị na-eji naanị akụrụngwa akara, ihe kachasị mma nke ụdị njikwa ihe nkesa nke nhazi ya na otu n'ime ebe data kacha mma na Russia na EU. Mee ọsọ ọsọ ịtụ!

Na-amalite ahịrị iwu Linux na iOS

isi: www.habr.com

Tinye a comment