Paglunsad sa Linux command line sa iOS

Paglunsad sa Linux command line sa iOS

Nahibal-an ba nimo nga mahimo nimong ipadagan ang usa ka linya sa mando sa Linux sa usa ka aparato sa iOS? Mahimong mangutana ka, "Ngano nga mogamit ako mga text app sa iPhone?" patas nga pangutana. Apan kung nagbasa ka sa Opensource.com, tingali nahibal-an nimo ang tubag: Ang mga tiggamit sa Linux gusto nga magamit kini sa bisan unsang aparato ug gusto nga mogamit sa ilang kaugalingon nga mga setting.

Apan labaw sa tanan gusto nila nga masulbad ang komplikado nga mga problema.

Naa koy pito ka tuig nga iPad 2 Mini nga maayo pa alang sa pagbasa sa ebook ug uban pang mga buluhaton. Bisan pa, gusto ko usab nga gamiton kini aron ma-access ang command line sa mga aplikasyon gamit ang akong set sa mga programa ug mga script, kung wala kini dili ako makatrabaho. Nagkinahanglan ko og usa ka palibot nga akong naandan, ingon man ang akong standard development environment. Ug ania kung giunsa nako kini nahimo.

Pagkonektar sa usa ka keyboard

Ang pagtrabaho kauban ang command line alang sa pagprograma pinaagi sa on-screen nga keyboard sa usa ka telepono o tablet medyo dili kombenyente. Girekomendar nako ang pagkonektar sa usa ka eksternal nga keyboard, pinaagi sa Bluetooth o paggamit sa adapter sa koneksyon sa camera aron makonektar ang usa ka wired nga keyboard (gipili nako ang ulahi). Ang pagkonektar sa usa ka Kinesis Advantage nga split keyboard sa usa ka iPhone 6 moresulta sa usa ka weird device nga sama sa hitsura corporate cyberdeck gikan sa klasikal pagdula sa papel landong run.

Pag-instalar sa kabhang sa iOS

Aron makadagan ang usa ka hingpit nga magamit nga sistema sa Linux sa iOS, adunay duha nga kapilian:

  • Secure shell (SSH) konektado sa usa ka makina sa Linux
  • Pagdagan sa usa ka virtual nga sistema gamit ang Alpine Linux nga adunay iSH, nga bukas nga gigikanan apan kinahanglan i-install gamit ang proprietary nga aplikasyon sa TestFlight sa Apple

Sa laing bahin, adunay duha ka open source terminal emulator applications nga naghatag ug abilidad sa pagtrabaho uban sa open-source nga mga himan sa limitado nga palibot. Kini ang labing gihuboan nga kapilian - sa tinuud, dili kini kung giunsa nimo pagpadagan ang Linux, apan ang mga gamit sa Linux. Adunay grabe nga mga limitasyon kung nagtrabaho kauban kini nga mga aplikasyon, apan nakakuha ka partial nga pagpaandar sa linya sa command.

Sa dili pa mopadayon sa komplikadong mga solusyon, akong tagdon ang pinakasimple nga paagi.

Opsyon 1: Shell sa Sandbox

Usa sa labing kadali nga paagi mao ang pag-install sa iOS app LibTerm. Kini bukas nga tinubdan sandbox command shell nga adunay suporta alang sa kapin sa 80 ka mga sugo sa zero dolyares. Kini adunay Python 2.7, Python 3.7, Lua, C, Clang ug uban pa.

Gibana-bana nga parehas nga gamit a-Kabhang, nga gihulagway sa mga developers isip "usa ka test user interface alang sa usa ka plataporma nga adunay screen input." a-Shell tinubdan gi-post Bukas nga tinubdan, kini ubos sa aktibong pag-uswag, naghatag og access sa filesystem, ug gipadala uban ang Lua, Python, Tex, Vim, JavaScript, C ug C++, ug Clang ug Clang++. Gitugotan ka pa niini nga i-install ang mga pakete sa Python nga adunay pip.

Opsyon 2: SSH

