iSH egy aktív projekt egy Linux shell futtatására az iOS rendszeren. Alpine Linux környezetet kínál, a apk
csomagkezelő. Az alkalmazás usermode x86 emulációra támaszkodik.
Letöltheti az iSH-t az App Store-ból. Az új telepítések teljesen működőképesek apk
alapértelmezés szerint. Előfordulhat, hogy a meglévő alkalmazásfelhasználóknak manuálisan kell telepíteniük apk
a lépéseket követve a dokumentációban.
Elkezdeni
Kezdje az iSH telepítésével az App Store-ból. Indítsa el az alkalmazást, és egyenesen egy Alpine Linux terminálkörnyezetbe kerül.
Elkezdheti futtatni a megszokott Linux parancsokat! Használhatja az összes Unix által biztosított segédprogramot BusyBox, beleértve cat
, grep
, ls
, sed
és wget
.
Az iSH saját billentyűzet ikonsávot biztosít az érintőképernyős terminálhasználat egyszerűbbé tételéhez. A csík bal oldalán található négy gomb a Tab, a Control, a Escape és a nyíl billentyűk. Húzza a nyílgombot abba az irányba, ahová a kurzort navigálni szeretné.
A jobb oldali három gomb megnyitja a beállítások kezelőfelületét, beilleszti a szöveget az iOS vágólapjáról, és elrejti a billentyűzetet. Érintse meg bárhol a billentyűzet visszahozását, miután elrejtette.
iSH beállítások
A Beállítások menü lehetővé teszi néhány lehetőség testreszabását. A Megjelenés oldalon beállíthatja a betűtípust, és válthat a világos és sötét témák között. Az Alkalmazásikon oldalon több alkalmazásikon közül választhat. Ez a választás lehetővé teszi, hogy az iSH-t az iOS kezdőképernyőjén lévő többi alkalmazás vizuális stílusához igazítsa.
A külső billentyűzet segítségével szabályozhatja, hogy az iSH miként kezelje a Bluetooth-on vagy USB-adapteren keresztül csatlakoztatott fizikai billentyűzetet. Az iOS beépített újratervezési lehetőségei mellett az opció és a backtick gombokat át lehet alakítani az iSH meta és escape gombokkal. Külső billentyűzet használatakor elrejtheti az iSH ikoncsíkját, ha engedélyezi a „Rejtés külső billentyűzettel” beállítás engedélyezését.
Fájlrendszerek
Az iSH több fájlrendszer használatát támogatja. Menjen a beállítások menü „Fájlrendszerek” oldalára azok kezeléséhez. Először egyetlen „alapértelmezett” fájlrendszert fog látni, amely a beépített Alpine telepítést tartalmazza.
Nyomja meg a „Tallózás a fájlokban” gombot a fájlrendszer megnyitásához az iOS Fájlok alkalmazásában. Ez segít a fájlok gyors másolásában az iSH-ból az iOS-eszköz más helyeire.
Az „Exportálás” opcióval exportálhatja a teljes fájlrendszert. A fájlrendszereket az iSH-ba importálhatja a Filesystems főoldal „Import” gombjával.
A. Gyakorlati használati esete fájlrendszerek lehetővé teszi több önálló telepítés futtatását. Jelenleg csak az iSH eredetihez hasonló minimális alpesi képek fognak működni.
Kipróbálhatja az Alpine’s-t „Mini Root File System” – töltse le, importálja és nyomja meg a „Boot From This Filesystem” gombot, hogy újraindítsa az iSH-t a fájlrendszer segítségével. Váltson vissza az alapértelmezett fájlrendszerre a menübejegyzés kiválasztásával, majd a „Boot From This Files System” kiválasztásával.
Csomagok hozzáadása
Használhatja a rendszeres apk
parancsok a csomagok kezelésére az iSH környezetben.
# Update the package lists apk update # Upgrade existing installed packages apk upgrade # Install SSH apk add openssh # Remove SSH apk del openssh
Ne feledje, hogy az iSH alapértelmezés szerint a saját csomagtárait használja. Ez lehetővé teszi az alkalmazás számára az App Store Review átadását, biztosítva, hogy teljesen önálló legyen.
Ön átválthat a hivatalos Alpine Linux adattárak, ha úgy tetszik. Ez hozzáférést biztosít az Alpine szoftverek teljes listájához. Sok csomagnak újabb verziói lesznek a fő alpesi adattárakban, mint az iSH adattáraiban.
grep -v "file:///ish/apk/" /etc/apk/repositories | dd of=/etc/apk/repositories bs=4194304 echo https://dl-cdn.alpinelinux.org/alpine/v3.12/main >> /etc/apk/repositories echo https://dl-cdn.alpinelinux.org/alpine/v3.12/community >> /etc/apk/repositories
Futtassa a fenti parancsokat az iSH-k tartalmának kicserélésére /ish/apk
álfájlrendszer az Alpine Linux által kínált adattárakkal. Ezután futnia kell apk update
hogy megkapja az új csomaglistákat.
Az SSH használata
Az OpenSSH-t a következővel telepítheti apk add openssh
.
Az ügyfél azonnal dolgozni fog – próbálja meg ssh me@myserver
.
Az iOS-eszköz SSH-kiszolgálóként való használatához futtassa a következő parancsokat:
ssh-keygen -A passwd echo "PermitRootLogin yes" >> /etc/ssh/sshd_config sshd
Ez SSH hosztkulcsokat generál, és arra kéri, hogy állítson be egy jelszót a root
felhasználó. A sshd
az SSH-kiszolgáló indításához futtatható fájl van meghívva. Mostantól csatlakozhat eszközéhez, mint root
felhasználó.
Az iSH alapértelmezés szerint nem támogatja az automatikus indítási szolgáltatásokat. tudsz állítsa be ezt a harmadik sor szerkesztésével /etc/inittab
nak nek ::sysinit:/sbin/openrc
. Következő futás rc-update add sshd
hogy az SSH szerver automatikusan elinduljon, amikor elindít egy iSH munkamenetet.
Webkiszolgáló futtatása
Az SSH példában látható módon az iSH az eszköz hálózati veremét használja. Hostolhat egy webkiszolgálót, amelyet böngészhet a többi eszközén.
Fuss apk install apache2
hozzáadni Apache-t. Használat httpd
hogy elindítsa az Apache folyamatot. Ezután látogasson el iOS-eszközének IP-címére egy webböngészőben – látnia kell az Apache alapértelmezett „Működik!” szöveg.
Az iSH jelenleg nem támogatja a háttérben történő futtatást. Ez azt jelenti, hogy iPhone-on keresztül nem válthat Safari-ra és böngészhet a weboldalain. IPaden meg lehet nyitni a böngészőt osztott nézetben – az iSH továbbra is aktív marad a képernyő oldalán.
Az Apache a szokásos módon konfigurálható. A konfigurációs fájlt itt találja /etc/apache2/httpd.conf
. Az alapértelmezett dokumentumgyökér – ahonnan a weboldalakat kiszolgálják – az /var/www/localhost/htdocs
.
És most?
Most Alpine Linux környezetet futtat iOS eszközén. Adja hozzá azokat a csomagokat, amelyeknek van értelme a munkájához. Egyre több a lista működő szoftver amely tartalmazza a Unix kapcsokat és a teljes programozási nyelveket. A Node.js, a Python, a PHP, a Ruby és a Git mind működőképesek.
Nem minden csomag fog működni. A nem lefordított rendszerhívásokat kezdeményező szoftver összeomlik. Mivel az iSH emulátor, a teljesítmény időnként alacsonyabb szintű is lehet.
Futtathat VNC-kiszolgálót, ha grafikus alkalmazásokat szeretne használni. Részletes lépéseket a iSH wiki. A peformance korlátai grafikus terheléssel egyértelműek lesznek, de ez technikailag lehetséges. A folyamat magában foglalja a telepítést xorg-server
, fejetlen konfiguráció beállítása, majd a .xinitrc
fájl a használni kívánt ablakkezelő meghatározásához. A legjobb eredményeket olyan könnyű ablakkezelővel érheti el, mint pl i3
.
Következtetés
Úgy tűnik, hogy az iSH a fejlesztők és a rendszergazdák számára kötelező iOS-alkalmazássá válik. Vannak már olyan minőségi alkalmazások, mint a Pokolian amelyek alapvető Unix eszközöket nyújtanak, valamint az SSH kliensek is Termius amellyel csatlakozhat egy távoli Linux géphez. Az iSH az eddigi legteljesebb megoldás, amely Linux környezetet kínál, amely támogatja a népszerű szoftverek növekvő listáját.
Az iPhone vagy iPad eszköz iSH-jével ismerős x86 Linux szoftvert használhat, bárhol is legyen. Párosítson egy külső billentyűzettel, és van egy hordozható produktivitási eszköze, amely valóban helyettesítheti a laptopot.