iOS'те Linux буйрук сабын ишке киргизүү

iOS'те Linux буйрук сабын ишке киргизүү

Сиз iOS түзмөгүндө Linux буйрук сабын иштете аларыңызды билесизби? Сиз: "Эмне үчүн мен iPhone'умда SMS жазышчу колдонмолорду колдонушум керек?" деп сурап жатсаңыз болот. Адилет суроо. Бирок Opensource.com сайтын окусаңыз, анда жоопту билсеңиз керек: Linux колдонуучулары аны каалаган түзмөктө колдонууну каалашат жана аны өздөрү ыңгайлаштырууну каалашат.

Бирок баарынан да алар татаал маселелерди чечүүнү эңсейт.

Менде жети жаштагы iPad 2 Mini бар, ал дагы эле электрондук китептерди жана башка тапшырмаларды окууга абдан жакшы. Бирок, мен аны өзүмдүн программаларым жана скрипттерим менен колдонмолордун буйрук сабына жетүү үчүн колдонгум келет, ансыз мен иштей албайм. Мага мен көнүп калган чөйрө керек, ошондой эле стандарттуу иштеп чыгуу чөйрөм керек. Мына, мен буга кантип жетиштим.

Баскычтопко туташуу

Телефондун же планшеттин экрандагы клавиатурасы аркылуу программалоо үчүн буйрук сабы менен иштөө өтө ыңгайсыз. Мен тышкы клавиатураны Bluetooth аркылуу туташтырууну же зымдуу клавиатураны туташтыруу үчүн камера туташуу адаптерин колдонууну сунуштайм (мен акыркысын тандадым). Kinesis Advantage сплит клавиатурасын iPhone 6га туташтырганыңызда, сиз окшош таң калыштуу аспапты аласыз. корпоративдик кибердек классикадан роль ойноо Shadowrun.

iOS'ко кабыкты орнотуу

iOS'то толук функционалдык Linux тутумун иштетүү үчүн эки вариант бар:

  • Linux компьютерине туташтырылган коопсуз кабык (SSH).
  • iSH менен Alpine Linux аркылуу виртуалдык системаны иштетүү, бул ачык булак, бирок Apple компаниясынын менчик TestFlight тиркемеси аркылуу орнотулушу керек

Альтернатива катары, чектелген чөйрөдө ачык булак куралдары менен иштөө мүмкүнчүлүгүн камсыз кылган эки ачык булак терминалдык эмулятор тиркемелери бар. Бул эң чечкиндүү вариант - чындыгында, сиз Linux эмес, Linux куралдарын ушинтип иштетесиз. Бул тиркемелер менен иштөөдө өзгөчөлүктөргө катуу чектөөлөр бар, бирок сиз жарым-жартылай буйрук сабынын функцияларына ээ болосуз.

Татаал чечимдерге өтүүдөн мурун мен эң жөнөкөй ыкманы карап чыгам.

1-вариант: Sandbox кабыгы

Эң оңой жолдордун бири - iOS колдонмосун орнотуу LibTerm. бул ачык булак нөл долларга 80ден ашык буйруктарды колдогон кумкоргон командалык кабык. Ал Python 2.7, Python 3.7, Lua, C, Clang жана башка көптөгөн нерселер менен коштолот.

Болжол менен бирдей функцияга ээ а-Шелл, иштеп чыгуучулар тарабынан "экран киргизүү платформасы үчүн сыноо колдонуучу интерфейси" катары сүрөттөлгөн. a-Shell булактары жайгаштырылган ачык булак, ал активдүү иштеп чыгууда, файл тутумуна кирүү мүмкүнчүлүгүн камсыз кылат жана Lua, Python, Tex, Vim, JavaScript, C жана C++, ошондой эле Clang жана Clang++ менен келет. Ал тургай, Python пакеттерин орнотууга мүмкүнчүлүк берет.

2-вариант: SSH

