Како користити СЦП команду у Линуку

Једноставан водич који ће вам помоћи да пренесете датотеке на удаљени систем са вашег Линук система помоћу сцп команде.

СЦП је скраћеница од 'Сецуре Цопи'. сцп је услужни програм командне линије који нуди Линук који омогућава пренос датотека и директоријума са једне машине на другу преко несигурне мреже.

Ако желите да копирате датотеке са једног система на други, онда сцп може бити веома добра опција за сигуран пренос датотека и директоријума. Када су две комуникационе машине повезане преко исте мреже, тада се користи сцп постаје могуће.

Можете се у великој мери ослонити на сцп команда за поверљивост и интегритет пошто су датотека која се преноси и лозинка која се користи за пренос шифровани. Никакве осетљиве информације неће бити откривене чак и ако неко покуша да уходи у саобраћај док је овај пренос у току.

У овом туторијалу видећемо различите примере сцп команда. Такође ћемо погледати неке од често коришћених опција са сцп команда.

Почетак рада са командом сцп

Помоћу сцп команду можете пренети датотеке/директорије:

  • Са ваше локалне машине на удаљену машину.
  • Између две удаљене машине.
  • Са удаљене машине на вашу локалну машину.

Општа синтакса:

сцп [Опција] [име_изворне_датотеке] [усер@дестинатион_Хост]:дестинатион_фолдер

Хајде да разумемо основне атрибуте ове команде један по један.

  • [соурце_филе_наме] Ово је изворна датотека коју желите да копирате.
  • [корисник@дестинатион_Хост] Ово је корисничко име удаљеног система на који желите да копирате датотеку. ИП адреса удаљене машине се такође користи у овом атрибуту после „@‘ симбол.
  • [Жељена датотека] Ово је директоријум у који желите да сачувате копирану датотеку.

Белешка: дебело црево (:) симбол се користи у синтакси јер разликује локалне и удаљене локације. Користимо дебело црево (:) са удаљеним системом да бисте одредили директоријум у који треба да се копирају датотеке. У случају да не наведемо циљни директоријум, датотеке ће бити копиране у кућни директоријум корисника удаљеног система.

Опције које се користе са сцп

Неке од најпопуларнијих опција које се користе са сцп команде су наведене у наставку.

ОпцијаОпис
дозволите пренос компресије датотеке
дајте детаљан излаз
копирајте датотеке и директоријуме рекурзивно
-псачувајте дозволе, режиме и времена приступа датотекама
промените подразумевани порт који користи сцп команда

Видећемо примере ових опција, даље у туторијалу.

Копирање датотеке са локалног на удаљени систем

сцп омогућава вам да пренесете датотеке са вашег локалног система на удаљени систем користећи следећу синтаксу. Ово вам омогућава да пренесете или отпремите своје датотеке на удаљени сервер.

Општа синтакса:

сцп [име_датотеке] удаљени_корисник@хост:[одредишна_фасцикла]

Пример:

сцп апацхе-томцат-9.0.8.тар.гз роот@143.110.178.221:гаурав

У овом примеру копирамо датотеку „апацхе-томцат-9.0.8.тар.гз“ са локалног система на удаљени систем чија је ИП адреса „143.110.178.221“.

На удаљеном систему, датотека ће сада бити копирана у директоријум под називом „гаурав“.

Излаз:

гаурав@убунту:~$ сцп апацхе-томцат-9.0.8.тар.гз роот@143.110.178.221:гаурав роот@143.110.178.221 лозинка: апацхе-томцат-9.0.8.тар.гз 1090% 795 КБ /с 02:00 гаурав@убунту:~$ 

Хајде да проверимо излаз на удаљеном систему за датотеку.

роот@убунту-с-1вцпу-1гб-блр1-01:~/гаурав# лс апацхе-томцат-9.0.8.тар.гз роот@убунту-с-1вцпу-1гб-блр1-01:~/гаурав#

Дакле, датотека се успешно копира на удаљени систем помоћу сцп команда.

Копирање више датотека на удаљени систем

У претходном примеру смо научили да пренесемо датотеку на удаљени систем помоћу сцп команда. Сада ћемо видети метод за пренос више датотека са вашег локалног система на удаљени систем помоћу ове команде.

Општа синтакса:

сцп [фајл 1] [датотека 2] [датотека н] удаљено_усернаме@ремоте_хост:[специфични директоријум]

Хајде да разумемо овај једноставан процес на примеру.

Пример:

сцп атх.хтмл абц.ткт ппа-пурге_0.2.8+бзр56_алл.деб роот@143.110.178.221:гаурав

Овде се у команди помиње више датотека које треба копирати на удаљени систем.

Излаз:

гаурав@убунту:~$ сцп атх.хтмл абц.ткт ппа-пурге_0.2.8+бзр56_алл.деб роот@143.110.178.221:гаурав роот@143.110.178.221 лозинка: атх.хтмл 1090 КБ 990% 02 абц.ткт 100% 0 0.0КБ/с 00:00 ппа-пурге_0.2.8+бзр56_алл.деб 100% 4360 42.2КБ/с 00:00 гаурав@убунту:~$

На удаљеном систему:

роот@убунту-с-1вцпу-1гб-блр1-01:~/гаурав# лс -л укупно 9800 -рв-р--р-- 1 роот роот 0 5. октобар 08:58 абц.ткт -рв-р-- р-- 1 роот роот 9818695 5. окт 08:35 апацхе-томцат-9.0.8.тар.гз -рв-р--р-- 1 роот роот 204057 5. окт 08:58 атх.хтмл -рв-р-- р-- 1 роот роот 4360 Оцт 5 08:58 ппа-пурге_0.2.8+бзр56_алл.деб роот@убунту-с-1вцпу-1гб-блр1-01:~/гаурав#

Све три датотеке су сада копиране на удаљени систем.

Копирање директоријума на удаљени систем

Можете користити сцп команду за копирање директоријума са вашег локалног система на удаљени систем. Процес је сличан оном код копирања датотеке. Да бисте копирали и садржај директоријума, можете користити опција са сцп команда.

Тхе опција се користи за рекурзивно копирање директоријума. То значи да ће сви подфолдери и датотеке унутар директоријума такође бити копирани.

Општа синтакса:

сцп -р [путања директоријума] удаљено_корисничко име@ремоте_хост:[циљни_директоријум]

Пример:

сцп -р ПицхармПројецтс роот@143.110.178.221:гаурав

Излаз:

гаурав@убунту:~$ сцп -р ПицхармПројецтс роот@143.110.178.221:гаурав роот@143.110.178.221 лозинка: __маин__.пи 100% 623 7.8КБ/с 00:01 нит_0 4_и1 нит_0 . :00 цомплетион.пи 100% 2929 28.1КБ/с 00:00 сеарцх.пи 100% 4728 38.7КБ/с 00:00 унинсталл.пи 100% 2963 32.5КБ/с 00:00 хасх.пи 1.6312% с 00:00 цхецк.пи 100% 1430 16.8КБ/с 00:00 цонфигуратион.пи 100% 7125 50.4КБ/с 00:00 схов.пи 100% 6289 49.8КБ/с 00:00 довнлоад.пи 10230% 8 КБ/с 00:00 гаурав@убунту:~$ 

Помоћу опција са сцп команда копира све поддиректоријуме и датотеке унутар директоријума са локалне машине на удаљени систем.

Приказ детаљних информација о сцп процесу

Можете користити (мала слова в) опција за приказ информација о датотекама које се копирају на удаљеном или локалном систему. Овај тип излаза се такође назива опширним излазом.

Када се користи ова опција, комплетне информације о отклањању грешака о датотеци се приказују на екрану.

Општа синтакса:

сцп -в [име_датотеке] корисничко_име@кориснички_хост:

Пример:

сцп -в апацхе-томцат-9.0.8.тар.гз роот@159.89.170.11:теам

Излаз:

гаурав@убунту:~$ сцп -в апацхе-томцат-9.0.8.тар.гз роот@159.89.170.11:теам Извршавање: програм /уср/бин/ссх хост 159.89.170.11, роот корисника, команда сцп -в -т тим ОпенССХ_7.6п1 Убунту-4убунту0.3, ОпенССЛ 1.0.2н 7. децембар 2017. дебуг1: Читање конфигурационих података /хоме/гаурав/.ссх/цонфиг дебуг1: Читање конфигурационих података /етц/ссх/ссх_цонфиг дебуг1/ /етц_/ссх ред 19: Примена опција за * дебуг1: Повезивање на 159.89.170.11 [159.89.170.11] порт 22. дебуг1: Веза је успостављена. дебуг1: кеи_лоад_публиц: Нема такве датотеке или директоријума дебуг1: датотека идентитета /хоме/гаурав/.ссх/ид_рса тип -1 апацхе-томцат-9.0.8.тар.гз 100% 9589КБ 99,8КБ/с 01:36 дебуг_цханнел цлиент_репут_ин канал 0 ртипе екит-статус репли 0 дебуг1: канал 0: слободан: сесија клијента, канали 1 дебуг1: фд 0 брисање О_НОНБЛОЦК дебуг1: фд 1 брисање О_НОНБЛОЦК Пренесено: послато 9826736, примљено 4016 бајтова у секунди: послато у секунди 101133.9, примљено 41.3 дебуг1: Излазни статус 0 гаурав@убунту:~$ 