Ang laing lakang nga lapas sa pag-download sa usa ka app mao ang pag-set up sa usa ka kliyente sa SSH. Sulod sa dugay nga panahon, nagamit namo ang bisan unsa sa daghang mga aplikasyon sa kliyente sa iOS SSH aron makonektar sa usa ka server nga nagpadagan sa Linux o BSD. Ang bentaha sa paggamit sa SSH mao nga ang bisan unsang pag-apod-apod mahimong modagan sa server gamit ang bisan unsang software. Nagtrabaho ka sa layo ug ang mga resulta sa imong trabaho gibalhin lang sa terminal emulator sa imong iOS device.

blink shell usa ka sikat nga bayad nga SSH nga aplikasyon sa Bukas nga tinubdan. Kung dili nimo hatagan pagtagad ang gamay nga screen sa aparato, nan ang paggamit niini nga software sama sa pagkonektar sa server pinaagi sa bisan unsang ubang linya sa mando. Nindot tan-awon ang terminal sa Blink, adunay daghang andam nga mga tema ug ang abilidad sa paghimo sa imong kaugalingon, lakip ang abilidad sa pagpahiangay ug pagdugang bag-ong mga font.

Opsyon 3: Pagdagan sa Linux

Ang paggamit sa SSH aron makonektar sa usa ka server ubos sa Linux usa ka maayong paagi sa pag-access sa command line, apan nagkinahanglan kini og eksternal nga server ug koneksyon sa network. Dili kini ang pinakadako nga babag, apan dili kini hingpit nga mabalewala, mao nga kinahanglan nimo nga magtrabaho sa Linux nga wala’y server.

Kung kini ang imong kaso, nan kinahanglan nimo nga himuon kini usa ka lakang sa unahan. TestFlight mao ang usa ka proprietary nga serbisyo alang sa pag-instalar sa mga aplikasyon nga ubos sa pagpalambo sa dili pa kini ipagawas sa Apple App Store. Mahimo nimong i-install ang TestFlight app gikan sa App Store ug dayon gamiton ang mga test apps. Gitugotan sa mga aplikasyon sa TestFlight ang limitado nga gidaghanon sa mga beta tester (kasagaran hangtod sa 10) nga magtrabaho uban kanila sa limitado nga oras. Aron ma-download ang test app, kinahanglan nimo nga ma-access ang link sa imong device, nga kasagaran makita sa website sa developer sa test app.

Pagpadagan sa Alpine Linux uban sa iSH

ISH usa ka open-source nga TestFlight nga aplikasyon nga nagpadagan sa usa ka virtual nga makina nga adunay andam nga pag-apod-apod Alpine Linux (uban ang gamay nga trabaho, mahimo nimong ipadagan ang ubang mga pag-apod-apod).

Importante nga bahin: eksperimento nga aplikasyon. Tungod kay ang iSH karon usa ka aplikasyon sa pagsulay, ayaw pagdahum nga makanunayon ug kasaligan nga pasundayag. Ang mga aplikasyon sa TestFlight limitado sa oras. Ang akong kasamtangan nga pagtukod modagan lamang sa 60 ka adlaw. Kini nagpasabot nga human sa 60 ka adlaw ako mapapahawa ug kinahanglan nga moapil pag-usab sa sunod nga hugna sa iSH testing. Dugang pa, mawala nako ang tanan nakong mga file kung dili nako kini i-export sa mga File sa iOS o kopyahon kini sa usa ka Git host o pinaagi sa SSH. Sa laing pagkasulti: Ayaw pagdahom nga kining tanan magpadayon sa pagtrabaho! Ayaw ibutang ang bisan unsa nga importante kanimo sa sistema! I-back up sa bulag nga lokasyon!

Pag-instalar sa iSH

Pagsugod sa pag-instalar TestFlight gikan sa App Store. Dayon i-install ang iSH, pagkuha og link aron ma-install gikan sa website sa aplikasyon. Adunay laing paagi sa pag-instalar gamit ang AltStore, apan wala pa nako kini gisulayan. O, kung ikaw adunay bayad nga developer account, mahimo nimo i-download ang iSH repository gikan sa GitHub ug i-install kini sa imong kaugalingon.

