Uruchamiam wiersz poleceń Linux na iOS

Uruchamiam wiersz poleceń Linux na iOS

Czy wiesz, że możesz uruchomić wiersz poleceń? Linux na urządzeniu z systemem iOS? Możesz się zastanawiać: „Dlaczego powinienem korzystać z aplikacji do SMS-ów na urządzeniu z systemem iOS?” iPhone„To uczciwe pytanie. Ale jeśli czytasz Opensource.com, prawdopodobnie znasz odpowiedź: użytkownicy Linux chcą mieć możliwość pracy z nim na dowolnym urządzeniu i chcą używać własnych ustawień.

Ale przede wszystkim pragną rozwiązywania złożonych problemów.

Mam siedmioletniego iPada 2 Mini, który nadal całkiem nieźle radzi sobie z czytaniem e-booków i innymi zadaniami. Jednak chcę go również używać do uzyskiwania dostępu do wiersza poleceń aplikacji z moim zestawem programów i skryptów, bez których nie mogę pracować. Potrzebuję środowiska, do którego jestem przyzwyczajony, a także mojego standardowego środowiska programistycznego. A oto jak udało mi się to osiągnąć.

Podłączanie do klawiatury

Korzystanie z wiersza poleceń do programowania za pomocą klawiatury ekranowej telefonu lub tabletu jest dość niewygodne. Polecam podłączenie zewnętrznej klawiatury, albo przez Bluetooth, albo za pomocą adaptera do aparatu, aby podłączyć klawiaturę przewodową (wybrałem tę drugą opcję). Podczas podłączania klawiatury dzielonej Kinesis Advantage do iPhone 6 otrzymasz dziwne urządzenie, które przypomina korporacyjny cyberdeck od klasyki odgrywanie ról Shadowrun.

Instalowanie powłoki na iOS

Aby uruchomić w pełni funkcjonalny system Linux W systemie iOS dostępne są dwie opcje:

  • Bezpieczna powłoka (SSH) łącząca się z komputerem za pomocą Linux
  • Uruchamianie systemu wirtualnego z Alpine Linux z iSH, który jest oprogramowaniem typu open source, ale musi zostać zainstalowany przy użyciu zastrzeżonej aplikacji TestFlight firmy Apple

Alternatywnie dostępne są dwie aplikacje emulatora terminala o otwartym kodzie źródłowym, które umożliwiają pracę z narzędziami o otwartym kodzie źródłowym w ograniczonym środowisku. To najbardziej uproszczona opcja – nie uruchamiasz Linuxi narzędzia LinuxKorzystanie z tych aplikacji wiąże się z poważnymi ograniczeniami, ale zapewnia częściową funkcjonalność wiersza poleceń.

Zanim przejdę do skomplikowanych rozwiązań, przyjrzę się najprostszej metodzie.

Opcja 1: Powłoka piaskownicy

Jednym z najprostszych sposobów jest zainstalowanie aplikacji na iOS LibTerm. To otwarte źródło Powłoka poleceń w trybie piaskownicy z obsługą ponad 80 poleceń za zero dolarów. Jest dostarczany w pakiecie z Pythonem 2.7, Pythonem 3.7, Lua, C, Clang i wieloma innymi.

Ma mniej więcej taką samą funkcjonalność jak diabli, opisany przez twórców jako „testowy interfejs użytkownika dla platformy wprowadzania ekranowego”. a-Źródła Shell są publikowane open source, jest w fazie aktywnego rozwoju, zapewnia dostęp do systemu plików i jest wyposażony w Lua, Python, Tex, Vim, JavaScript, C i C++, a także Clang i Clang++. Pozwala nawet na instalację pakietów Pythona metodą pip.

Opcja 2: SSH

Kolejnym krokiem po pobraniu aplikacji jest skonfigurowanie klienta SSH. Od dawna możemy korzystać z dowolnej z wielu aplikacji klienckich SSH na iOS, aby połączyć się z serwerem działającym na Linux lub BSD. Zaletą korzystania z SSH jest to, że serwer może obsługiwać dowolną dystrybucję z dowolnym oprogramowaniem. Pracujesz zdalnie, a Twoja praca jest po prostu przenoszona do emulatora terminala na Twoim urządzeniu z systemem iOS.

Migająca skorupa to popularna płatna aplikacja SSH w open source. Jeśli zignorujesz mały ekran urządzenia, korzystanie z tego oprogramowania jest podobne do łączenia się z serwerem za pomocą dowolnej innej linii poleceń. Blink Terminal wygląda świetnie, ma wiele gotowych motywów i możliwość tworzenia własnych, w tym możliwość dostosowywania i dodawania nowych czcionek.

Opcja 3: Uruchomienie Linux

