GNU/Linux >> Znalost Linux >  >> Linux

10 Praktické příklady použití příkazu scp

Pravděpodobně již znáte příkaz cp v Linuxu, který se používá ke kopírování souborů v Linuxu. příkaz cp lze použít pouze na místním počítači.

Ale co kopírování souborů ze vzdáleného systému Linux? Pro kopírování souborů ze vzdáleného serveru nebo na vzdálený server můžete použít příkaz scp.

Drobnosti:scp je zkratka pro Secured Copy.

syntaxe příkazu scp

Syntaxe a použití příkazu scp jsou podobné příkazu cp a brzy je uvidíte v těchto příkladech příkazů scp.

Nejprve se však podívejme na syntaxi příkazu scp:

scp <options> source_path destination_path

V závislosti na původu souboru, který má být zkopírován, může být zdrojem klient nebo server. Pokud je zdrojem klient, pak cílem je server a naopak.

Ale to zní příliš jednoduše, že? Hlavním cílem příkazu scp je n používat správný formát pro formát zdrojové nebo cílové cesty.

Typická cesta k souboru nebo adresáři na serveru je uvedena v tomto formátu:

<username>@<ip_address_of_system>:<path_to_the file/directory>

Ve skutečnosti můžete také použít [email protected] v příkazu scp, ale je pravděpodobnější, že skončíte s chybou „Nelze vyřešit název hostitele “.

Je to proto, že korelace názvu hostitele s IP adresou závisí na konfiguraci sítě serveru. Použití skutečné IP adresy vám ušetří potíže.

Na co je třeba pamatovat před použitím příkazu scp

Zde je několik věcí, které potřebujete, než budete moci používat příkaz scp na vašem systému Linux:

  • Ujistěte se, že je ssh nainstalováno a spuštěno na klientských i serverových počítačích, protože příkaz scp interně používá ssh. Pokud ssh není nainstalováno, nainstalujte jej pomocí příkazu “sudo apt install ssh“ na počítačích založených na Debianu nebo pomocí příslušných správců balíčků vašeho distribuce.
  • Musíte znát uživatelské jméno a heslo vzdáleného systému. Budete vyzváni k zadání hesla vzdáleného hostitele. Přenos souborů bude zahájen pouze když zadáte správné heslo vzdáleného hostitele.

Použití příkazu scp v Linuxu:10 praktických příkladů

Nyní, když jsme viděli syntaxi příkazu scp a formát pro určení cesty k serveru, podívejme se nyní, jak použít příkaz scp.

1. Kopírování souboru do vzdáleného systému pomocí příkazu scp

Chcete-li zkopírovat jeden soubor z místního počítače do vzdáleného hostitele, zadejte cestu k souboru jako zdrojovou cestu a cestu ve vzdáleném hostiteli, kam má být soubor zkopírován.

scp abc.txt [email protected]<ip_address_of_xyz>:/home/xyz/Desktop

2. Kopírování souboru ze vzdáleného systému pomocí příkazu scp

Kopírování souboru ze vzdáleného systému do místního systému je v podstatě stejné. Stačí zadat úplnou cestu k souboru na vzdáleném systému a cestu na místním systému.

Chcete-li tedy zkopírovat soubor ze vzdáleného systému do aktuálního adresáře, jednoduše použijte příkaz následujícím způsobem:

scp [email protected]<ip_address_of_xyz>:/remote/user/home/abc.txt .

3. Kopírování více souborů pomocí příkazu scp

Chcete-li zkopírovat více souborů z místního počítače na hostitele, stačí zadat název souborů jako zdrojovou cestu.

scp abc.txt def.txt [email protected]<ip_address_of_xyz>:/home/xyz/Desktop

4. Kopírování celého adresáře pomocí příkazu scp

Kopírování adresáře pomocí scp je také stejné jako u příkazu cp. Můžete použít volbu -r a zadat název složky jako zdrojovou cestu. Toto se nazývá rekurzivní režim.

scp -r ~/Desktop/test [email protected]<ip_address_of_xyz>:/home/xyz/Desktop

Můžete také zadat více než jeden adresář a zkopírovat je všechny jedním příkazem.

5. Podrobnosti o přenosu souborů naleznete ve výstupu

Pokud vás zajímá, co se děje v zákulisí při kopírování, můžete použít volbu -v k zobrazení všech procesů, které se provádějí, včetně ladění, stavu ukončení, šifrování, dešifrování atd. Říká se tomu podrobný režim.