Колдонмону жүктөп алуунун дагы бир кадамы - SSH кардарын орнотуу. Көптөн бери биз iOS үчүн SSH кардар колдонмолорунун каалаганын колдонуп, Linux же BSD иштеткен серверге туташып жатабыз. SSH колдонуунун артыкчылыгы сервер каалаган программалык камсыздоо менен каалаган бөлүштүрүүнү иштете алат. Сиз алыстан иштейсиз жана ишиңиздин натыйжасы жөн гана iOS түзмөгүңүздөгү терминалдык эмуляторго которулат.

Blink shell таанымал акы төлөнүүчү SSH колдонмо болуп саналат ачык булак. Эгер сиз аппараттын кичинекей экранын этибарга албасаңыз, анда бул программаны колдонуу серверге башка буйрук сабы аркылуу туташканга окшош. Blink Terminal сонун көрүнөт, көптөгөн даяр темаларга жана өзүңүздүн темаңызды түзүү мүмкүнчүлүгүнө ээ, анын ичинде жаңы шрифттерди ыңгайлаштыруу жана кошуу мүмкүнчүлүгү бар.

3-вариант: Linuxту ишке киргизиңиз

Linux серверине туташуу үчүн SSH колдонуу буйрук сабына жетүүнүн эң сонун жолу, бирок ал тышкы серверди жана тармак туташуусун талап кылат. Бул эң чоң тоскоолдук эмес, бирок аны толугу менен этибарга албай коюуга болбойт, андыктан Linux'ту серверсиз иштетүү керек болушу мүмкүн.

Эгер бул сиздин абалыңыз болсо, анда сиз аны бир кадам алдыга ташташыңыз керек болот. сыноо учуу иштелип чыккан тиркемелерди Apple App Store дүкөнүндө жарыяланганга чейин орнотуу үчүн менчик кызматы. Колдонмо дүкөнүнөн TestFlight колдонмосун орнотуп, андан кийин сыноо колдонмолорун колдоно аласыз. TestFlight'тагы колдонмолор чектелген сандагы бета сыноочуларга (адатта 10 000ге чейин) алар менен чектелген убакытка иштөөгө мүмкүнчүлүк берет. Сыноо тиркемесин жүктөп алуу үчүн, сиз түзмөгүңүздөн адатта сыноо тиркемесин иштеп чыгуучунун веб-сайтында жайгашкан шилтемеге өтүшүңүз керек.

Alpine Linux'ту iSH менен иштетүү

ISH даяр дистрибуциялуу виртуалдык машинаны ишке киргизген ачык булактуу TestFlight тиркемеси Alpine Linux (бир аз аракет менен, сиз башка бөлүштүрүүнү иштете аласыз).

Маанилүү өзгөчөлүк: эксперименталдык колдонуу. iSH учурда сыноо колдонмо болгондуктан, туруктуу жана ишенимдүү иштешин күтпөңүз. TestFlight колдонмолору убакыт чектелген. Менин азыркы куруум 60 күнгө гана созулат. Бул 60 күндөн кийин мен четтетилип, iSH тестирлөөнүн кийинки айлампасына кайра кошулушум керек дегенди билдирет. Андан тышкары, мен аларды iOS'тогу Files аркылуу экспорттомоюнум же Git хостуна көчүрмөйүнчө, бардык файлдарымды жоготуп алам. SSH аркылуу. Башкача айтканда: Бул иштей берет деп күтпөңүз! Сиз үчүн маанилүү нерсени системага салбаңыз! Камдык көчүрмөнү өзүнчө жерге көчүрүү!

iSH орнотуу

Орнотуу менен баштаңыз сыноо учуу App Store дүкөнүнөн. Андан кийин iSH орнотуп, орнотуу шилтемесин алды колдонмо веб-сайтынан. AltStore аркылуу башка орнотуу ыкмасы бар, бирок мен аны сынай элекмин. Же болбосо, сизде акы төлөнүүчү иштеп чыгуучу аккаунтуңуз болсо, iSH репозиторийсин GitHub'дан жүктөп алып, аны өзүңүз орното аласыз.