Łączenie się z serwerem za pomocą protokołu SSH Linux — To świetny sposób na dostęp do wiersza poleceń, ale wymaga zewnętrznego serwera i połączenia sieciowego. Nie jest to duża przeszkoda, ale nie można jej całkowicie zignorować, więc może być konieczna praca z… Linux bez serwera.

Jeśli tak jest w Twoim przypadku, musisz pójść o krok dalej. Lot testowy to autorska usługa umożliwiająca instalację opracowanych aplikacji jeszcze przed ich publikacją w Apple App Store. Możesz zainstalować aplikację TestFlight ze sklepu App Store, a następnie używać aplikacji testowych. Aplikacje w TestFlight pozwalają ograniczonej liczbie beta testerów (zwykle do 10 000) pracować z nimi przez ograniczony czas. Aby pobrać aplikację testową, należy przejść ze swojego urządzenia do linku, który zwykle znajduje się na stronie internetowej twórcy aplikacji testowej.

Wprowadzenie na rynek Alpine Linux z iSH

ISH to aplikacja TestFlight o otwartym kodzie źródłowym, która uruchamia maszynę wirtualną z gotową dystrybucją Alpejski Linux (przy odrobinie wysiłku możesz uruchomić inne dystrybucje).

Ważna funkcja: eksperymentalne zastosowanie. Ponieważ iSH jest obecnie aplikacją testową, nie należy oczekiwać stałego i niezawodnego działania. Aplikacje TestFlight są ograniczone czasowo. Moja obecna wersja będzie trwać tylko 60 dni. Oznacza to, że po 60 dniach zostanę wyeliminowany i będę musiał ponownie przystąpić do kolejnej rundy testów iSH. Co więcej, stracę wszystkie moje pliki, chyba że wyeksportuję je za pomocą Plików na iOS lub skopiuję je na host Git lub przez SSH. Innymi słowy: Nie oczekuj, że to będzie nadal działać! Nie umieszczaj w systemie niczego ważnego dla Ciebie! Utwórz kopię zapasową w osobnej lokalizacji!

Instalowanie iSH

Zacznij od instalacji Lot testowy z App Store. Następnie zainstaluj iSH, otrzymałem link instalacyjny ze strony internetowej aplikacji. Istnieje inna metoda instalacji przy użyciu AltStore, ale jej nie próbowałem. Lub, jeśli masz płatne konto programisty, możesz pobrać repozytorium iSH z GitHub i zainstalować je samodzielnie.

Korzystając z linku, TestFlight zainstaluje aplikację iSH na Twoim urządzeniu. Podobnie jak w przypadku każdej innej aplikacji, na ekranie pojawi się ikona.

Zarządzanie pakietami

iSH uruchamia emulator x86 z Alpine LinuxAlpine to niewielka dystrybucja, o rozmiarze mniejszym niż 5 MB. Korzystałem z niej po raz pierwszy, więc myślałem, że jej minimalizm będzie irytujący, ale tak naprawdę bardzo mi się spodobała.

Uruchamiam wiersz poleceń Linux na iOS
Alpine używa menedżera pakietów apk, co jest łatwiejsze niż nawet apt lub pacman.

Jak zainstalować pakiet:

apk add package

Jak usunąć paczkę:

apk del package

Jak znaleźć inne polecenia i informacje:

apk --help

Aktualizacja menedżera pakietów:

apk update
apk upgrade

Instalowanie edytora tekstu

Domyślnym edytorem tekstu Alpine jest Vi, ale ja wolę Vima, więc go zainstalowałem:

apk add vim

W razie potrzeby możesz zainstalować Nano lub Emacs.

Zmiana powłoki

Nie wiem jak ty, ale ja potrzebowałem skorupa rybna. Inni wolą Bash lub Zsh. Jednak Alpine używa popiołu! Popiół jest rozwidleniem powłoki Dash, która sama w sobie jest rozwidleniem oryginalnego popiołu, lub Skorupa Almquista. Jej priorytetem jest szybkość. Zdecydowałem się zamienić prędkość na wbudowane autouzupełnianie, kolory, kontrolki klawiszy Vima i podświetlanie składni, które uwielbiam i znam z muszli ryby.

Instalacja rybna:

apk add fish

Jeśli potrzebujesz Bash z jego autouzupełnianiem i stronami podręcznika, zainstaluj je:

apk add bash bash-doc bash-completion

Minimalistyczna ideologia Alpine zwykle oznacza, że ​​niektóre programy spakowane w innych dystrybucjach zostaną podzielone na kilka mniejszych pakietów. Oznacza to również, że możesz dostosować i zmniejszyć rozmiar swojego systemu dokładnie tak, jak chcesz.

Aby uzyskać więcej informacji na temat instalowania Basha, zobacz ten poradnik.

Zmiana domyślnej powłoki