scp -v abc.txt [email protected]<ip_address_of_xyz>:/home/xyz/Desktop

6. Kopírování souborů přes dva vzdálené hostitele

Doposud jste viděli, jak kopírovat z místního počítače na vzdálený počítač.
Chcete-li kopírovat soubory z jednoho vzdáleného počítače do jiného vzdáleného počítače, zadejte cesty ke zdroji i cíli ve formátu vzdáleného počítače, jak je uvedeno výše.

scp [email protected]<ip_address_of_abc>:<path_of_file_or_folder> [email protected]<ip_address_of_xyz>:<path_of_file_or_folder

Netřeba dodávat, že zde potřebujete znát heslo obou systémů.

7. Kopírování souborů s kompresí [zkracuje dobu přenosu]

Pokud se pokusíte zkopírovat spoustu souborů dohromady, bude to trvat déle než přenos jednoho souboru o velikosti odpovídající součtu všech jednotlivých souborů.

Pokud máte pocit, že potřebujete zvýšit rychlost přenosu souborů, můžete soubory zkomprimovat pomocí volby -C a přenést soubory.

Nejlepší na tom je, že ke kompresi dochází pouze při přenosu. Po dokončení přenosu budou soubory uloženy v původní podobě. Neuvidíte archivní soubor, ale všechny jednotlivé soubory tak, jak byly na vzdáleném serveru.

scp -C abc.txt [email protected]<ip_address_of_xyz>:/home/xyz/Desktop

8. Omezení šířky pásma přenosu souborů

Pokud máte pocit, že přenos souborů využívá většinu šířky pásma, můžete snížit šířku pásma přenosu souborů pomocí volby -l následované novou rychlostí šířky pásma.

scp -l 800 abc.txt [email protected]<ip_address_of_xyz>:/home/xyz/Desktop

Všimněte si, že šířka pásma, kterou zadáte v příkazu, je v kilobitech za sekundu, ale při přenosu souborů bude výstup příkazu scp ukazovat přenosovou rychlost v kilobajtech za sekundu.

Protože 1 bajt=8 bitů, z 8300 kilobitů za sekundu v parametru příkazu se stane 100 kilobajtů za brzy ve výstupu příkazu.

9. Zachování původních atributů zkopírovaných souborů

Pokud potřebujete zachovat původní atributy souboru, jako jsou oprávnění a vlastnictví souboru, časová razítka souboru atd., použijte volbu -p.

scp -p abc.txt [email protected]<ip_address_of_xyz>:/home/xyz/Desktop

10. Skrytí výstupu příkazu scp

Pokud vám nevyhovuje zdlouhavý výstup příkazu scp, můžete se vyhnout výstupu příkazu pomocí volby -q. Tomu se říká klidný režim.

Dokonce skryje průběh kopírování souborů.

scp -q abc.txt [email protected]<ip_address_of_xyz>:/home/xyz/Desktop

Ve výše uvedených příkladech jste viděli, jak zkopírovat soubory na vzdálený hostitel z místního počítače. Pokud potřebujete zkopírovat soubory ze vzdáleného hostitele do místního počítače, napište cestu k souboru/složce, která se má zkopírovat ze vzdáleného hostitele, jako zdrojovou cestu a cestu, kam má být soubor/složka v místním počítači vložen, jako cíl cesta.

Další podrobnosti o příkazu scp naleznete na jeho manuálové stránce.

Doufám, že jste nyní pochopili, jak co nejlépe využít příkaz scp k bezpečnému kopírování souborů mezi počítači. Osobně dávám přednost použití příkazu rsync před scp, protože rsync má více funkcí.

Pokud narazíte na nějaké problémy, zeptejte se v sekci komentářů níže. A pokud znáte nějaký další skvělý tip příkazu scp, podělte se o něj s ostatními zde.


Linux
  1. cp Command v Linuxu:7 praktických příkladů

  2. Linux Shutdown Command:5 praktických příkladů

  3. Příkaz nslookup:7 praktických příkladů

  1. 5 Praktické příklady příkazu dd v Linuxu

  2. 10 Praktické příklady příkazů Linux nm

  3. Příklady použití příkazu dmsetup v Linuxu

  1. 16 Praktické příklady příkazu Linux LS pro začátečníky

  2. 10 praktických příkladů příkazů Grep pro vývojáře

  3. 5 Praktické příklady příkazů linuxové fixační jednotky