
Буйрук сабын иштете аларыңызды билчү белеңиз? Linux iOS түзмөгүндөбү? Сиз: "Эмне үчүн мен SMS билдирүүлөр колдонмолорун колдонушум керек" деп сурап жаткандырсыз iPhone"Бул туура суроо. Бирок, эгер сиз Opensource.com сайтынан окусаңыз, анда жоопту билесиз: колдонуучулар Linux аны менен каалаган түзмөктө иштей алгысы келет жана өздөрүнүн жөндөөлөрүн колдонгум келет.
Бирок баарынан да алар татаал маселелерди чечүүнү эңсейт.
Менде жети жаштагы iPad 2 Mini бар, ал дагы эле электрондук китептерди жана башка тапшырмаларды окууга абдан жакшы. Бирок, мен аны өзүмдүн программаларым жана скрипттерим менен колдонмолордун буйрук сабына жетүү үчүн колдонгум келет, ансыз мен иштей албайм. Мага мен көнүп калган чөйрө керек, ошондой эле стандарттуу иштеп чыгуу чөйрөм керек. Мына, мен буга кантип жетиштим.
Баскычтопко туташуу
Телефондун же планшеттин экрандагы клавиатурасы аркылуу программалоо үчүн буйрук сабын колдонуу бир топ ыңгайсыз. Мен тышкы клавиатураны Bluetooth аркылуу же зымдуу клавиатураны туташтыруу үчүн камера адаптерин колдонууну сунуштайм (мен экинчисин тандадым). Kinesis Advantage бөлүнгөн клавиатурасын туташтырганда iPhone 6 сиз окшош кызыктай түзмөккө ээ болосуз классикадан Shadowrun.
iOS'ко кабыкты орнотуу
Толук функционалдуу системаны ишке киргизүү үчүн Linux iOS'то эки вариант бар:
- Коопсуз кабык (SSH) менен компьютерге туташууда Linux
- Alpine менен виртуалдык системаны иштетүү Linux iSH менен, ал ачык булактуу, бирок Apple компаниясынын менчик TestFlight колдонмосу аркылуу орнотулушу керек
Же болбосо, чектелген чөйрөдө ачык булактуу куралдар менен иштөөгө мүмкүндүк берген эки ачык булактуу терминал эмулятору тиркемеси бар. Бул эң жөнөкөй вариант — сиз чындыгында иштетпейсиз Linux, жана шаймандар LinuxБул тиркемелер менен иштөөдө олуттуу чектөөлөр бар, бирок сиз жарым-жартылай буйрук сабынын функцияларын аласыз.
Татаал чечимдерге өтүүдөн мурун мен эң жөнөкөй ыкманы карап чыгам.
1-вариант: Sandbox кабыгы
Эң оңой жолдордун бири - iOS колдонмосун орнотуу . бул нөл долларга 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 түзмөгүңүздөгү терминалдык эмуляторго өткөрүлүп берилет.
таанымал акы төлөнүүчү SSH колдонмо болуп саналат . Эгер сиз аппараттын кичинекей экранын этибарга албасаңыз, анда бул программаны колдонуу серверге башка буйрук сабы аркылуу туташканга окшош. Blink Terminal сонун көрүнөт, көптөгөн даяр темаларга жана өзүңүздүн темаңызды түзүү мүмкүнчүлүгүнө ээ, анын ичинде жаңы шрифттерди ыңгайлаштыруу жана кошуу мүмкүнчүлүгү бар.
3-вариант: Ишке киргизүү Linux
Серверге туташуу үчүн SSH колдонуу Linux — Бул буйрук сабына кирүүнүн эң сонун жолу, бирок ал үчүн тышкы сервер жана тармактык байланыш талап кылынат. Бул чоң тоскоолдук эмес, бирок аны толугу менен этибарга албай коюуга болбойт, андыктан сизге төмөнкүлөр менен иштөө керек болушу мүмкүн Linux серверсиз.
Эгер бул сиздин абалыңыз болсо, анда сиз аны бир кадам алдыга ташташыңыз керек болот. иштелип чыккан тиркемелерди Apple App Store дүкөнүндө жарыяланганга чейин орнотуу үчүн менчик кызматы. Колдонмо дүкөнүнөн TestFlight колдонмосун орнотуп, андан кийин сыноо колдонмолорун колдоно аласыз. TestFlight'тагы колдонмолор чектелген сандагы бета сыноочуларга (адатта 10 000ге чейин) алар менен чектелген убакытка иштөөгө мүмкүнчүлүк берет. Сыноо тиркемесин жүктөп алуу үчүн, сиз түзмөгүңүздөн адатта сыноо тиркемесин иштеп чыгуучунун веб-сайтында жайгашкан шилтемеге өтүшүңүз керек.
Альпинин ишке кириши Linux iSH менен
даяр дистрибуциялуу виртуалдык машинаны ишке киргизген ачык булактуу TestFlight тиркемеси (бир аз аракет менен, сиз башка бөлүштүрүүнү иштете аласыз).
Маанилүү өзгөчөлүк: эксперименталдык колдонуу. iSH учурда сыноо колдонмо болгондуктан, туруктуу жана ишенимдүү иштешин күтпөңүз. TestFlight колдонмолору убакыт чектелген. Менин азыркы куруум 60 күнгө гана созулат. Бул 60 күндөн кийин мен четтетилип, iSH тестирлөөнүн кийинки айлампасына кайра кошулушум керек дегенди билдирет. Андан тышкары, мен аларды iOS'тогу Files аркылуу экспорттомоюнум же Git хостуна көчүрмөйүнчө, бардык файлдарымды жоготуп алам. . Башкача айтканда: Бул иштей берет деп күтпөңүз! Сиз үчүн маанилүү нерсени системага салбаңыз! Камдык көчүрмөнү өзүнчө жерге көчүрүү!
iSH орнотуу
Орнотуу менен баштаңыз App Store дүкөнүнөн. Андан кийин iSH орнотуп, колдонмо веб-сайтынан. AltStore аркылуу башка орнотуу ыкмасы бар, бирок мен аны сынай элекмин. Же болбосо, сизде акы төлөнүүчү иштеп чыгуучу аккаунтуңуз болсо, iSH репозиторийсин GitHub'дан жүктөп алып, аны өзүңүз орното аласыз.
Шилтемени колдонуп, TestFlight түзмөгүңүзгө iSH тиркемесин орнотот. Башка тиркемелер сыяктуу эле, экранда сөлөкөт пайда болот.
Пакет башкаруу
iSH Alpine менен x86 эмуляторун иштетет LinuxAlpine - бул кичинекей дистрибуция, анын көлөмү 5 МБдан аз. Мен Alpine'ди биринчи жолу колдонуп жатам, ошондуктан анын минимализми тажатма болот деп ойлогом, бирок чындыгында мага абдан жакты.

