{"id":95906,"date":"2020-10-05T01:41:58","date_gmt":"2020-10-04T23:41:58","guid":{"rendered":"https:\/\/prohoster.info\/blog\/administrirovanie\/zapuskaem-komandnuyu-stroku-linux-na-ios"},"modified":"2020-10-05T01:41:58","modified_gmt":"2020-10-04T23:41:58","slug":"zapuskaem-komandnuyu-stroku-linux-na-ios","status":"publish","type":"post","link":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/zapuskaem-komandnuyu-stroku-linux-na-ios","title":{"rendered":"Spou\u0161t\u00edme p\u0159\u00edkazov\u00fd \u0159\u00e1dek Linuxu na iOS","gt_translate_keys":[{"key":"rendered","format":"text"}]},"content":{"rendered":"<p><img decoding=\"async\" alt=\"Spou\u0161t\u00edme p\u0159\u00edkazov\u00fd \u0159\u00e1dek Linuxu na iOS\" src=\"\/wp-content\/uploads\/2020\/10\/2cfc862c9912ac31e6af72bca74ceff1.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\n<br \/>\nV\u011bd\u011bli jste, \u017ee m\u016f\u017eete spustit termin\u00e1l Linux na za\u0159\u00edzen\u00ed iOS? Mo\u017en\u00e1 se pt\u00e1te: \u201ePro\u010d bych m\u011bl pou\u017e\u00edvat textov\u00e9 aplikace na iPhonu?\u201c To je spravedliv\u00e1 ot\u00e1zka. Ale pokud \u010dtete Opensource.com, pravd\u011bpodobn\u011b zn\u00e1te odpov\u011b\u010f: u\u017eivatel\u00e9 Linuxu cht\u011bj\u00ed m\u00edt mo\u017enost pracovat na jak\u00e9mkoliv za\u0159\u00edzen\u00ed a cht\u011bj\u00ed pou\u017e\u00edvat sv\u00e9 vlastn\u00ed nastaven\u00ed.<\/p>\n<p>Ale nejv\u00edce tou\u017e\u00ed po \u0159e\u0161en\u00ed slo\u017eit\u00fdch \u00faloh.<\/p>\n<p>M\u00e1m sedmilet\u00fd iPad 2 Mini, kter\u00fd je st\u00e1le docela dobr\u00fd pro \u010dten\u00ed elektronick\u00fdch knih a dal\u0161\u00ed \u00fakoly. Cht\u011bl bych ho v\u0161ak pou\u017e\u00edvat i pro p\u0159\u00edstup k termin\u00e1lu aplikac\u00ed se sv\u00fdm souborem program\u016f a skript\u016f, bez kter\u00fdch se neobejdu. Pot\u0159ebuji prost\u0159ed\u00ed, na kter\u00e9 jsem zvykl\u00fd, stejn\u011b jako sv\u00e9 standardn\u00ed d Developersk\u00e9 prost\u0159ed\u00ed. A tady je, jak jsem to dok\u00e1zal.<br \/>\n<noindex><a rel=\"nofollow\" name=\"habracut\"><\/a><\/noindex><\/p>\n<h2>P\u0159ipojen\u00ed kl\u00e1vesnice<\/h2>\n<p>\nPr\u00e1ce s termin\u00e1lem pro programov\u00e1n\u00ed prost\u0159ednictv\u00edm obrazovkov\u00e9 kl\u00e1vesnice telefonu nebo tabletu je dost nepohodln\u00e1. Doporu\u010duji p\u0159ipojit extern\u00ed kl\u00e1vesnici, bu\u010f p\u0159es Bluetooth, nebo pomoc\u00ed adapt\u00e9ru pro p\u0159ipojen\u00ed kamery pro p\u0159ipojen\u00ed dr\u00e1tov\u00e9 kl\u00e1vesnice (vybral jsem druhou mo\u017enost). Po p\u0159ipojen\u00ed d\u011blen\u00e9 kl\u00e1vesnice Kinesis Advantage k iPhonu 6 to vypad\u00e1 jako podivn\u00fd p\u0159\u00edstroj, kter\u00fd p\u0159ipom\u00edn\u00e1 <noindex><a rel=\"nofollow\" href=\"https:\/\/www.shadowruntabletop.com\/products\/setting-sourcebooks\/\">korpor\u00e1tn\u00ed kybernetickou stanici<\/a><\/noindex> z klasick\u00e9ho <noindex><a rel=\"nofollow\" href=\"https:\/\/opensource.com\/article\/20\/7\/free-rpg-day\">role-playing game<\/a><\/noindex> Shadowrun.<\/p>\n<h2>Instalace shellu na iOS<\/h2>\n<p>\nK provozu plnohodnotn\u00e9ho syst\u00e9mu Linux na iOS existuj\u00ed dv\u011b mo\u017enosti:<\/p>\n<ul>\n<li>Secure shell (SSH), p\u0159ipojen\u00fd k po\u010d\u00edta\u010di s Linuxem<\/li>\n<li>Spu\u0161t\u011bn\u00ed virtu\u00e1ln\u00edho syst\u00e9mu pomoc\u00ed Alpine Linux s iSH, co\u017e je open source, ale mus\u00ed b\u00fdt nainstalov\u00e1no pomoc\u00ed propriet\u00e1rn\u00ed aplikace TestFlight od Apple<\/li>\n<\/ul>\n<p>\nAlternativn\u011b existuj\u00ed dv\u011b termin\u00e1lov\u00e9 emul\u00e1tory v open source, kter\u00e9 umo\u017e\u0148uj\u00ed pr\u00e1ci s open-source n\u00e1stroji v omezen\u00e9m prost\u0159ed\u00ed. To je nej\u00fasporn\u011bj\u0161\u00ed varianta - ve skute\u010dnosti nespou\u0161t\u00edte Linux, ale n\u00e1stroje Linuxu. P\u0159i pr\u00e1ci s t\u011bmito aplikacemi existuj\u00ed p\u0159\u00edsn\u00e1 omezen\u00ed funkc\u00ed, ale z\u00edsk\u00e1te \u010d\u00e1ste\u010dnou funk\u010dnost termin\u00e1lu.<\/p>\n<p>Ne\u017e se dostanu k slo\u017eit\u011bj\u0161\u00edm \u0159e\u0161en\u00edm, sezn\u00e1m\u00edm v\u00e1s s nejjednodu\u0161\u0161\u00edm zp\u016fsobem.<\/p>\n<h3>Mo\u017enost 1: shell v \u201ep\u00edsku\u201c<\/h3>\n<p>\nJedn\u00edm z nejjednodu\u0161\u0161\u00edch zp\u016fsob\u016f je nainstalovat aplikaci pro iOS <noindex><a rel=\"nofollow\" href=\"https:\/\/libterm.app\/\">LibTerm<\/a><\/noindex>. To je <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ColdGrub1384\/LibTerm\">open source<\/a><\/noindex> p\u0159\u00edkazov\u00fd \u0159\u00e1dek v \u201esandboxu\u201c s podporou v\u00edce ne\u017e 80 p\u0159\u00edkaz\u016f za cenu nula dolar\u016f. Spole\u010dn\u011b s n\u00edm jsou dod\u00e1v\u00e1ny Python 2.7, Python 3.7, Lua, C, Clang a mnoho dal\u0161\u00edho.<\/p>\n<p>P\u0159ibli\u017en\u011b stejnou funkcionalitou disponuje <noindex><a rel=\"nofollow\" href=\"https:\/\/holzschu.github.io\/a-Shell_iOS\/\">a-Shell<\/a><\/noindex>, kter\u00e1 je v\u00fdvoj\u00e1\u0159i popisov\u00e1na jako \u201etestovac\u00ed u\u017eivatelsk\u00e9 rozhran\u00ed pro platformu se vstupem na obrazovce\u201c. Zdroje a-Shell jsou zve\u0159ejn\u011bny jako <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/holzschu\/a-shell\/blob\/master\/LICENSE\">open source<\/a><\/noindex>, je aktivn\u011b vyv\u00edjena, poskytuje p\u0159\u00edstup k souborov\u00e9mu syst\u00e9mu a dod\u00e1v\u00e1 se s Lua, Python, Tex, Vim, JavaScript, C a C++, stejn\u011b jako s Clang a Clang++. Dokonce umo\u017e\u0148uje instalaci Python bal\u00ed\u010dk\u016f pomoc\u00ed pip.<\/p>\n<h3>Varianta 2: SSH<\/h3>\n<p>\nDal\u0161\u00edm krokem vp\u0159ed oproti sta\u017een\u00ed aplikace je nastaven\u00ed SSH klienta. Ji\u017e dlouho jsme mohli pou\u017e\u00edvat jakoukoli z mnoha aplikac\u00ed SSH klient\u016f pro iOS, abychom se p\u0159ipojili k serveru, na kter\u00e9m b\u011b\u017e\u00ed Linux nebo BSD. V\u00fdhoda pou\u017eit\u00ed SSH spo\u010d\u00edv\u00e1 v tom, \u017ee na serveru m\u016f\u017ee b\u011b\u017eet jak\u00e1koli distribuce s jak\u00fdmkoli softwarem. Pracujete vzd\u00e1len\u011b a v\u00fdsledky jsou jednodu\u0161e p\u0159en\u00e1\u0161eny do termin\u00e1lov\u00e9ho emul\u00e1toru na za\u0159\u00edzen\u00ed iOS.<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/blink.sh\">Blink shell<\/a><\/noindex> \u2014 je popul\u00e1rn\u00ed placen\u00e1 SSH aplikace v <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/blinksh\/blink\/blob\/raw\/COPYING\">open source<\/a><\/noindex>. Pokud nebudeme br\u00e1t v \u00favahu malou obrazovku za\u0159\u00edzen\u00ed, pou\u017e\u00edv\u00e1n\u00ed tohoto softwaru p\u0159ipom\u00edn\u00e1 p\u0159ipojen\u00ed k serveru prost\u0159ednictv\u00edm jak\u00e9hokoli jin\u00e9ho p\u0159\u00edkazov\u00e9ho \u0159\u00e1dku. Termin\u00e1l Blink vypad\u00e1 skv\u011ble, m\u00e1 mnoho hotov\u00fdch t\u00e9mat a mo\u017enost vytv\u00e1\u0159et vlastn\u00ed, v\u010detn\u011b mo\u017enosti \u00fapravy a p\u0159id\u00e1v\u00e1n\u00ed nov\u00fdch p\u00edsem.<\/p>\n<h3>Varianta 3: spu\u0161t\u011bn\u00ed Linuxu<\/h3>\n<p>\nPou\u017eit\u00ed SSH k p\u0159ipojen\u00ed k serveru s Linuxem je skv\u011bl\u00fd zp\u016fsob, jak z\u00edskat p\u0159\u00edstup k p\u0159\u00edkazov\u00e9mu \u0159\u00e1dku, ale vy\u017eaduje to extern\u00ed server a s\u00ed\u0165ov\u00e9 p\u0159ipojen\u00ed. To nen\u00ed nejv\u011bt\u0161\u00ed p\u0159ek\u00e1\u017eka, ale nelze ji \u00fapln\u011b ignorovat, tak\u017ee mo\u017en\u00e1 budete pot\u0159ebovat pracovat s Linuxem bez serveru.<\/p>\n<p>Pokud je to v\u00e1\u0161 p\u0159\u00edpad, budete muset ud\u011blat dal\u0161\u00ed krok vp\u0159ed. <noindex><a rel=\"nofollow\" href=\"https:\/\/testflight.apple.com\/\">TestFlight<\/a><\/noindex> \u2014 to je propriet\u00e1rn\u00ed slu\u017eba pro instalaci vyv\u00edjen\u00fdch aplikac\u00ed je\u0161t\u011b p\u0159ed t\u00edm, ne\u017e byly zve\u0159ejn\u011bny v Apple App Store. Aplikaci TestFlight si m\u016f\u017eete st\u00e1hnout z App Store a pou\u017e\u00edvat testovac\u00ed aplikace. Aplikace v TestFlight umo\u017e\u0148uj\u00ed pracovat s nimi po omezenou dobu omezen\u00e9mu po\u010dtu beta tester\u016f (obvykle a\u017e 10 000). Chcete-li st\u00e1hnout testovac\u00ed aplikaci, mus\u00edte p\u0159ej\u00edt ze sv\u00e9ho za\u0159\u00edzen\u00ed na odkaz, kter\u00fd je obvykle na webov\u00fdch str\u00e1nk\u00e1ch v\u00fdvoj\u00e1\u0159e testovac\u00ed aplikace.<\/p>\n<h2>Spu\u0161t\u011bn\u00ed Alpine Linux s iSH<\/h2>\n<p>\n<noindex><a rel=\"nofollow\" href=\"https:\/\/ish.app\/\">iSH<\/a><\/noindex> \u2014 je open-source aplikace TestFlight, kter\u00e1 spou\u0161t\u00ed virtu\u00e1ln\u00ed stroj s hotov\u00fdm distribuc\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/alpinelinux.org\/\">Alpine Linux<\/a><\/noindex> (se spr\u00e1vn\u00fdm \u00fasil\u00edm lze spou\u0161t\u011bt i jin\u00e9 distribuce).<\/p>\n<p>D\u016fle\u017eit\u00e1 vlastnost: <em>aplikace je experiment\u00e1ln\u00ed<\/em>. Proto\u017ee je iSH zat\u00edm testovac\u00ed aplikac\u00ed, neo\u010dek\u00e1vejte st\u00e1lou a spolehlivou funk\u010dnost. Aplikace TestFlight jsou \u010dasov\u011b omezeny. Moje sou\u010dasn\u00e1 verze bude fungovat pouze 60 dn\u00ed. To znamen\u00e1, \u017ee za 60 dn\u00ed budu vylou\u010den a budu se muset znovu p\u0159ipojit k dal\u0161\u00edmu testov\u00e1n\u00ed iSH. Nav\u00edc ztrat\u00edm v\u0161echny sv\u00e9 soubory, pokud je neexportuji pomoc\u00ed aplikace Soubory na iOS nebo je neokop\u00edruji na Git hostitel nebo <noindex><a rel=\"nofollow\" href=\"https:\/\/opensource.com\/article\/20\/9\/ssh\">p\u0159es SSH<\/a><\/noindex>. Jin\u00fdmi slovy: <em>Nedoufejte, \u017ee to v\u0161echno bude st\u00e1le fungovat! Nen\u00ed dobr\u00e9 ukl\u00e1dat do syst\u00e9mu nic d\u016fle\u017eit\u00e9ho pro v\u00e1s! Prov\u00e1d\u011bjte z\u00e1lohy na jin\u00e9 m\u00edsto!<\/em><\/p>\n<h3>Instalace iSH<\/h3>\n<p>\nZa\u010dn\u011bte instalac\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/apps.apple.com\/us\/app\/testflight\/id899247664\">TestFlight<\/a><\/noindex> z App Store. Pot\u00e9 nainstalujte iSH, <noindex><a rel=\"nofollow\" href=\"https:\/\/ish.app\/#get\">z\u00edsk\u00e1n\u00edm instala\u010dn\u00edho odkazu<\/a><\/noindex> z webov\u00fdch str\u00e1nek aplikace. Existuje tak\u00e9 dal\u0161\u00ed zp\u016fsob instalace pomoc\u00ed AltStore, ale ten jsem nezkou\u0161el. Nebo, pokud m\u00e1te placen\u00fd \u00fa\u010det v\u00fdvoj\u00e1\u0159e, m\u016f\u017eete si st\u00e1hnout repozit\u00e1\u0159 iSH z GitHub a nainstalovat ho sami.<\/p>\n<p>Pomoc\u00ed odkazu TestFlight nainstaluje aplikaci iSH na va\u0161e za\u0159\u00edzen\u00ed. Stejn\u011b jako u jak\u00e9koli jin\u00e9 aplikace se na obrazovce objev\u00ed ikona.<\/p>\n<h3>Spr\u00e1va bal\u00ed\u010dk\u016f<\/h3>\n<p>\niSH provozuje emul\u00e1tor x86 s Alpine Linux. Alpine je mal\u00e1 distribuce o velikosti m\u00e9n\u011b ne\u017e 5 MB. Prvn\u00ed zku\u0161enost s Alpine m\u011b p\u0159ekvapila, myslel jsem, \u017ee mi takov\u00fd minimalismus bude vadit, ale ve skute\u010dnosti se mi opravdu l\u00edb\u00ed.<\/p>\n<p><img decoding=\"async\" alt=\"Spou\u0161t\u00edme p\u0159\u00edkazov\u00fd \u0159\u00e1dek Linuxu na iOS\" src=\"\/wp-content\/uploads\/2020\/10\/669478d0e58743a87f70e92c96feec9d.jpeg\" style=\"display:block;margin: 0 auto;\" \/><br \/>\nV Alpine se pou\u017e\u00edv\u00e1 spr\u00e1vce bal\u00ed\u010dk\u016f <noindex><a rel=\"nofollow\" href=\"https:\/\/wiki.alpinelinux.org\/wiki\/Alpine_Linux_package_management\">apk<\/a><\/noindex>, kter\u00fd je jednodu\u0161\u0161\u00ed ne\u017e apt nebo pacman.<\/p>\n<p>Jak nainstalovat bal\u00ed\u010dek:<\/p>\n<pre><code class=\"bash\">apk add package<\/code><\/pre>\n<p>\nJak odstranit bal\u00ed\u010dek:<\/p>\n<pre><code class=\"bash\">apk del package<\/code><\/pre>\n<p>\nJak zjistit dal\u0161\u00ed p\u0159\u00edkazy a informace:<\/p>\n<pre><code class=\"bash\">apk --help<\/code><\/pre>\n<p>\nAktualizace spr\u00e1vce bal\u00ed\u010dk\u016f:<\/p>\n<pre><code class=\"bash\">apk update\napk upgrade<\/code><\/pre>\n<p><\/p>\n<h3>Instalace textov\u00e9ho editoru<\/h3>\n<p>\nV\u00fdchoz\u00edm textov\u00fdm editorem Alpine je Vi, ale j\u00e1 preferuji Vim, proto jsem ho nainstaloval:<\/p>\n<pre><code class=\"bash\">apk add vim<\/code><\/pre>\n<p>\nPokud chcete, m\u016f\u017eete nainstalovat tak\u00e9 Nano nebo Emacs.<\/p>\n<h3>Zm\u011bna shellu<\/h3>\n<p>\nNev\u00edm, jak to m\u00e1te vy, ale j\u00e1 pot\u0159eboval <noindex><a rel=\"nofollow\" href=\"https:\/\/opensource.com\/article\/20\/3\/fish-shell\">fish shell<\/a><\/noindex>. Jin\u00ed lid\u00e9 preferuj\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/opensource.com\/resources\/what-bash\">Bash<\/a><\/noindex> nebo <noindex><a rel=\"nofollow\" href=\"https:\/\/opensource.com\/article\/19\/9\/getting-started-zsh\">Zsh<\/a><\/noindex>. V Alpine se v\u0161ak pou\u017e\u00edv\u00e1 ash! Ash je fork shelly Dash, kter\u00e1 sama je forkem p\u016fvodn\u00edho ash, nebo <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Almquist_shell\">Almquist shell<\/a><\/noindex>. Jeho priorita je rychlost. Rozhodl jsem se vym\u011bnit rychlost za vestav\u011bn\u00e9 automatick\u00e9 dokon\u010dov\u00e1n\u00ed, barvy, ovl\u00e1d\u00e1n\u00ed kl\u00e1vesami Vim a zv\u00fdrazn\u011bn\u00ed syntaxe, kter\u00e9 m\u00e1m r\u00e1d a zn\u00e1m z fish shell.<\/p>\n<p>Instalace fish:<\/p>\n<pre><code class=\"bash\">apk add fish<\/code><\/pre>\n<p>\nPokud pot\u0159ebujete Bash s jej\u00edm automatick\u00fdm dokon\u010dov\u00e1n\u00edm a man str\u00e1nkami, nainstalujte je:<\/p>\n<pre><code class=\"bash\">apk add bash bash-doc bash-completion<\/code><\/pre>\n<p>\nMinimalistick\u00e1 ideologie Alpine obvykle znamen\u00e1, \u017ee n\u011bkter\u00e9 programy, kter\u00e9 v jin\u00fdch distribuc\u00edch jsou jedn\u00edm bal\u00ed\u010dkem, budou rozd\u011bleny na n\u011bkolik men\u0161\u00edch bal\u00ed\u010dk\u016f. Tak\u00e9 to znamen\u00e1, \u017ee si m\u016f\u017eete sv\u016fj syst\u00e9m p\u0159izp\u016fsobit a zmen\u0161it velikost p\u0159esn\u011b podle sv\u00fdch p\u0159edstav.<\/p>\n<p>V\u00edce o instalaci Bash se dozv\u00edte z <noindex><a rel=\"nofollow\" href=\"https:\/\/www.cyberciti.biz\/faq\/alpine-linux-install-bash-using-apk-command\/\">tohoto tutori\u00e1lu<\/a><\/noindex>.<\/p>\n<h4>Zm\u011bna v\u00fdchoz\u00edho shellu<\/h4>\n<p>\nPo instalaci fish se m\u016f\u017eete do\u010dasn\u011b p\u0159epnout na ni zad\u00e1n\u00edm <code>fish<\/code> a p\u0159epnout se do shellu. Ale chci ud\u011blat fish shell v\u00fdchoz\u00edm, a p\u0159\u00edkaz <code>chsh<\/code>, kter\u00fd jsem pou\u017e\u00edval v jin\u00fdch distribuc\u00edch, nefungoval.<\/p>\n<p>Nejd\u0159\u00edve zjist\u00edme, kam se fish nainstalovala:<\/p>\n<pre><code class=\"bash\">which fish<\/code><\/pre>\n<p>\nTady je, co jsem dostal:<\/p>\n<pre><code class=\"bash\">\/usr\/bin\/fish<\/code><\/pre>\n<p>\nPak zm\u011bn\u00edme login shell na fish. M\u016f\u017eete pou\u017e\u00edt jak\u00fdkoliv editor, kter\u00fd v\u00e1m vyhovuje. Pokud jste nov\u00e1\u010dka, nainstalujte Nano (p\u0159\u00edkazem <code>apk add nano<\/code>), abyste mohli upravit konfigura\u010dn\u00ed soubory a ulo\u017eit je p\u0159es CTRL+X, potvrdit a ukon\u010dit.<\/p>\n<p>Ale j\u00e1 jsem pou\u017eil Vim:<\/p>\n<pre><code class=\"bash\">vim \/etc\/passwd<\/code><\/pre>\n<p>\nM\u016fj prvn\u00ed \u0159\u00e1dek byl takov\u00fd:<\/p>\n<pre><code class=\"bash\">root:x:0:0:root:\/root:\/bin\/ash<\/code><\/pre>\n<p>\nAbych ud\u011blal fish shell v\u00fdchoz\u00edm, zm\u011bn\u00edme tento \u0159\u00e1dek na n\u00e1sleduj\u00edc\u00ed:<\/p>\n<pre><code class=\"bash\">root:x:0:0:root:\/root:\/usr\/bin\/fish<\/code><\/pre>\n<p>\nPak ulo\u017e\u00edme soubor a v\u00fdjdeme.<\/p>\n<p>Jsem si jist\u00fd, \u017ee existuje dobr\u00fd zp\u016fsob, jak zm\u011bnit cestu k shellu, aby se dala pou\u017e\u00edt hned. Ale nev\u00edm jak, proto doporu\u010duji vr\u00e1tit se do aplikace prohl\u00ed\u017ee\u010de, nutn\u011b se odhl\u00e1sit ze shellu a pro jistotu vypnout a restartovat iPad nebo iPhone. Znovu otev\u0159ete iSH a nyn\u00ed krom\u011b zpr\u00e1vy \u201eV\u00edtejte v Alpine!\u201c a informace o spu\u0161t\u011bn\u00ed s apk uvid\u00edte standardn\u00ed uv\u00edtac\u00ed zpr\u00e1vu pro p\u0159ihl\u00e1\u0161en\u00ed fish: <em>V\u00edtejte v fish, p\u0159\u00e1telsk\u00e9m interaktivn\u00edm shellu<\/em>. Hur\u00e1!<\/p>\n<p><img decoding=\"async\" alt=\"Spou\u0161t\u00edme p\u0159\u00edkazov\u00fd \u0159\u00e1dek Linuxu na iOS\" src=\"\/wp-content\/uploads\/2020\/10\/7780328bb48109302fc52060a81b1c3a.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/p>\n<h3>Nastaven\u00ed Pythonu a pip<\/h3>\n<p>\nRozhodl jsem se p\u0159idat <noindex><a rel=\"nofollow\" href=\"https:\/\/www.python.org\/\">CouchDB<\/a><\/noindex> (verzi 3.x), nejen proto, abych mohl ps\u00e1t k\u00f3d, ale tak\u00e9 proto, \u017ee pou\u017e\u00edv\u00e1m n\u011bkolik program\u016f v Pythonu. Nainstalujeme ho:<\/p>\n<pre><code class=\"bash\">apk add python3<\/code><\/pre>\n<p>\nI kdy\u017e je Python 2.x zastaral\u00fd, m\u016f\u017eete nainstalovat i jeho:<\/p>\n<pre><code class=\"bash\">apk add python<\/code><\/pre>\n<p>\nNainstalujeme spr\u00e1vce bal\u00ed\u010dk\u016f Python, naz\u00fdvan\u00fd pip a <noindex><a rel=\"nofollow\" href=\"https:\/\/pypi.org\/project\/setuptools\/\">setuptools<\/a><\/noindex>:<\/p>\n<pre><code class=\"bash\">python3 -m ensurepip --default-pip<\/code><\/pre>\n<p>\nPro instalaci a konfiguraci spr\u00e1vce bal\u00ed\u010dk\u016f bude pot\u0159eba n\u011bjak\u00fd \u010das, tak\u017ee si prost\u011b po\u010dkejte.<\/p>\n<p>Pot\u00e9 si budete moci st\u00e1hnout n\u00e1stroj pro p\u0159enos soubor\u016f p\u0159es s\u00ed\u0165 <noindex><a rel=\"nofollow\" href=\"https:\/\/curl.haxx.se\/\">curl<\/a><\/noindex>:<\/p>\n<pre><code class=\"bash\">apk add curl<\/code><\/pre>\n<p><\/p>\n<h3>\u010cteme manu\u00e1ly<\/h3>\n<p>\nFish pou\u017e\u00edv\u00e1 vestav\u011bn\u00e9 automatick\u00e9 dopl\u0148ov\u00e1n\u00ed na z\u00e1klad\u011b man-str\u00e1nek. Jako ostatn\u00ed u\u017eivatel\u00e9 p\u0159\u00edkazov\u00e9 \u0159\u00e1dky pou\u017e\u00edv\u00e1m manu\u00e1l <code>man<\/code>, a v Alpine nen\u00ed nainstalov\u00e1n. Proto jsem ho nainstaloval s termin\u00e1lov\u00fdm pagerem <noindex><a rel=\"nofollow\" href=\"https:\/\/en.wikipedia.org\/wiki\/Less_%28Unix%29\">less<\/a><\/noindex>:<\/p>\n<pre><code class=\"bash\">apk add man man-pages less less-doc<\/code><\/pre>\n<p>\nKrom\u011b manu\u00e1lu pou\u017e\u00edv\u00e1m skv\u011bl\u00fd <noindex><a rel=\"nofollow\" href=\"https:\/\/tldr.sh\/\">projekt tldr pages<\/a><\/noindex>, kter\u00fd poskytuje zjednodu\u0161en\u00e9 a komunitou spravovan\u00e9 man-str\u00e1nky.<\/p>\n<p>Nainstaloval jsem ho pomoc\u00ed pip:<\/p>\n<pre><code class=\"bash\">pip install tldr<\/code><\/pre>\n<p>\nT\u00fdm <code>tldr<\/code> se spojuje s webem pro z\u00edsk\u00e1n\u00ed str\u00e1nek, kdy\u017e se setk\u00e1 s po\u017eadavkem na novou str\u00e1nku. Pokud pot\u0159ebujete v\u011bd\u011bt, jak pou\u017e\u00edvat p\u0159\u00edkaz, m\u016f\u017eete napsat n\u011bco jako <code>tldr curl<\/code> a z\u00edskat popis v jednoduch\u00e9 angli\u010dtin\u011b a dobr\u00e9 p\u0159\u00edklady pou\u017eit\u00ed p\u0159\u00edkazu.<\/p>\n<p>Samoz\u0159ejm\u011b, \u017ee ve\u0161kerou tuto pr\u00e1ci kolem instalace lze automatizovat pomoc\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/opensource.com\/article\/19\/3\/move-your-dotfiles-version-control\">dotfiles<\/a><\/noindex> nebo instala\u010dn\u00edho skriptu, ale to vlastn\u011b moc neodpov\u00edd\u00e1 ideologii Alpine \u2014 konfiguraci minim\u00e1ln\u00ed instalace p\u0159esn\u011b podle vlastn\u00edch pot\u0159eb. Krom\u011b toho to zabralo tolik \u010dasu, \u017ee?<\/p>\n<h2>Dal\u0161\u00ed informace<\/h2>\n<p>\nNa Wikipedii iSH je str\u00e1nka \"<noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ish-app\/ish\/wiki\/What-works%3F\">what works<\/a><\/noindex>\" s reporty o tom, kter\u00e9 bal\u00ed\u010dky nyn\u00ed funguj\u00ed. Mimochodem, vypad\u00e1 to, \u017ee <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ish-app\/ish\/issues\/874\">npm nyn\u00ed nefunguje<\/a><\/noindex>.<\/p>\n<p>Na dal\u0161\u00ed wikipedii je vysv\u011btleno, jak <noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ish-app\/ish\/wiki\/View-iSH-files-in-Files-App\">z\u00edskat p\u0159\u00edstup k soubor\u016fm iSH<\/a><\/noindex> z aplikace iOS Files. To je jeden ze zp\u016fsob\u016f, jak lze p\u0159esouvat a kop\u00edrovat soubory.<\/p>\n<p>M\u016f\u017eete tak\u00e9 nainstalovat Git (ano! <code>apk add git<\/code> ) a pos\u00edlat svou pr\u00e1ci do vzd\u00e1len\u00e9ho \u00falo\u017ei\u0161t\u011b nebo ji p\u0159en\u00e1\u0161et na server p\u0159es SSH. A samoz\u0159ejm\u011b, m\u016f\u017eete stahovat a spou\u0161t\u011bt libovoln\u00e9 mno\u017estv\u00ed \u00fa\u017easn\u00fdch open-source projekt\u016f z GitHubu.<\/p>\n<p>V\u00edce o iSH se m\u016f\u017eete dozv\u011bd\u011bt na t\u011bchto odkazech:<\/p>\n<ul>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/ish.app\/\">Webov\u00e1 str\u00e1nka iSH<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/www.reddit.com\/r\/ish\/\">Subreddit<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ish-app\/ish\/issues\">GitHub issues<\/a><\/noindex><\/li>\n<li><noindex><a rel=\"nofollow\" href=\"https:\/\/github.com\/ish-app\/ish\/wiki\">Wiki<\/a><\/noindex><\/li>\n<\/ul>\n<p><\/p>\n<h4>Na z\u00e1klad\u011b reklamy<\/h4>\n<p>\n<b>VDS<\/b> nab\u00edz\u00ed <noindex><a rel=\"nofollow\" href=\"https:\/\/vdsina.ru\/cloud-servers?partner=habr124\">virtu\u00e1ln\u00ed servery na Linuxu<\/a><\/noindex> nebo Windows. Pou\u017e\u00edv\u00e1me v\u00fdhradn\u011b <noindex><a rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/vdsina\/blog\/514570\/\">zna\u010dkov\u00e9 vybaven\u00ed<\/a><\/noindex>, nejlep\u0161\u00ed ve sv\u00e9 t\u0159\u00edd\u011b \u0159\u00eddic\u00ed panel server\u016f vyvinut\u00fd n\u00e1mi a jedno z nejlep\u0161\u00edch datov\u00fdch center v Rusku a EU. Nezapome\u0148te si objednat!<\/p>\n<p><noindex><a rel=\"nofollow\" href=\"https:\/\/vdsina.ru\/cloud-servers?partner=habr124\"><img decoding=\"async\" alt=\"Spou\u0161t\u00edme p\u0159\u00edkazov\u00fd \u0159\u00e1dek Linuxu na iOS\" src=\"\/wp-content\/uploads\/2020\/10\/d9b1b757b593fff1dcd96c99fcf04ee8.jpeg\" style=\"display:block;margin: 0 auto;\" \/><\/a><\/noindex><br \/>\n<br \/>Zdroj: <a content=\"nofollow\" rel=\"nofollow\" href=\"https:\/\/habr.com\/ru\/company\/vdsina\/blog\/521676\/\">habr.com<\/a> <\/p>","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"excerpt":{"rendered":"<p>\u0410 \u0432\u044b \u0437\u043d\u0430\u043b\u0438, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 Linux \u043d\u0430 \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435 iOS? \u0412\u043e\u0437\u043c\u043e\u0436\u043d\u043e, \u0432\u044b \u0441\u043f\u0440\u043e\u0441\u0438\u0442\u0435: \u00ab\u0417\u0430\u0447\u0435\u043c \u043c\u043d\u0435 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0442\u0435\u043a\u0441\u0442\u043e\u0432\u044b\u043c\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f\u043c\u0438 \u043d\u0430 iPhone?\u00bb \u0421\u043f\u0440\u0430\u0432\u0435\u0434\u043b\u0438\u0432\u044b\u0439 \u0432\u043e\u043f\u0440\u043e\u0441. \u041d\u043e \u0435\u0441\u043b\u0438 \u0432\u044b \u0447\u0438\u0442\u0430\u0435\u0442\u0435 Opensource.com, \u0442\u043e, \u0432\u0435\u0440\u043e\u044f\u0442\u043d\u043e, \u0437\u043d\u0430\u0435\u0442\u0435 \u043d\u0430 \u043d\u0435\u0433\u043e \u043e\u0442\u0432\u0435\u0442: \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u0438 Linux \u0445\u043e\u0442\u044f\u0442 \u0438\u043c\u0435\u0442\u044c \u0432\u043e\u0437\u043c\u043e\u0436\u043d\u043e\u0441\u0442\u044c \u0440\u0430\u0431\u043e\u0442\u0430\u0442\u044c \u0441 \u043d\u0438\u043c \u043d\u0430 \u043b\u044e\u0431\u043e\u043c \u0443\u0441\u0442\u0440\u043e\u0439\u0441\u0442\u0432\u0435 \u0438 \u0445\u043e\u0442\u044f\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c\u0441\u044f \u0441\u043e\u0431\u0441\u0442\u0432\u0435\u043d\u043d\u044b\u043c\u0438 \u043d\u0430\u0441\u0442\u0440\u043e\u0439\u043a\u0430\u043c\u0438. \u041d\u043e \u0431\u043e\u043b\u044c\u0448\u0435 \u0432\u0441\u0435\u0433\u043e \u043e\u043d\u0438 [&hellip;]<\/p>\n","protected":false,"gt_translate_keys":[{"key":"rendered","format":"html"}]},"author":1,"featured_media":95907,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[688],"tags":[],"class_list":["post-95906","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-administrirovanie"],"aioseo_notices":[],"aioseo_head":"\n\t\t<!-- All in One SEO 5.0.3 - aioseo.com -->\n\t<meta name=\"description\" content=\"\u0410 \u0432\u044b \u0437\u043d\u0430\u043b\u0438, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443.\" \/>\n\t<meta name=\"robots\" content=\"max-image-preview:large\" \/>\n\t<meta name=\"author\" content=\"Yuri Gagarin\"\/>\n\t<link rel=\"canonical\" href=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/zapuskaem-komandnuyu-stroku-linux-na-ios\" \/>\n\t\t<meta name=\"generator\" content=\"All in One SEO (AIOSEO) 5.0.3\" \/>\n\t\t<meta property=\"og:locale\" content=\"cs_CZ\" \/>\n\t\t<meta property=\"og:site_name\" content=\"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b\" \/>\n\t\t<meta property=\"og:type\" content=\"article\" \/>\n\t\t<meta property=\"og:title\" content=\"\ud83e\udd47\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 Linux \u043d\u0430 iOS | ProHoster\" \/>\n\t\t<meta property=\"og:description\" content=\"\u0410 \u0432\u044b \u0437\u043d\u0430\u043b\u0438, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443.\" \/>\n\t\t<meta property=\"og:url\" content=\"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/zapuskaem-komandnuyu-stroku-linux-na-ios\" \/>\n\t\t<meta property=\"og:image\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:secure_url\" content=\"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg\" \/>\n\t\t<meta property=\"og:image:width\" content=\"350\" \/>\n\t\t<meta property=\"og:image:height\" content=\"350\" \/>\n\t\t<meta property=\"article:published_time\" content=\"2020-10-04T23:41:58+00:00\" \/>\n\t\t<meta property=\"article:modified_time\" content=\"2020-10-04T23:41:58+00:00\" \/>\n\t\t<meta property=\"article:publisher\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<meta property=\"article:author\" content=\"https:\/\/www.facebook.com\/prohoster\" \/>\n\t\t<!-- All in One SEO -->\n\n","aioseo_head_json":{"title":"\ud83e\udd47Spou\u0161t\u00edme p\u0159\u00edkazov\u00fd \u0159\u00e1dek Linuxu na iOS | ProHoster","description":"V\u011bd\u011bli jste, \u017ee m\u016f\u017eete spustit p\u0159\u00edkazov\u00fd \u0159\u00e1dek.","canonical_url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/zapuskaem-komandnuyu-stroku-linux-na-ios","robots":"max-image-preview:large","keywords":"","webmasterTools":{"miscellaneous":""},"schema":null,"og:locale":"cs_CZ","og:site_name":"ProHoster | \u041a\u0443\u043f\u0438\u0442\u044c \u043d\u0430\u0434\u0435\u0436\u043d\u044b\u0439 \u0445\u043e\u0441\u0442\u0438\u043d\u0433 \u0434\u043b\u044f \u0441\u0430\u0439\u0442\u043e\u0432 \u0441 \u0437\u0430\u0449\u0438\u0442\u043e\u0439 \u043e\u0442 DDoS, VPS VDS \u0441\u0435\u0440\u0432\u0435\u0440\u044b","og:type":"article","og:title":"\ud83e\udd47\u0417\u0430\u043f\u0443\u0441\u043a\u0430\u0435\u043c \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443 Linux \u043d\u0430 iOS | ProHoster","og:description":"\u0410 \u0432\u044b \u0437\u043d\u0430\u043b\u0438, \u0447\u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0443\u0441\u0442\u0438\u0442\u044c \u043a\u043e\u043c\u0430\u043d\u0434\u043d\u0443\u044e \u0441\u0442\u0440\u043e\u043a\u0443.","og:url":"https:\/\/prohoster.info\/cs\/blog\/administrirovanie\/zapuskaem-komandnuyu-stroku-linux-na-ios","og:image":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:secure_url":"https:\/\/prohoster.info\/wp-content\/uploads\/2021\/11\/logo-350.jpg","og:image:width":350,"og:image:height":350,"article:published_time":"2020-10-04T23:41:58+00:00","article:modified_time":"2020-10-04T23:41:58+00:00","article:publisher":"https:\/\/www.facebook.com\/prohoster","article:author":"https:\/\/www.facebook.com\/prohoster"},"aioseo_meta_data":{"post_id":"95906","title":null,"description":null,"keywords":null,"keyphrases":null,"primary_term":null,"canonical_url":null,"og_title":null,"og_description":null,"og_object_type":"default","og_image_type":"default","og_image_url":null,"og_image_width":null,"og_image_height":null,"og_image_custom_url":null,"og_image_custom_fields":null,"og_video":null,"og_custom_url":null,"og_article_section":null,"og_article_tags":null,"twitter_use_og":false,"twitter_card":"default","twitter_image_type":"default","twitter_image_url":null,"twitter_image_custom_url":null,"twitter_image_custom_fields":null,"twitter_title":null,"twitter_description":null,"schema":{"blockGraphs":[],"customGraphs":[],"default":{"data":{"Article":[],"Course":[],"Dataset":[],"FAQPage":[],"Movie":[],"Person":[],"Product":[],"ProductReview":[],"Car":[],"Recipe":[],"Service":[],"SoftwareApplication":[],"WebPage":[]},"graphName":"","isEnabled":true},"graphs":[]},"schema_type":null,"schema_type_options":null,"pillar_content":false,"robots_default":true,"robots_noindex":false,"robots_noarchive":false,"robots_nosnippet":false,"robots_nofollow":false,"robots_noimageindex":false,"robots_noodp":false,"robots_notranslate":false,"robots_max_snippet":null,"robots_max_videopreview":null,"robots_max_imagepreview":"large","priority":null,"frequency":null,"local_seo":null,"seo_analyzer_scan_date":null,"breadcrumb_settings":null,"limit_modified_date":false,"reviewed_by":null,"ai":null,"created":"2021-02-28 10:55:40","updated":"2022-09-27 15:44:56","focus_keyword":null,"additional_keywords":null,"truseo_locale":null},"gt_translate_keys":[{"key":"link","format":"url"}],"_links":{"self":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/95906","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/comments?post=95906"}],"version-history":[{"count":0,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/posts\/95906\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media\/95907"}],"wp:attachment":[{"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/media?parent=95906"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/categories?post=95906"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/prohoster.info\/cs\/wp-json\/wp\/v2\/tags?post=95906"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}