Gamit ang link, i-install sa TestFlight ang iSH app sa imong device. Sama sa bisan unsang ubang aplikasyon, usa ka icon ang makita sa screen.

Pagdumala sa Pakete

Ang iSH nagpadagan sa usa ka x86 emulator nga adunay Alpine Linux. Ang Alpine usa ka gamay nga pag-apod-apod nga wala’y 5MB ang gidak-on. Kini ang una nakong higayon nga nagtrabaho kauban ang Alpine, mao nga naghunahuna ko nga ang minimalism makalagot, apan ganahan kaayo ko niini.

Paglunsad sa Linux command line sa iOS
Gigamit ni Alpine ang manager sa package APKnga mas sayon ​​kay sa apt o pacman.

Unsaon pag-instalar sa package:

apk add package

Unsaon pagtangtang sa usa ka pakete:

apk del package

Unsaon pagpangita sa ubang mga sugo ug impormasyon:

apk --help

Pag-update sa manager sa package:

apk update
apk upgrade

Pag-instalar sa usa ka text editor

Ang standard nga editor sa teksto sa Alpine mao ang Vi, apan mas gusto nako ang Vim, mao nga gi-install nako kini:

apk add vim

Kung gusto, mahimo nimong i-install ang Nano o Emacs.

Pagbag-o sa shell

Wala ko kahibalo bahin nimo, pero kinahanglan nako isda nga kinhason. Ang ubang mga tawo mas gusto Bash o Zsh. Apan, ang Alpine naggamit ug abo! Ang abo usa ka tinidor sa kabhang sa Dash, nga mismo usa ka tinidor sa orihinal nga abo, o Almquist shell. Ang iyang priority kay speed. Nakahukom ko nga ibaligya ang katulin alang sa built-in nga auto-completion, mga kolor, Vim key management, ug syntax nga nagpasiugda nga akong gihigugma ug nahibal-an gikan sa kabhang sa isda.

instalasyon sa isda:

apk add fish

Kung kinahanglan nimo ang Bash nga adunay autocompletion ug mga panid sa tawo, unya i-install kini:

apk add bash bash-doc bash-completion

Ang minimalist nga ideolohiya sa Alpine kasagaran nagpasabut nga ang pipila ka mga programa nga usa ka pakete sa ubang mga distribusyon mabahin sa daghang gagmay nga mga pakete. Nagpasabot usab kini nga mahimo nimong i-tune ug i-downsize ang sistema sa paagi nga gusto nimo.

Alang sa dugang nga impormasyon sa pag-instalar sa Bash, tan-awa kini nga panudlo.

Pag-ilis sa default shell

Kung ma-install na ang isda, mahimo nimong temporaryo nga ibalhin kini pinaagi sa pag-type fish ug moadto sa kabhang. Apan gusto nako nga himoong isda ang default shell, ug ang command chsh, nga akong gigamit sa ubang mga distribusyon, wala molihok.

Una, atong hibal-an kung diin na-install ang isda:

which fish

Ania ang nahitabo kanako:

/usr/bin/fish

Sunod, usba ang login shell ngadto sa isda. Mahimo nimong gamiton ang bisan unsang editor nga gusto nimo. Kung ikaw usa ka beginner, unya i-install ang Nano (uban ang command apk add nano) aron imong ma-edit ang mga configuration file ug i-save kini pinaagi sa CTRL+X, kumpirmahi ug mogawas.

Apan gigamit nako ang Vim:

vim /etc/passwd

Ang akong unang linya mao ang:

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

Aron mahimo ang isda nga default shell, usba kini nga linya sa mosunod:

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

Unya i-save ang file ug paggawas.

