Wanga uchiziva here kuti iwe unogona kumhanya iyo Linux yekuraira mutsara pane iOS mudziyo? Iwe unogona kunge uchibvunza, "Nei ndichifanira kushandisa mameseji mameseji pa iPhone yangu?" Mubvunzo wakanaka. Asi kana iwe ukaverenga Opensource.com, unogona kunge unoziva mhinduro: Vashandisi veLinux vanoda kukwanisa kuishandisa pane chero chishandiso uye vanoda kuigadzirisa ivo pachavo.
Asi kupfuura zvese, vanoshuva kugadzirisa matambudziko akaomarara.
Ndine makore manomwe iPad 2 Mini iyo ichiri yakanaka kuverenga e-mabhuku uye mamwe mabasa. Zvisinei, ini ndinodawo kuishandisa kuti ndiwane mutsara wemirairo yezvikumbiro neseti yangu yezvirongwa uye zvinyorwa, pasina izvo ini handigoni kushanda. Ini ndinoda nharaunda yandakajaira, pamwe neyakajairwa budiriro nharaunda. Uye heano maitiro andakaita izvi.
Kubatanidza kune keyboard
Kushanda nemutsara wekuraira wechirongwa kuburikidza ne-on-screen kiyibhodhi yefoni kana piritsi hazvina kunaka. Ini ndinokurudzira kubatanidza kiibhodhi yekunze, kungave kuburikidza neBluetooth, kana kushandisa kamera yekubatanidza adapta kuti ubatanidze wired keyboard (ndakasarudza yekupedzisira). Paunobatanidza Kinesis Advantage kupatsanura kiyibhodhi kune iPhone 6, iwe unowana chinhu chinoshamisa chakafanana
Kuisa shell pane iOS
Kumhanyisa yakazara-inoratidzwa Linux system pane iOS, pane maviri sarudzo:
- Chengetedza goko (SSH) yakabatana neLinux komputa
- Kumhanyisa dhizaini uchishandisa Alpine Linux ine iSH, iyo yakavhurika sosi asi inofanirwa kuiswa uchishandisa Apple's proprietary TestFlight application.
Seimwe nzira, kune maviri akavhurika sosi terminal emulator application inopa kugona kushanda neakavhurika-sosi maturusi munzvimbo inorambidzwa. Iyi ndiyo yakanyanya kubviswa-pasi sarudzo - kutaura zvazviri, aya ndiwo maitiro aunoita maturusi eLinux, kwete Linux. Pane zvakakomba zvimisikidzo kana uchishanda nezvishandiso izvi, asi iwe unowana chikamu chekuraira mutsara mashandiro.
Ndisati ndaenda kune dzakaoma mhinduro, ini ndichatarisa nzira iri nyore.
Sarudzo 1: Sandbox shell
Imwe yedzakareruka nzira ndeyekuisa iyo iOS app
Iine mashandiro anenge akafanana
Sarudzo yechipiri: SSH
Imwe nhanho kumusoro kubva pakurodha app kumisa mutengi weSSH. Kwenguva yakareba ikozvino, takakwanisa kushandisa chero akawanda SSH mutengi maapplication eIOS kuti abatanidze kune server inomhanya Linux kana BSD. Chakanakira kushandisa SSH ndechekuti sevha inogona kumhanyisa chero kugovera nechero software. Iwe unoshanda kure uye mhedzisiro yebasa rako inongoendeswa kune terminal emulator pane yako iOS kifaa.
Sarudzo 3: Tanga Linux
Kushandisa SSH kubatanidza kune Linux server inzira yakanaka yekuwana mutsara wekuraira, asi inoda sevha yekunze uye network yekubatanidza. Ichi hachisi chipingamupinyi chikuru, asi hachigone kufuratirwa zvachose, saka ungangoda kumhanya Linux pasina sevha.
Kana iri nyaya yako, saka iwe uchafanirwa kuitora imwe nhanho mberi.
Kumhanya Alpine Linux ine iSH
Chinhu Chinokosha: experimental application. Sezvo iSH parizvino iri test application, usatarisire kugara uye kwakavimbika kushanda. TestFlight maapplication ane nguva shoma. Kuvaka kwangu ikozvino kunotora mazuva makumi matanhatu chete. Izvi zvinoreva kuti mushure memazuva makumi matanhatu ndichabviswa uye ndichafanira kujoinha zvakare kutenderera kunotevera kweiSH kuyedzwa. Uyezve, ini ndicharasikirwa nemafaira angu ese kunze kwekunge ndaatumira kunze ndichishandisa Mafaira paIOS kana kuakopa kune Git host kana
Kuisa iSH
Tanga nekuisa
Uchishandisa chinongedzo, TestFlight ichaisa iyo iSH application pane chako kifaa. Sezvakaita chero imwe application, icon ichaonekwa pachiratidziri.
Package Management
iSH inomhanyisa x86 emulator ine Alpine Linux. Alpine idiki distro, inoyera isingasviki 5MB muhukuru. Iyi yaive nguva yangu yekutanga kushanda neAlpine, saka ndakafunga kuti minimalism yaizotsamwisa, asi ini ndainyatsoifarira.
Alpine anoshandisa pasuru maneja
Maitiro ekuisa package:
apk add package
Nzira yekubvisa pasuru:
apk del package
Nzira yekuwana sei mamwe mirairo uye ruzivo:
apk --help
Package manager update:
apk update
apk upgrade
Kuisa text editor
Alpine's default text editor ndiVi, asi ini ndinoda Vim, saka ndakaiisa:
apk add vim
Kana uchida, unogona kuisa Nano kana Emacs.
Shell kuchinja
Handizive nezvako, asi ndaida
Kuisa hove:
apk add fish
Kana iwe uchida Bash ine autocompletion yayo uye mapeji emurume, wobva waaisa:
apk add bash bash-doc bash-completion
Alpine's minimalistic ideology inowanzoreva kuti mamwe mapurogiramu akaiswa mune kumwe kugoverwa anozokamurwa kuita akati wandei mapakeji. Zvinoreva zvakare kuti iwe unogona kugadzirisa uye kuderedza saizi yesystem yako nenzira yaunoda.
Kuti uwane rumwe ruzivo nezve kuisa Bash, ona
Kuchinja default shell
Mushure mekuisa hove, unogona kushandura kwairi kwenguva pfupi nekupinda fish
uye kuenda mugomba. Asi ini ndinoda kuita hove iyo default shell uye murairo chsh
, yandaishandisa pane mamwe magove, haina kushanda.
Kutanga tinoona panoiswa hove:
which fish
Hezvino zvandinazvo:
/usr/bin/fish
Tevere, shandura iyo login shell kuita hove. Iwe unogona kushandisa chero edhita yakakunakira iwe. Kana iwe uri wekutanga, saka isa Nano (nemurairo apk add nano
) kuitira kuti iwe ugone kugadzirisa mafaera ekugadzirisa uye woachengeta kuburikidza neCTRL+X, simbisa uye buda.
Asi ini ndakashandisa Vim:
vim /etc/passwd
Mutsara wangu wekutanga wakaita seuyu:
root:x:0:0:root:/root:/bin/ash
Kuita kuti hove dzive ganda rekutanga, shandura mutsara uyu kune unotevera:
root:x:0:0:root:/root:/usr/bin/fish
Zvadaro chengetedza faira uye wobuda.
Ndine chokwadi chekuti pane nzira yakanaka yekushandura nzira kuenda kune goko kuti igone kushandiswa ipapo ipapo. Asi ini handizvizive, saka ini ndinokurudzira kudzokera kubrowser yekushandisa, manikidza kubuda goko, uye kuve padivi rakachengeteka, dzima uye tangazve yako iPad kana iPhone. Vhura iSH zvakare uye ikozvino, kuwedzera kune meseji "Welcome to Alpine!" uye ruzivo nezve kuvhura kubva apk, iwe uchaona yakajairwa hove kupinda yekugamuchira meseji: Kugamuchirwa kuhove, hushamwari inofambidzana goko. Hooray!
Kumisikidza Python uye pip
Ndakafunga kuwedzera
apk add python3
Kunyange zvazvo Python 2.x yakasakara, unogona kuiisa:
apk add python
Ngatiisei iyo Python package maneja inonzi pip uye
python3 -m ensurepip --default-pip
Zvinotora nguva yekuisa uye kugadzirisa iyo package maneja, saka ingo mirira.
Unogona kudhawunirodha chishandiso chekufambisa mafaera pane network
apk add curl
Kuverenga mabhuku ekushandisa
Hove inoshandisa yakavakirwa-mukati kupedzisa kunoenderana nemapeji emunhu. Sevamwe vashandisi vemutsara wemirairo, ini ndinoshandisa bhuku rekushandisa man
, asi haina kuiswa muAlpine. Saka ndakaiisa neterminal pager
apk add man man-pages less less-doc
Pamusoro pemurume ndinoshandisa magnificent
Ndakaiisa ndichishandisa pip:
pip install tldr
chikwata tldr
inobatana newebhu kuti itore mapeji kana yasangana nechikumbiro chepeji nyowani. Kana iwe uchida kuziva kushandisa murairo, unogona kunyora chimwe chinhu chakadai tldr curl
uye uwane tsananguro muChirungu chakajeka uye mienzaniso yakanaka yekushandisa murairo.
Ehe, ese aya ekuisa basa anogona kuve otomatiki uchishandisa
mamwe mashoko
Iyo iSH Wiki ine peji "
Imwe peji yewiki inotsanangura kuti sei
Iwe unogona zvakare kuisa Git (hongu! apk add git
) uye kusundira basa rako kunzvimbo iri kure kana kuiendesa kune server kuburikidza neSSH. Uye, hongu, iwe unogona kudhawunirodha uye kumhanya chero nhamba yeakavhurika-sosi mapurojekiti kubva kuGitHub.
Rumwe ruzivo nezve iSH runogona kuwanikwa pane izvi zvinongedzo:
Pamusoro pekodzero dzekutsvaga
Vdsina anopa
Source: www.habr.com