Sapete chì pudete eseguisce una linea di cummanda Linux in un dispositivu iOS? Puderete dumandà: "Perchè duverebbe aduprà app di testu in iPhone?" Quistione ghjustu. Ma s'è vo leghjite Opensource.com, probabilmente sapete a risposta: l'utilizatori di Linux volenu pudè usà in ogni dispositivu è volenu aduprà i so paràmetri.
Ma a maiò parte di tutti anu brama di risolve prublemi cumplessi.
Aghju un iPad 2 Mini di sette anni chì hè sempre bonu per a lettura di ebook è altre attività. In ogni casu, vogliu ancu aduprà per accede à a linea di cummanda di l'applicazioni cù u mo settore di prugrammi è script, senza quale ùn possu micca travaglià. Aghju bisognu di un ambiente chì sò abituatu, è ancu di u mo ambiente di sviluppu standard. È quì hè cumu riesciutu à ottene questu.
Cunnessione à un teclatu
U travagliu cù a linea di cummanda per a prugrammazione attraversu u teclatu nantu à u screnu di un telefunu o tableta hè abbastanza inconveniente. Aghju ricumandemu di cunnette un teclatu esternu, o via Bluetooth o cù un adattatore di cunnessione di càmera per cunnette un teclatu cablatu (aghju sceltu l'ultimu). Cunnettendu un teclatu split Kinesis Advantage à un iPhone 6 risulta in un dispositivu stranu chì pare
Stallà a cunchiglia in iOS
Per eseguisce un sistema Linux cumplettamente funziunale in iOS, ci sò duie opzioni:
- Secure Shell (SSH) cunnessu à una macchina Linux
- Esecuzione di un sistema virtuale utilizendu Alpine Linux cù iSH, chì hè open source ma deve esse installatu cù l'applicazione TestFlight di Apple.
In alternativa, ci sò duie applicazioni di emulatore di terminale open source chì furniscenu a capacità di travaglià cù strumenti open-source in un ambiente limitatu. Questa hè l'opzione più spogliata - in fattu, questu ùn hè micca cumu eseguite Linux, ma l'arnesi Linux. Ci sò severi limitazioni quandu u travagliu cù queste applicazioni, ma uttene funziunalità parziale di linea di cummanda.
Prima di passà à suluzioni cumplessi, cunsiderà u modu più simplice.
Opzione 1: Shell in Sandbox
Unu di i modi più faciuli hè di stallà l'app iOS
Circa a stessa funziunalità
Opzione 2: SSH
Un altru passu oltre a scaricamentu di una app hè a creazione di un cliente SSH. Per un bellu pezzu, avemu pussutu utilizà qualsiasi di e parechje applicazioni di cliente SSH iOS per cunnette à un servitore chì funziona Linux o BSD. U vantaghju di utilizà SSH hè chì ogni distribuzione pò esse esecutatu nantu à u servitore cù qualsiasi software. U travagliu remotely è i risultati di u vostru travagliu sò simpricimenti trasferitu à u emulator tirminali nant'à u vostru aparechju iOS.
Opzione 3: Eseguite Linux
Utilizà SSH per cunnette à un servitore sottu Linux hè una bella manera di accede à a linea di cummanda, ma hè bisognu di un servitore esternu è una cunnessione di rete. Questu ùn hè micca u più grande ostaculu, ma ùn pò micca esse ignoratu cumplettamente, perchè pudete bisognu di travaglià cù Linux senza un servitore.
Sè questu hè u vostru casu, allora vi tuccherà à piglià un passu più.
Esecuzione di Alpine Linux cù iSH
Funzione impurtante: applicazione sperimentale. Siccomu iSH hè attualmente una applicazione di prova, ùn aspettate micca un rendiment coherente è affidabile. L'applicazioni TestFlight sò limitate in u tempu. A mo custruzzione attuale duverà solu 60 ghjorni. Questu significa chì dopu à 60 ghjorni seraghju espulsu è duverà riunite à a fase successiva di teste iSH. Inoltre, perderaghju tutti i mo fugliali s'ellu ùn l'esportu micca cù Files in iOS o copià in un host Git o
Installazione iSH
Cumincià cù a stallazione
Utilizendu u ligame, TestFlight installerà l'app iSH in u vostru dispositivu. Cum'è cù qualsiasi altra applicazione, un icona apparirà nantu à u screnu.
Gestione di pacchetti
iSH gestisce un emulatore x86 cù Alpine Linux. Alpine hè una distribuzione chjuca chì hè menu di 5MB in dimensione. Questa era a mo prima volta chì travaglià cù Alpine, cusì pensu chì u minimalismu seria fastidiosu, ma mi piace assai.
Alpine usa un gestore di pacchetti
Cumu installà u pacchettu:
apk add package
Cumu caccià un pacchettu:
apk del package
Cumu truvà altre cumandamenti è informazioni:
apk --help
Actualizazione di u gestore di pacchetti:
apk update
apk upgrade
Stallà un editore di testu
L'editore di testu standard di Alpine hè Vi, ma preferimu Vim, cusì l'aghju stallatu:
apk add vim
Se vulete, pudete installà Nano o Emacs.
Cambia di cunchiglia
Ùn sò micca sapè di voi, ma aghju avutu bisognu
installazione di pisci:
apk add fish
Sè avete bisognu di Bash cù e so pagine di autocompletion è man, allora installate:
apk add bash bash-doc bash-completion
L'ideulugia minimalista di Alpine generalmente significa chì certi prugrammi chì sò un solu pacchettu nantu à altre distribuzioni seranu spartuti in parechji pacchetti più chjuchi. Hè ancu significatu chì pudete sintonizà è riduce u sistema cum'è vo vulete.
Per più infurmazione nantu à l'installazione di Bash, vede
Cambia a cunchiglia predeterminata
Una volta chì u pesciu hè stallatu, pudete cambià temporaneamente à ellu scrivendu fish
è andendu à a cunchiglia. Ma vogliu fà u pesciu a cunchiglia predeterminata, è u cumandamentu chsh
, chì aghju utilizatu in altre distribuzioni, ùn hà micca travagliatu.
Prima, scopremu induve hè stallatu u pesciu:
which fish
Eccu ciò chì mi hè accadutu:
/usr/bin/fish
Dopu, cambia a cunchiglia di login in pesce. Pudete aduprà qualsiasi editore chì ti piace. Sè site un principiante, allora installate Nano (cù u cumandimu apk add nano
) in modu chì pudete edità i schedarii di cunfigurazione è salvà via CTRL + X, cunfirmà è esce.
Ma aghju utilizatu Vim:
vim /etc/passwd
A mo prima linea era:
root:x:0:0:root:/root:/bin/ash
Per fà u pesciu a cunchiglia predeterminata, cambia sta linea à a seguente:
root:x:0:0:root:/root:/usr/bin/fish
Allora salvà u schedariu è surtite.
Sò sicuru chì ci hè una bona manera di cambià a strada di cunchiglia in modu chì pò esse usata subitu. Ma ùn u cunnoscu micca, cusì ricumandemu di vultà in u navigatore di l'applicazioni, forzà l'esce da a cunchiglia, è per esse sicuru, spegne è ripigliate l'iPad o l'iPhone. Aprite iSH di novu è avà, in più di u missaghju "Benvenuti in Alpine!" è infurmazione nantu à u lanciamentu da l'apk, vi vede u missaghju di benvenutu standard di login di pesci: Benvenutu à u pesciu, a cunchiglia interattiva amichevule. Eura!
Configurazione di Python è pip
Aghju decisu di aghjunghje
apk add python3
Ancu se Python 2.x hè obsoletu, pudete ancu installà:
apk add python
Installa un gestore di pacchetti Python chjamatu pip è
python3 -m ensurepip --default-pip
Ci hà da piglià un pocu di tempu per installà è cunfigurà u gestore di pacchetti, cusì sia pacienza.
Pudete tandu scaricà un strumentu à trasfiriri schedari nant'à a reta
apk add curl
Lettura di manuali
Fish usa l'autocompletion integrata basatu nantu à e pagine man. Cum'è l'altri utilizatori di linea di cumanda, aghju utilizatu u manuale man
, è Alpine ùn hà micca stallatu. Allora l'aghju stallatu cù un pager di terminal
apk add man man-pages less less-doc
In più di l'omu, aghju utilizatu u magnificu
L'aghju stallatu cù pip:
pip install tldr
squadra tldr
cunnetta à u web per piglià e pagine quandu scontra una dumanda per una nova pagina. Sè avete bisognu di sapè cumu utilizà un cumandamentu, pudete scrive qualcosa cum'è tldr curl
è uttene una descrizzione in inglese chjaru è boni esempi nantu à cumu utilizà u cumandamentu.
Di sicuru, tuttu stu travagliu di stallazione pò esse automatizatu utilizendu
applicàrisi nantu à u corsu
L'iSH Wiki hà una pagina "
Una altra pagina wiki spiega cumu
Pudete ancu installà Git (sì! apk add git
) è spinghja u vostru travagliu à un repositoriu remotu o spinghja à u servitore via SSH. E, sicuru, pudete scaricà è eseguisce qualsiasi quantità di grandi prughjetti open-source da GitHub.
Più infurmazione nantu à iSH pò esse truvata in questi ligami:
I diritti di publicità
Vdsina offerte
Source: www.habr.com