Po zainstalowaniu ryby możesz tymczasowo się do niej przełączyć wchodząc fish i wchodzę do skorupy. Ale chcę, aby ryba była domyślną powłoką i poleceniem chsh, którego użyłem w innych dystrybucjach, nie działało.

Najpierw dowiadujemy się, gdzie zainstalowana jest ryba:

which fish

Oto co dostałem:

/usr/bin/fish

Następnie zmień powłokę logowania na fish. Możesz użyć dowolnego dogodnego dla Ciebie edytora. Jeśli jesteś początkujący, zainstaluj Nano (za pomocą polecenia apk add nano), abyś mógł edytować pliki konfiguracyjne i zapisać je za pomocą CTRL+X, zatwierdź i wyjdź.

Ale użyłem Vima:

vim /etc/passwd

Moja pierwsza linijka wyglądała tak:

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

Aby ustawić rybę jako domyślną muszlę, zmień tę linię na następującą:

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

Następnie zapisz plik i wyjdź.

Jestem pewien, że istnieje dobry sposób na zmianę ścieżki powłoki, aby można było z niej od razu korzystać. Ale nie znam go, więc polecam powrót do przeglądarki aplikacji, wymuszenie zamknięcia powłoki i, dla bezpieczeństwa, wyłączenie i ponowne uruchomienie iPada lub… iPhoneOtwórz ponownie iSH. Teraz, oprócz komunikatu „Witamy w Alpine!” i informacji o uruchamianiu z poziomu APK, zobaczysz standardowy komunikat powitalny dotyczący logowania się do Fish: Witamy w Fish, przyjaznej interaktywnej muszli. Brawo!

Uruchamiam wiersz poleceń Linux na iOS

Konfigurowanie Pythona i pip

Zdecydowałem się dodać Python (wersja 3.x), nie tylko do pisania kodu, ale także dlatego, że używam kilku programów w Pythonie. Zainstalujmy to:

apk add python3

Chociaż Python 2.x jest przestarzały, możesz go zainstalować:

apk add python

Zainstalujmy menedżera pakietów Pythona o nazwie pip i narzędzia konfiguracyjne:

python3 -m ensurepip --default-pip

Instalacja i konfiguracja menedżera pakietów zajmie trochę czasu, więc po prostu poczekaj.

Następnie możesz pobrać narzędzie do przesyłania plików przez sieć curl:

apk add curl

Czytanie podręczników

Fish korzysta z wbudowanego autouzupełniania opartego na stronach podręcznika. Podobnie jak inni użytkownicy wiersza poleceń, korzystam z instrukcji man, ale nie jest zainstalowany w Alpine. Zainstalowałem go więc za pomocą pagera terminalowego mniej:

apk add man man-pages less less-doc

Oprócz człowieka używam wspaniałego projekt stron tldr, który zapewnia uproszczone i tworzone przez społeczność strony podręcznika.

Zainstalowałem go za pomocą pip:

pip install tldr

Zespół tldr łączy się z Internetem, aby pobrać strony, gdy napotka żądanie nowej strony. Jeśli chcesz wiedzieć, jak używać polecenia, możesz napisać coś takiego tldr curl i uzyskaj opis w prostym języku angielskim oraz dobre przykłady użycia polecenia.

Oczywiście wszystkie te prace instalacyjne można zautomatyzować za pomocą pliki z kropkami lub skrypt instalacyjny, ale tak naprawdę nie odpowiada to ideologii Alpine – dostosowywaniu minimalnej instalacji ściśle do Twoich potrzeb. Poza tym trwało to tak długo, prawda?

informacje dodatkowe

Wiki iSH ma stronę „co działa" z raportami, które pakiety są aktualnie uruchomione. Swoją drogą wygląda to tak npm nie działa teraz.

Inna strona wiki wyjaśnia, jak to zrobić uzyskaj dostęp do plików iSH z aplikacji Pliki na iOS. Jest to jeden ze sposobów przenoszenia i kopiowania plików.

Możesz także zainstalować Git (tak! apk add git ) i wypchnij swoją pracę do zdalnego repozytorium lub prześlij ją na serwer przez SSH. I oczywiście możesz pobrać i uruchomić dowolną liczbę świetnych projektów open source z GitHub.

Więcej informacji o iSH można znaleźć pod tymi linkami:

O prawach reklamy

Wdsina oferuje serwery wirtualne na Linux lub Windows. Używamy wyłącznie markowy sprzęt, najlepszy w swoim rodzaju panel kontrolny do serwerów własnej konstrukcji i jedno z najlepszych centrów danych w Rosji i UE. Pośpiesz się z zamówieniem!

Uruchamiam wiersz poleceń Linux na iOS

Źródło: www.habr.com

Kup niezawodny hosting dla stron z ochroną DDoS, serwery VPS VDS 🔥 Kup niezawodny hosting stron internetowych z ochroną DDoS, serwery VPS VDS | ProHoster