Шилтемени колдонуп, TestFlight түзмөгүңүзгө iSH тиркемесин орнотот. Башка тиркемелер сыяктуу эле, экранда сөлөкөт пайда болот.

Пакет башкаруу

iSH Alpine Linux менен x86 эмуляторун иштетет. Alpine - бул кичинекей дистрибуция, анын көлөмү 5 МБдан азыраак. Бул менин Alpine менен биринчи жолу иштешим, ошондуктан мен минимализм тажатма болот деп ойлогом, бирок чындыгында бул мага абдан жакты.

iOS'те Linux буйрук сабын ишке киргизүү
Alpine пакет менеджерин колдонот APK, бул apt же pacmanдан да оңой.

Пакетти кантип орнотуу керек:

apk add package

Пакетти кантип алып салуу керек:

apk del package

Башка буйруктарды жана маалыматты кантип тапса болот:

apk --help

Пакет менеджеринин жаңыртуусу:

apk update
apk upgrade

Текст редакторун орнотуу

Alpine'дин демейки текст редактору - Vi, бирок мен Vimди жактырам, ошондуктан мен аны орноттум:

apk add vim

Кааласаңыз, Nano же Emacs орното аласыз.

Капка өзгөртүү

Мен сени билбейм, бирок мага керек болчу балыктын кабыгы. Башкалар артык көрүшөт Баш же Зш. Бирок, Alpine күл колдонот! Ash өзү баштапкы күлдүн бир айры болуп саналат Dash кабыгынын бир айры болуп саналат, же Almquist кабыгы. Анын артыкчылыгы - ылдамдык. Мен ылдамдыкты орнотулган автотолтурууну, түстөрдү, Vim баскычтарын башкарууну жана балыктын кабыгынан жакшы көргөн жана билген синтаксисти баса белгилөө үчүн алмаштырууну чечтим.

Балык орнотуу:

apk add fish

Эгер сизге автоматтык түрдө толуктоо жана адам барактары бар Bash керек болсо, анда аларды орнотуңуз:

apk add bash bash-doc bash-completion

Alpine'тин минималисттик идеологиясы, адатта, башка дистрибуцияларда топтолгон кээ бир программалар бир нече кичине пакеттерге бөлүнөрүн билдирет. Бул ошондой эле сиз системаңыздын көлөмүн сиз каалагандай ыңгайлаштыра жана азайта аласыз дегенди билдирет.

Bash орнотуу жөнүндө көбүрөөк маалымат алуу үчүн, караңыз бул окуу куралы.

Демейки кабыкты өзгөртүү

Балыктарды орноткондон кийин, кирүү менен ага убактылуу өтсөңүз болот fish жана кабыгына кирет. Бирок мен балыкты демейки кабык жана буйрук кылгым келет chsh, мен башка бөлүштүрүүдө колдонгон, иштеген жок.

Биринчиден, биз балык орнотулган жерди табабыз:

which fish

Мына менде эмне бар:

/usr/bin/fish

Андан кийин, логин кабыгын балыкка өзгөртүү. Сиз өзүңүзгө ыңгайлуу каалаган редакторду колдоно аласыз. Эгер сиз башталгыч болсоңуз, анда Nano орнотуңуз (буйрук менен apk add nano) конфигурация файлдарын түзөтүп, аларды CTRL+X аркылуу сактап, ырастап, чыгыңыз.

Бирок мен Vim колдондум:

vim /etc/passwd

Менин биринчи сабым мындай болгон:

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

Балыкты демейки кабык кылуу үчүн бул сапты төмөнкүгө өзгөртүңүз:

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

Андан кийин файлды сактап, чыкыңыз.

