Tiesitkö, että voit suorittaa Linux-komentorivin iOS-laitteessa? Saatat kysyä: "Miksi minun pitäisi käyttää tekstiviestisovelluksia iPhonessani?" Kohtuullinen kysymys. Mutta jos luet Opensource.com-sivustoa, tiedät todennäköisesti vastauksen: Linux-käyttäjät haluavat pystyä käyttämään sitä millä tahansa laitteella ja haluavat muokata sitä itse.
Mutta ennen kaikkea he kaipaavat monimutkaisten ongelmien ratkaisemista.
Minulla on seitsemän vuotta vanha iPad 2 Mini, joka on edelleen melko hyvä e-kirjojen lukemiseen ja muihin tehtäviin. Haluan kuitenkin käyttää sitä myös sovellusten komentoriville pääsyyn ohjelmien ja komentosarjojen kanssa, joita ilman en voi työskennellä. Tarvitsen ympäristön, johon olen tottunut, sekä tavallisen kehitysympäristöni. Ja näin onnistuin saavuttamaan tämän.
Yhdistäminen näppäimistöön
Ohjelmoinnin komentorivin käyttäminen puhelimen tai tabletin näyttönäppäimistön kautta on melko hankalaa. Suosittelen ulkoisen näppäimistön liittämistä joko Bluetoothin kautta tai kameraliitäntäsovittimen avulla langallisen näppäimistön liittämiseen (valitsin jälkimmäisen). Kun yhdistät Kinesis Advantage -jaetun näppäimistön iPhone 6:een, saat outon laitteen, joka muistuttaa
Kotelon asentaminen iOS:ään
Täysin varustetun Linux-järjestelmän käyttäminen iOS:ssä on kaksi vaihtoehtoa:
- Secure Shell (SSH) yhdistetty Linux-tietokoneeseen
- Virtuaalijärjestelmän käyttäminen Alpine Linuxilla iSH:n kanssa, joka on avoimen lähdekoodin, mutta joka on asennettava Applen omalla TestFlight-sovelluksella
Vaihtoehtona on kaksi avoimen lähdekoodin pääteemulaattorisovellusta, jotka tarjoavat mahdollisuuden työskennellä avoimen lähdekoodin työkalujen kanssa rajoitetussa ympäristössä. Tämä on riisutuin vaihtoehto - itse asiassa tällä tavalla käytät Linux-työkaluja, ei Linuxia. Näiden sovellusten kanssa työskentelyssä on vakavia ominaisuuksien rajoituksia, mutta saat osittaisen komentorivitoiminnon.
Ennen kuin siirryn monimutkaisiin ratkaisuihin, tarkastelen yksinkertaisinta menetelmää.
Vaihtoehto 1: Sandbox-kuori
Yksi helpoimmista tavoista on asentaa iOS-sovellus
Siinä on suunnilleen samat toiminnot
Vaihtoehto 2: SSH
Toinen vaihe sovelluksen lataamisesta on SSH-asiakkaan määrittäminen. Olemme jo pitkään voineet käyttää mitä tahansa monista iOS:n SSH-asiakassovelluksista yhteyden muodostamiseen Linux- tai BSD-palvelimeen. SSH:n käytön etuna on, että palvelin voi ajaa mitä tahansa jakelua millä tahansa ohjelmistolla. Työskentelet etänä ja työsi tulokset siirretään yksinkertaisesti iOS-laitteesi pääteemulaattoriin.
Vaihtoehto 3: Käynnistä Linux
SSH:n käyttäminen yhteyden muodostamiseen Linux-palvelimeen on loistava tapa käyttää komentoriviä, mutta se vaatii ulkoisen palvelimen ja verkkoyhteyden. Tämä ei ole suurin este, mutta sitä ei voida täysin sivuuttaa, joten saatat joutua käyttämään Linuxia ilman palvelinta.
Jos tämä on sinun tapauksesi, sinun on otettava se askel pidemmälle.
Käyttää Alpine Linuxia iSH:n kanssa
Tärkeä ominaisuus: kokeellinen sovellus. Koska iSH on tällä hetkellä testisovellus, älä odota jatkuvaa ja luotettavaa toimintaa. TestFlight-sovellukset ovat ajallisesti rajoitettuja. Nykyinen rakennelmani kestää vain 60 päivää. Tämä tarkoittaa, että 60 päivän jälkeen minut putoaa ja minun täytyy liittyä uudelleen seuraavalle iSH-testauskierrokselle. Lisäksi menetän kaikki tiedostoni, ellei vie niitä Filesilla iOS:ssä tai kopioi niitä Git-isäntään tai
iSH:n asennus
Aloita asennuksesta
Linkin avulla TestFlight asentaa iSH-sovelluksen laitteellesi. Kuten minkä tahansa muun sovelluksen kohdalla, kuvake ilmestyy näytölle.
Paketinhallinta
iSH käyttää x86-emulaattoria Alpine Linuxin kanssa. Alpine on pieni distro, jonka koko on alle 5 Mt. Tämä oli ensimmäinen kerta, kun työskentelin Alpinen kanssa, joten ajattelin, että minimalismi olisi ärsyttävää, mutta itse asiassa pidin siitä todella.
Alpine käyttää paketinhallintaa
Kuinka asentaa paketti:
apk add package
Paketin poistaminen:
apk del package
Kuinka etsiä muita komentoja ja tietoja:
apk --help
Paketinhallinnan päivitys:
apk update
apk upgrade
Tekstieditorin asennus
Alpinen oletustekstieditori on Vi, mutta pidän enemmän Vimistä, joten asensin sen:
apk add vim
Halutessasi voit asentaa Nanon tai Emacsin.
Kuoren vaihto
En tiedä sinusta, mutta tarvitsin
Kalan asennus:
apk add fish
Jos tarvitset Bashia sen automaattisen täydennyksen ja man-sivujen kanssa, asenna ne:
apk add bash bash-doc bash-completion
Alpinen minimalistinen ideologia tarkoittaa yleensä sitä, että jotkut ohjelmat, jotka on pakattu muihin jakeluihin, jaetaan useisiin pienempiin paketteihin. Se tarkoittaa myös, että voit mukauttaa ja pienentää järjestelmäsi kokoa juuri haluamallasi tavalla.
Lisätietoja Bashin asentamisesta on kohdassa
Oletuskuoren muuttaminen
Kalan asennuksen jälkeen voit siirtyä siihen tilapäisesti syöttämällä fish
ja menee kuoreen. Mutta haluan tehdä kalasta oletuskuoren ja komennon chsh
, jota käytin muissa jakeluissa, ei toiminut.
Ensin selvitetään, mihin kala on asennettu:
which fish
Tässä mitä sain:
/usr/bin/fish
Vaihda seuraavaksi kirjautumiskuori kalaksi. Voit käyttää mitä tahansa sinulle sopivaa editoria. Jos olet aloittelija, asenna Nano (komennolla apk add nano
), jotta voit muokata asetustiedostoja ja tallentaa ne näppäinyhdistelmällä CTRL+X, vahvista ja poistu.
Mutta käytin Vimia:
vim /etc/passwd
Ensimmäinen rivini oli tällainen:
root:x:0:0:root:/root:/bin/ash
Jos haluat tehdä kalasta oletuskuoren, muuta tämä rivi seuraavaksi:
root:x:0:0:root:/root:/usr/bin/fish
Tallenna sitten tiedosto ja poistu.
Olen varma, että on olemassa hyvä tapa muuttaa polkua kuoreen, jotta sitä voidaan käyttää heti. Mutta en tiedä sitä, joten suosittelen palaamista sovellusselaimeen, pakottaa poistumaan kuoresta ja varmuuden vuoksi sammuttaa iPad tai iPhone ja käynnistää se uudelleen. Avaa iSH uudelleen ja nyt, viestin "Tervetuloa Alpineen!" ja tietoja käynnistämisestä apk:sta, näet tavallisen kalakirjautumisen tervetuloviestin: Tervetuloa kalaan, ystävälliseen interaktiiviseen kuoreen. Hurraa!
Pythonin ja pipin asetukset
Päätin lisätä
apk add python3
Vaikka Python 2.x on vanhentunut, voit asentaa sen:
apk add python
Asennetaan Python-pakettienhallinta nimeltä pip and
python3 -m ensurepip --default-pip
Paketinhallinnan asentaminen ja määrittäminen vie jonkin aikaa, joten odota vain.
Tämän jälkeen voit ladata työkalun tiedostojen siirtämiseksi verkon kautta
apk add curl
Oppaiden lukeminen
Fish käyttää sisäänrakennettua automaattista täydennystä, joka perustuu man-sivuihin. Kuten muutkin komentorivikäyttäjät, käytän käsikirjaa man
, mutta sitä ei ole asennettu Alpineen. Joten asensin sen päätehakulaitteella
apk add man man-pages less less-doc
Miesten lisäksi käytän upeaa
Asensin sen pip:llä:
pip install tldr
Joukkue tldr
muodostaa yhteyden Internetiin hakeakseen sivuja, kun se kohtaa uuden sivun pyynnön. Jos haluat osata käyttää komentoa, voit kirjoittaa jotain vastaavaa tldr curl
ja saat selkein englanninkielisen kuvauksen ja hyviä esimerkkejä komennon käytöstä.
Tietenkin kaikki tämä asennustyö voidaan automatisoida käyttämällä
lisätiedot
iSH Wikissä on sivu "
Toinen wikisivu selittää kuinka
Voit myös asentaa Gitin (kyllä! apk add git
) ja työnnä työsi etävarastoon tai siirrä se palvelimelle SSH:n kautta. Ja tietysti voit ladata ja suorittaa mitä tahansa hienoja avoimen lähdekoodin projekteja GitHubista.
Lisätietoja iSH:sta löytyy näistä linkeistä:
Mainonnan oikeuksista
Vdsina tarjoukset
Lähde: will.com