Sigurado ko nga adunay maayo nga paagi aron mabag-o ang agianan sa shell aron magamit dayon. Apan wala ko kaila niya, mao nga girekomendar nako ang pagbalik sa browser sa aplikasyon, pugson ang paggawas sa kabhang, ug aron sigurado, i-off ug i-restart ang iPad o iPhone. Ablihi pag-usab ang iSH ug karon, dugang sa mensahe nga "Welcome to Alpine!" ug impormasyon bahin sa paglansad gikan sa apk, imong makita ang standard nga fish login welcome message: Malipayon nga pag-abut sa isda, ang mahigalaon nga interactive shell. Hooray!

Paglunsad sa Linux command line sa iOS

Pag-set up sa Python ug pip

Nakahukom ko nga idugang Python (bersyon 3.x), dili lamang sa pagsulat code, apan usab tungod kay ako sa paggamit sa pipila ka mga programa sa Python. Atong i-install kini:

apk add python3

Bisan kung ang Python 2.x karaan na, mahimo nimo usab kini i-install:

apk add python

Pag-instalar og Python package manager nga gitawag og pip ug setuptools:

python3 -m ensurepip --default-pip

Nagkinahanglan kini og pipila ka panahon aron ma-install ug ma-configure ang manager sa package, busa pagpailub lang.

Mahimo nimong i-download ang usa ka himan aron mabalhin ang mga file sa network curl:

apk add curl

Mga manwal sa pagbasa

Gigamit sa isda ang built-in nga autocompletion base sa man page. Sama sa ubang tiggamit sa command line, gigamit nako ang manwal man, ug wala kini ma-install sa Alpine. Mao nga gi-install nako kini gamit ang terminal pager dili kaayo:

apk add man man-pages less less-doc

Dugang pa sa tawo, gigamit nako ang matahum proyekto sa mga panid sa tldr, nga naghatag og gipayano ug gipalihok sa komunidad nga mga panid sa tawo.

Gi-install nako kini sa pip:

pip install tldr

team tldr nagkonektar sa web aron makuha ang mga panid kung makasugat kini usa ka hangyo alang sa usa ka bag-ong panid. Kung kinahanglan nimo mahibal-an kung giunsa ang paggamit sa usa ka mando, mahimo nimong isulat ang usa ka butang nga sama tldr curl ug pagkuha usa ka paghulagway sa yano nga English ug maayong mga pananglitan kung giunsa paggamit ang mando.

Siyempre, kining tanan nga trabaho sa pag-install mahimong awtomatiko nga gamiton dotfiles o usa ka script sa pag-install, apan sa tinuud kini dili kaayo nahiuyon sa ideolohiya sa Alpine - pag-customize sa labing gamay nga pag-install nga klaro sa imong mga panginahanglan. Gawas pa, dugay kaayo, di ba?

dugang nga impormasyon

Ang iSH Wiki adunay panid "unsa ang nagtrabaho" nga adunay mga taho kung unsang mga pakete ang nagdagan karon. Sa paagi, ingon kini Ang npm dili molihok karon.

Ang laing panid sa wiki nagpatin-aw kung giunsa pag-access sa mga file sa iSH gikan sa iOS Files app. Kini mao ang usa sa mga paagi nga kamo makahimo sa paglihok ug pagkopya sa mga file.

Mahimo usab nimo i-install ang Git (oo! apk add git ) ug iduso ang imong trabaho sa usa ka hilit nga repositoryo o iduso kini sa server pinaagi sa SSH. Ug, siyempre, mahimo nimong i-download ug ipadagan ang bisan unsang gidaghanon sa mga maayo nga open-source nga mga proyekto gikan sa GitHub.

Dugang nga impormasyon bahin sa iSH makita sa kini nga mga link:

Diha sa Mga Katungod sa Pagdukiduki

Vdsina nagtanyag virtual nga mga server sa Linux o Windows. Gigamit namon ang eksklusibo branded nga kagamitan, ang pinakamaayo sa iyang matang sa in-house server control panel ug usa sa pinakamaayong data center sa Russia ug sa EU. Pagdali sa pag-order!

Paglunsad sa Linux command line sa iOS

Source: www.habr.com

Idugang sa usa ka comment