Мен аны дароо колдонуу үчүн кабыкчага жолду өзгөртүүнүн жакшы жолу бар экенине ишенем. Бирок мен аны билбейм, андыктан колдонмо браузерине кайтып келүүнү, кабыктан чыгууну жана коопсуз тарапта болуу үчүн iPad же iPhone'уңузду өчүрүп, өчүрүп күйгүзүүнү сунуштайм. “Alpine кош келиңиз!” деген билдирүүдөн тышкары iSHти кайра жана азыр ачыңыз. жана apkтан ишке киргизүү жөнүндө маалымат, сиз стандарттуу балык кирүү саламдашуу билдирүүсүн көрөсүз: Балыкка, достук интерактивдүү кабыкка кош келдиңиз. Жашасын!

iOS'те Linux буйрук сабын ишке киргизүү

Python жана пипти орнотуу

Мен кошууну чечтим Python (3.x версиясы), код жазуу үчүн гана эмес, мен бир нече Python программаларын колдонгонум үчүн. Аны орнотобуз:

apk add python3

Python 2.x эскирген болсо да, сиз аны орното аласыз:

apk add python

Келгиле, pip жана деп аталган Python пакет менеджерин орнотобуз орнотуу:

python3 -m ensurepip --default-pip

Пакет менеджерин орнотуу жана конфигурациялоо бир аз убакытты талап кылат, андыктан күтө туруңуз.

Андан кийин сиз файлдарды тармак аркылуу өткөрүү үчүн куралды жүктөп алсаңыз болот бүгө:

apk add curl

Колдонмолорду окуу

Fish адам барактарынын негизинде орнотулган автотолтурууну колдонот. Башка командалык сап колдонуучулары сыяктуу, мен колдонмону колдоном man, бирок ал Альп тоолорунда орнотулган эмес. Ошентип, мен аны терминалдык пейджер менен орноттум азыраак:

apk add man man-pages less less-doc

Адамдан тышкары мен керемет колдоном tldr баракчалары долбоору, ал жөнөкөйлөштүрүлгөн жана коомчулук тарабынан башкарылган адам баракчаларын камсыз кылат.

Мен аны pip аркылуу орнотком:

pip install tldr

команда tldr жаңы баракка суроо-талапка туш болгондо, баракчаларды алуу үчүн интернетке туташат. Эгер сиз буйрукту кантип колдонууну билишиңиз керек болсо, сиз сыяктуу бир нерсе жаза аласыз tldr curl жана жөнөкөй англис тилинде сүрөттөмөсүн жана буйрукту кантип колдонуунун жакшы мисалдарын алыңыз.

Албетте, бардык бул орнотуу иштери колдонуу менен автоматташтырылышы мүмкүн чекит файлдары же орнотуу скрипти, бирок чындыгында бул Альпинин идеологиясына дал келбейт - минималдуу орнотууну так сиздин муктаждыктарыңызга ылайыкташтыруу. Анын үстүнө ушунча убакыт өттү, туурабы?

кошумча маалымат

iSH Wiki баракчасы бар "эмне иштейт"Учурда кайсы пакеттер иштеп жатканы боюнча отчеттор менен. Баса, окшош npm азыр иштебейт.

Башка вики баракчасы кантип түшүндүрөт iSH файлдарына кирүү iOS Files колдонмосунан. Бул файлдарды жылдыруу жана көчүрүү жолдорунун бири.

Сиз ошондой эле Git орното аласыз (ооба! apk add git ) жана жумушуңузду алыскы репозиторийге түртүңүз же SSH аркылуу серверге өткөрүңүз. Жана, албетте, сиз GitHub'дан каалаган сандагы ачык булактуу долбоорлорду жүктөп алып, иштете аласыз.

iSH жөнүндө көбүрөөк маалыматты бул шилтемелерден тапса болот:

жарнама катары

Vdsina сунуштар Linux боюнча виртуалдык серверлер же Windows. Биз эксклюзив колдонобуз фирмалык жабдуулар, өзүбүздүн дизайндагы эң мыкты сервердик башкаруу панели жана Россиядагы жана ЕБдеги эң мыкты маалымат борборлорунун бири. Заказ берүүгө шашылыңыз!

iOS'те Linux буйрук сабын ишке киргизүү

Source: www.habr.com

Комментарий кошуу