{"id":459,"date":"2013-02-14T19:49:23","date_gmt":"2013-02-14T18:49:23","guid":{"rendered":"http:\/\/haos.hopto.org\/blog\/?p=459"},"modified":"2019-12-24T09:41:42","modified_gmt":"2019-12-24T08:41:42","slug":"screen-moje-zdalne-autopodlaczanie","status":"publish","type":"post","link":"https:\/\/haos.hopto.org\/blog\/2013\/02\/14\/screen-moje-zdalne-autopodlaczanie\/","title":{"rendered":"Screen &#8211; moje zdalne autopod\u0142\u0105czanie"},"content":{"rendered":"<p>Screen&nbsp;to jak <a title=\"GNU Screen\" href=\"http:\/\/pl.wikipedia.org\/wiki\/GNU_Screen\" target=\"_blank\" rel=\"noopener noreferrer\">wiadomo<\/a> program do rozszerzania standardowego terminalu (lub emulatora terminala) o mo\u017cliwo\u015b\u0107 pracy na wielu ekranach. To uproszczenie ale przedstawia g\u0142\u00f3wn\u0105 idee dzia\u0142ania. Alternatyw\u0105 do niego jest <a title=\"terminal multiplexer\" href=\"http:\/\/tmux.sourceforge.net\/\" target=\"_blank\" rel=\"noopener noreferrer\">tmux<\/a>, jednak ja raczej pozostaj\u0119 wierny pierwowzorowi. U\u017cywam screena w\u0142a\u015bciwie codziennie na komputerze lokalnie, na zdalnym serwerze i wewn\u0105trz wirtualnej maszyny.<\/p>\n<p>Przy zdalnym dost\u0119pie oczywi\u015bcie&nbsp;wykorzystywany&nbsp;jest klient ssh. Dla jego wykorzystania zrobi\u0142em sobie podr\u0119czny skrypt a w\u0142a\u015bciwie funkcj\u0119 <a title=\"pow\u0142oka systemowa UNIX\" href=\"http:\/\/pl.wikipedia.org\/wiki\/Bash\" target=\"_blank\" rel=\"noopener noreferrer\">basha<\/a> automatyzuj\u0105c\u0105 pod\u0142\u0105czenie:<\/p>\n<pre class=\"brush: bash; title: ; notranslate\" title=\"\">\nsshMyHost()\n{\n ssh -L 8080:localhost:8080 -L 8081:remoteHost:8080 myUser@My.Host.com \\\n-t &quot;. \/etc\/profile; screen -dR&quot;\n}\n<\/pre>\n<p>Taka funkcja standardowo \u0142\u0105czy si\u0119 przez ssh z hostem My.Host.com. Ciekawym natomiast jest opcja -t kt\u00f3ra powoduje automatyczne wywo\u0142anie podanego polecenia na zdalnej maszynie. I tu ca\u0142y pic i magia; polecenie to<\/p>\n<pre>. \/etc\/profile; screen -dR<\/pre>\n<p>powoduje i\u017c wczytywany jest g\u0142\u00f3wny profil login shella aby&nbsp;od\u015bwie\u017cy\u0107&nbsp;parametry locale, env itp. a nast\u0119pnie pod\u0142\u0105czamy si\u0119 do istniej\u0105cej sesji screena lub tworzymy now\u0105.<\/p>\n<p>Ta funkcja, mimo i\u017c prosta pozwala&nbsp;zaoszcz\u0119dzi\u0107&nbsp;maaas\u0119 klikania i powtarzania machinalnych czynno\u015bci. Cz\u0119sto u\u017cywane hosty s\u0105 tak zdefiniowane do automatycznego szybkiego pod\u0142\u0105czenia. Oczywista, u\u017cywam autoryzacji sesji SSH przy pomocy kluczy publicznych. D\u0105\u017cymy do tego aby jak najmniej niepotrzebnie klika\u0107 i obci\u0105\u017ca\u0107 nasz\u0105 pami\u0119\u0107 bia\u0142kow\u0105 \ud83d\ude42 Funkcj\u0119 t\u0105 doklejamy do ~\/.bashrc albo ~\/.bash_profile albo aby u\u017cywa\u0107 tego globalnie do \/etc\/bash\/bashrc lub \/etc\/profile. Tym sposobem funkcja automatycznie si\u0119 \u0142aduje do zmiennych \u015brodowiskowych usera.<br \/>\nO obs\u0142udze screena nie b\u0119d\u0119 pisa\u0142 bo ka\u017cdy mo\u017ce znale\u017a\u0107 lepsze, obszerne manuale i tutoriale w sieci.<\/p>\n","protected":false},"excerpt":{"rendered":"<p>Screen&nbsp;to jak wiadomo program do rozszerzania standardowego terminalu (lub emulatora terminala) o mo\u017cliwo\u015b\u0107 pracy na wielu ekranach. To uproszczenie ale przedstawia g\u0142\u00f3wn\u0105 idee dzia\u0142ania. Alternatyw\u0105 do niego jest tmux, jednak ja raczej pozostaj\u0119 wierny pierwowzorowi. U\u017cywam screena w\u0142a\u015bciwie codziennie na &hellip;<\/p>\n<p class=\"read-more\"><a href=\"https:\/\/haos.hopto.org\/blog\/2013\/02\/14\/screen-moje-zdalne-autopodlaczanie\/\">Czytaj wi\u0119cej &raquo;<\/a><\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[3,1],"tags":[68,69,67],"class_list":["post-459","post","type-post","status-publish","format-standard","hentry","category-linux","category-uncategorized","tag-auto-connect","tag-auto-podlaczanie","tag-screen"],"_links":{"self":[{"href":"https:\/\/haos.hopto.org\/blog\/wp-json\/wp\/v2\/posts\/459","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/haos.hopto.org\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/haos.hopto.org\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/haos.hopto.org\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/haos.hopto.org\/blog\/wp-json\/wp\/v2\/comments?post=459"}],"version-history":[{"count":18,"href":"https:\/\/haos.hopto.org\/blog\/wp-json\/wp\/v2\/posts\/459\/revisions"}],"predecessor-version":[{"id":924,"href":"https:\/\/haos.hopto.org\/blog\/wp-json\/wp\/v2\/posts\/459\/revisions\/924"}],"wp:attachment":[{"href":"https:\/\/haos.hopto.org\/blog\/wp-json\/wp\/v2\/media?parent=459"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/haos.hopto.org\/blog\/wp-json\/wp\/v2\/categories?post=459"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/haos.hopto.org\/blog\/wp-json\/wp\/v2\/tags?post=459"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}