Alpine пакет менеджерин колдонот , бул 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 кабыгынын бир айры болуп саналат, же . Анын артыкчылыгы - ылдамдык. Мен ылдамдыкты орнотулган автотолтурууну, түстөрдү, Vim баскычтарын башкарууну жана балыктын кабыгынан жакшы көргөн жана билген синтаксисти баса белгилөө үчүн алмаштырууну чечтим.
Балык орнотуу:
apk add fishЭгер сизге автоматтык түрдө толуктоо жана адам барактары бар Bash керек болсо, анда аларды орнотуңуз:
apk add bash bash-doc bash-completionAlpine'тин минималисттик идеологиясы, адатта, башка дистрибуцияларда топтолгон кээ бир программалар бир нече кичине пакеттерге бөлүнөрүн билдирет. Бул ошондой эле сиз системаңыздын көлөмүн сиз каалагандай ыңгайлаштыра жана азайта аласыз дегенди билдирет.
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 же... өчүрүп-күйгүзүүнү сунуштайм. iPhoneiSHти кайра ачыңыз, эми "Alpine'ге кош келиңиз!" билдирүүсүнөн жана APK'дан ишке киргизүү жөнүндө маалыматтан тышкары, сиз стандарттуу балык кирүүсүнө кош келиңиз билдирүүсүн көрөсүз: Балыкка, достук интерактивдүү кабыкка кош келдиңиз. Жашасын!

Python жана пипти орнотуу
Мен кошууну чечтим (3.x версиясы), код жазуу үчүн гана эмес, мен бир нече Python программаларын колдонгонум үчүн. Аны орнотобуз:
apk add python3Python 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Адамдан тышкары мен керемет колдоном , ал жөнөкөйлөштүрүлгөн жана коомчулук тарабынан башкарылган адам баракчаларын камсыз кылат.
Мен аны pip аркылуу орнотком:
pip install tldr команда tldr жаңы баракка суроо-талапка туш болгондо, баракчаларды алуу үчүн интернетке туташат. Эгер сиз буйрукту кантип колдонууну билишиңиз керек болсо, сиз сыяктуу бир нерсе жаза аласыз tldr curl жана жөнөкөй англис тилинде сүрөттөмөсүн жана буйрукту кантип колдонуунун жакшы мисалдарын алыңыз.
Албетте, бардык бул орнотуу иштери колдонуу менен автоматташтырылышы мүмкүн же орнотуу скрипти, бирок чындыгында бул Альпинин идеологиясына дал келбейт - минималдуу орнотууну так сиздин муктаждыктарыңызга ылайыкташтыруу. Анын үстүнө ушунча убакыт өттү, туурабы?
кошумча маалымат
iSH Wiki баракчасы бар ""Учурда кайсы пакеттер иштеп жатканы боюнча отчеттор менен. Баса, окшош .
Башка вики баракчасы кантип түшүндүрөт iOS Files колдонмосунан. Бул файлдарды жылдыруу жана көчүрүү жолдорунун бири.
Сиз ошондой эле Git орното аласыз (ооба! apk add git ) жана жумушуңузду алыскы репозиторийге түртүңүз же SSH аркылуу серверге өткөрүңүз. Жана, албетте, сиз GitHub'дан каалаган сандагы ачык булактуу долбоорлорду жүктөп алып, иштете аласыз.
iSH жөнүндө көбүрөөк маалыматты бул шилтемелерден тапса болот:
жарнама катары
Vdsina сунуштар же Windows. Биз эксклюзив колдонобуз , өзүбүздүн дизайндагы эң мыкты сервердик башкаруу панели жана Россиядагы жана ЕБдеги эң мыкты маалымат борборлорунун бири. Заказ берүүгө шашылыңыз!
Source: www.habr.com
