![Објављен Кали Линук 2020.2](/f/b468993fae46b9f095efb870bd6b817f.png?width=100&height=100)
ССХ или Сецуре Схелл једноставно речено, то је начин на који особа може даљински приступити другом кориснику на другом систему, али само у командној линији, тј. у режиму који није ГУИ. Технички речено, када пређемо на другог корисника на неком другом систему и покренемо команде на томе машина, он заправо ствара псеудо-терминал и повезује га са шкољком за пријављивање пријављеног корисника у.
Када се одјавимо из сесије или се сесија истекне након што смо дуго били у стању мировања, СИГХУП сигнал се шаље на псеудо-терминал и сви послови који су обављени на том терминалу, чак и послови који имају њихови надређени послови који се покрећу на псеудо-терминалу такође се шаљу сигнал СИГХУП-а и приморани су да се прекину.
Не пропустите:5 корисних пракси за заштиту и заштиту ССХ сервера
Само послови који су конфигурисани да игноришу овај сигнал су они који преживе прекид сесије. На Линук системима можемо имати много начина да покренемо ове послове на удаљеном серверу или било којој машини чак и након одјаве корисника и прекида сесије.
Нормални процеси су они који имају животни век сесије. Покрећу се током сесије као процеси у првом плану и завршавају у одређеном временском распону или када се сесија одјави. Ови процеси имају свог власника као било ког важећег корисника система, укључујући и роот.
Сирочански процеси су они који су у почетку имали родитеља који је креирао процес, али након неког времена, родитељски процес је ненамерно умро или се срушио, што је иницирало да буде родитељ тог процеса. Такви процеси имају иницијативу као непосредни родитељ који чека на те процесе док не умру или заврше.
Ово су неки намерно сирочки процеси, такви процеси који су намерно остављени да раде у систему називају се демони или намерно осиромашени процеси. Обично су то дуготрајни процеси који се једном покрећу, а затим одвајају од контроле терминала тако да могу радити у позадини док се не заврше или на крају испишу грешку. Родитељ таквих процеса намерно умире због чега се дете изводи у позадини.
Постоје различити начини да оставите ссх сесије покренуте након прекида везе, као што је доле описано:
екран је текстуални Виндов Манагер за Линук који омогућава кориснику да управља са више терминалских сесија истовремено, пребацивањем између сесија, евидентирањем сесија за покретање сесија на екрану, па чак и наставак сесије у било које време без бриге о одјављивању сесије или затварању терминала.
екранске сесије се могу покренути, а затим одвојити од контролног терминала остављајући их да раде у позадини, а затим се могу наставити у било које време, па чак и на било ком месту. Само требате започети сесију на екрану, а кад желите, одвојите је од псеудо-терминала (или контролног терминала) и одјавите се. Када осетите, можете се поново пријавити и наставити сесију.
Након куцања „Екран“ командом, бићете у новој сесији екрана, у оквиру ове сесије можете креирати нове прозоре, прелазити између прозора, закључавати екран и радити много више ствари које можете радити на нормалном терминалу.
$ сцреен.
Када сесија на екрану започне, можете покренути било коју наредбу и задржати сесију тако што ћете одвојити сесију.
Таман када желите да се одјавите са удаљене сесије, али желите да задржите сесију коју сте креирали на тој машини жив, само оно што требате учинити је одвојити екран од терминала тако да нема контролни терминал лево. Након што то учините, можете се безбедно одјавити.
Да бисте одвојили екран од удаљеног терминала, само притисните „Цтрл+а“
одмах следи „Д“
и вратићете се на терминал видевши поруку да је екран одвојен. Сада се можете безбедно одјавити и ваша сесија ће остати жива.
Ако желите да наставите сесију одвојеног екрана коју сте напустили пре одјаве, само се поново пријавите на удаљени терминал и откуцајте „Сцреен -р“
у случају да је отворен само један екран и ако је отворено више сесија екрана покрените „Сцреен -р
.
$ сцреен -р. $ сцреен -р
Да бисте сазнали више о команди екрана и како је користити, само следите везу: За управљање терминалским сесијама Линук -а користите команду на екрану
Тмук је још један софтвер који је креиран да буде замена за њега екран. Има већину могућности екран, са неколико додатних могућности које га чине моћнијим од екрана.
Омогућава, поред свих опција које нуди екран, дељење панела хоризонтално или вертикално више прозора, промена величине прозора, надгледање активности сесије, скриптовање помоћу режима командне линије итд. Због ових карактеристика тмука, уживао је широку примену у скоро свим Уник дистрибуцијама, па чак је и укључен у основни систем ОпенБСД -а.
Након што урадите ссх на удаљеном хосту и откуцате тмук, ући ћете у нову сесију са новим прозором испред себе, у којем можете радити све што радите на нормалном терминалу.
$ тмук.
Након обављања операција на терминалу, можете одвојити ту сесију од управљачког терминала тако да оде у позадину и можете се сигурно одјавити.
Или можете да трчите „Тмук детацх“
при покретању тмук сесије или можете користити пречицу (Цтрл+б па д)
. Након овога ваша тренутна сесија ће се одвојити и вратит ћете се на свој терминал с којег се можете сигурно одјавити.
$ тмук детацх.
Да бисте поново отворили сесију коју сте одвојили и оставили такву каква је била када сте се одјавили из система, само се поново пријавите на удаљену машину и откуцајте „Тмук аттацх“ да се поново прикључите на затворену сесију и она ће и даље бити тамо и радити.
$ тмук аттацх.
Да бисте сазнали више о тмук -у и како га користити, само следите везу: Користите Тмук Терминал Мултиплекер за управљање са више Линук терминала.
Ако нисте толико упознати екран или тмук, можете користити нохуп и пошаљите своју дуготрајну команду у позадину да бисте могли да наставите док ће наредба наставити да се извршава у позадини. Након тога можете се безбедно одјавити.
Помоћу нохуп команде говоримо процесу да игнорише СИГХУП сигнал који се шаље ссх сесијом по завршетку, чиме се наредба наставља и након одјаве са сесије. Приликом одјаве сесије, команда се одваја од контролног терминала и наставља да ради у позадини као демон процес.
Ево једноставног сценарија у коме смо покренули наредба финд за тражење датотека у позадини на ссх сесији користећи нохуп, након чега је задатак послат у позадину са брзим враћањем одмах давањем ПИД и посао ИД процеса ([ЈОБИД] ПИД)
.
# нохуп финд / -типе ф $ гт; филес_ин_систем.оут 2> 1 &
Када се поново пријавите, можете проверити статус команде, вратити је у први план помоћу 'фг %ЈОБИД'
да прати његов напредак и тако даље. Испод, излаз показује да је посао довршен јер се не приказује при поновном пријављивању, и дао је излаз који се приказује.
# фг %ЈОБИД.
Још један елегантан начин да дозволите да ваша команда или један задатак ради у позадини и остану живи чак и након одјаве са сесије или прекида везе је коришћењем одрицати се.
Одбачено, уклања посао са листе послова процеса система, тако да је процес заштићен од убијања током прекида везе јер неће примити СИГХУП оклопом када се одјавите.
Недостатак ове методе је то што би је требало користити само за послове за које није потребан никакав улаз стдин и нема потребе да пишете стдоут, осим ако посебно не преусмерите улаз и излаз послова, јер када ће посао покушати да ступи у интеракцију са стдин или стдоут, зауставиће се.
У наставку смо послали пинг команда у позадину тако да ут наставља да ради и да буде уклоњен са листе послова. Као што се види, посао је прво обустављен, након чега се још увек налазио на списку послова као ИД процеса: 15368.
$ пинг тецминт.цом> пингоут & $ послови -л. $ дисовн -х %1. $ пс -еф | греп пинг.
Након што је тај одбачени сигнал пренет на посао и уклоњен је са листе послова, иако је и даље радио у позадини. Посао би и даље био активан када бисте се поново пријавили на удаљени сервер као што је приказано испод.
$ пс -еф | греп пинг.
Још један алат за постизање потребног понашања је сетсид. Нохуп има недостатак у смислу да процесна група процеса остаје иста, па је процес који ради са нохупом рањив на било који сигнал који се шаље целој процесној групи (нпр. Цтрл + Ц.
).
сетсид с друге стране додељује нову групу процеса процесу који се извршава, па је сам процес креиран потпуно у новоодређеној процесној групи и може се безбедно извршавати без страха да ће бити убијен чак и након сесије одјавити се.
Овде показује да је процес „Спавај 10 м“
је одвојена од управљачког терминала, од времена када је направљена.
$ сетсид слееп 10м. $ пс -еф | греп слееп.
Сада, када бисте се поново пријавили на сесију, и даље ћете пронаћи да је овај процес покренут.
$ пс -еф | греп [с] лееп.
На које начине бисте могли смислити да ваш процес ради чак и након одјаве са ССХ сесије? Ако можете смислити неки други и ефикасан начин, наведите то у коментарима.