Овде, у излазу, можете видети да се информације о отклањању грешака датотеке приказују на вашем терминалу када је сцп команда се користи са опција.

Пренос датотека између два удаљена хоста

Линук вам омогућава да се повежете са више удаљених хостова. Можете да преносите датотеке и директоријуме између два удаљена хоста користећи сцп команда.

Општа синтакса:

сцп даљински_усер_1@хост_1:/[име_датотеке] удаљени_корисник_2@хост_2:[фолдер_то_саве]

Синтакса може изгледати мало шира, али је прилично једноставна. Овде, први део команде даје унос о удаљеном кориснику одакле ће се копирати датотека. дебело црево (:) и / се користи за одређивање имена датотеке или имена директоријума који ће се пренети између две удаљене машине.

Други део даје информације о циљном удаљеном систему где се датотека треба копирати.

Пример:

сцп -р роот@68.183.82.183:гаурав роот@159.89.170.11:/теам

Овде ћемо копирати директоријум под називом 'гаурав' рекурзивно са локалног система на удаљени систем. Датотека ће бити копирана у фасциклу „тим“ на удаљеном систему.

Излаз:

гаурав@убунту:~$ сцп -р роот@68.183.82.183:/гаурав роот@159.89.170.11:/теам роот@68.183.82.183 лозинка: 1.пи 100% 134 261.3КБ/с променљиве. 100% 377 949.2КБ/с 00:00 абц.ткт 100% 0 0.0КБ/с 00:00 атх.хтмл 100% 199КБ 41.8МБ/с 00:00 гаурав@убунту:~$

Овде смо користили сцп команду на локалном систему за пренос директоријума под називом 'гаурав' са једног удаљеног сервера на други.

Пренесите датотеке са удаљеног система на ваш локални систем

Можете лако да пренесете датотеке или директоријуме са удаљеног система на ваш локални систем користећи сцп команда. Једноставнијим речима, можете преузети више датотека или директоријума са удаљеног сервера на ваш локални систем користећи сцп команда.

Општа синтакса:

сцп удаљено_усернаме@усер_хост:/филес/филе.ткт /[фолдер_оф_лоцал_систем]

Излаз:

гаурав@убунту:~$ сцп роот@159.89.170.11:хов.ткт . лозинка роот@159.89.170.11: хов.ткт 100% 11 0,1 КБ/с 00:00 гаурав@убунту:~$

Овде сам преузео (копирао) датотеку са удаљеног сервера у свој кућни директоријум. Дакле, користио сам тачку (.) да наведем у команди за копирање датотеке у мој почетни директоријум.

Пример излаза:

гаурав@убунту:~$ лс -л хов.ткт -рв-р--р-- 1 гаурав гаурав 11 окт 6 09:49 хов.ткт гаурав@убунту:~$ 

Овде је датотека сада копирана у мој кућни директоријум са удаљеног сервера.

На исти начин, можете преузети више датотека или директоријума са удаљеног сервера користећи сцп команду са одговарајућим опцијама.

Компресовање датотека ради бржег преноса

Понекад преношење великих датотека може бити дуготрајно. Овај проблем се може решити током коришћења сцп команда са (велика слова Ц) опција.

Помоћу опција, компримује датотеке веће величине што омогућава бржи пренос и на тај начин штеди време.

Једна занимљива чињеница у вези са овом опцијом је да се датотека копира са оригиналном величином на одредишном систему, али током процеса преноса, величина се компресује како би се омогућио бржи пренос. Дакле, компресија се врши само на мрежи.

Општа синтакса:

сцп -Ц [име_датотеке] корисничко_име@кориснички_хост:[циљна_фасцикла]

Хајде да видимо упоредни пример да бисмо разумели разлику.

Трансфер без -Ц опције:

гаурав@убунту:~$ сцп -рв длинк роот@68.183.82.183:теам Извршавање: програм /уср/бин/ссх хост 68.183.82.183, роот корисника, команда сцп -в -р -т тим ОпенССХ_7.6п1 Убунту-4убунту 3, ОпенССЛ 1.0.2н 7. децембар 2017. дебуг1: Читање конфигурационих података /хоме/тринити/.ссх/цонфиг дебуг1: Читање конфигурационих података /етц/ссх/ссх_цонфиг дебуг1: /етц/ссх/ссх_цонфиг ред 19: Примена опција за * дебуг1 : Повезивање на 68.183.82.183 [68.183.82.183] порт 22. дебуг1: Веза успостављена. дебуг1: цлиент_инпут_цханнел_рек: канал 0 ртипе екит-статус репли 0 дебуг1: канал 0: слободан: сесија клијента, канали 1 дебуг1: фд 0 брисање О_НОНБЛОЦК дебуг1: фд 1 брисање О_НОНБЛОЦК1 Пренесено: послато 045 секунди, примљено од 045 секунди. у секунди: послато 100693,7, примљено 53,7 дебуг1: Излазни статус 0 гаурав@убунту:~$ 

Из горњег излаза можемо видети да је време потребно за трансфер 74,6 секунди. Покушаћемо да пренесемо исту датотеку користећи опцију -Ц и приметићемо разлику.

Пренесите са -Ц опцијом:

гаурав@убунту:~$ сцп -Црв длинк роот@68.183.82.183:теам Извршавање: програм /уср/бин/ссх хост 68.183.82.183, роот корисника, команда сцп -в -р -т тим ОпенССХ_7.6п1 Убунту-4уб 3, ОпенССЛ 1.0.2н 7. децембар 2017. дебуг1: Читање конфигурационих података /хоме/тринити/.ссх/цонфиг дебуг1: Читање конфигурационих података /етц/ссх/ссх_цонфиг дебуг1: /етц/ссх/ссх_цонфиг ред 19: Примена опција за * дебуг1 : Повезивање на 68.183.82.183 [68.183.82.183] порт 22. дебуг1: Веза успостављена. . . вебуплоад.имг 100% 1834КБ 98.7КБ/с 00:18 Начини слања датотеке: Ц0664 1877552 роутер.имг Синк: Ц0664 1877552 роутер.имг роутер.имг 100% 1834КБ: Режим слања ЕКС640 Ц060:1060:1060. 3754103 ДСЛ-2750У-Релеасе-ИН-Т-01.00.07.зип Синк: Ц0664 3754103 ДСЛ-2750У-Релеасе-ИН-Т-01.00.07.зип ДСЛ-2750У-Релеасе-ИН-0п-07. 100% 3666КБ 218.5КБ/с 00:16 Синк: Е дебуг1: цлиент_инпут_цханнел_рек: канал 0 ртипе екит-статус репли 0 дебуг1: канал 0: слободан: сесија клијента, канали 1 дебуг1: фд НОгН1БЛОЦК брисање О де_БУНБЛОЦК О де_буг Пренесено: послато 7518864, примљено 3828 бајтова, за 51,0 секунди Бајтови у секунди: послато 100245,4, примљено 51,0 дебуг1: Излазни статус 0 дебуг1: компримовање одлазних: необрађени подаци 7511925, компримовани 7513136 компресовани 7513136 података: компресовани 1 рабуг7 фактор, дебуг7 фактор компресије 999, фактор 0,68 гаурав@убунту:~$

Овде то можемо лако уочити користећи опција са сцп команда нам је омогућила да компримујемо датотеку преко мреже, што се показало као опција за уштеду времена.

Коришћење другог ссх порта за пренос датотека

Док користите сцп команда подразумевани порт који је распоређен је лука 22. Корисник има слободу да прилагоди овај избор порта. Можете користити (опција П великим словима) са сцп команду за коришћење порта по вашем избору.

Општа синтакса:

цп -П [нови_број_порта] [име_датотеке/име_директорија] удаљени_корисник@хост:[одредишна_фасцикла]

Пример:

сцп -П 4248 длинк роот@68.183.82.183:теам

Користећи горњу команду, датотека ће бити пребачена на удаљени сервер. Али овај пут ће се користити порт порт 4248 уместо подразумеваног лука 22.

Закључак

Након што смо прошли кроз овај водич, научили смо о динамичкој природи сцп команда која се користи за пренос или копирање датотека са једног система на други. Ова опција се такође може користити за преузимање датотека или директоријума са удаљеног сервера. Дакле, можемо закључити да сцп команда се показала веома корисном за пренос датотека када морате истовремено да рукујете са више система као и са удаљеним серверима.