Android

Jak používat příkaz scp pro bezpečný přenos souborů

G Suite Migration | The Simple Method

G Suite Migration | The Simple Method

Obsah:

Anonim

SCP (secure copy) je obslužný program příkazového řádku, který umožňuje bezpečně kopírovat soubory a adresáře mezi dvěma umístěními.

Pomocí scp můžete kopírovat soubor nebo adresář:

  • Z místního systému do vzdáleného systému. Z vzdáleného systému do místního systému. Mezi dvěma vzdálenými systémy z místního systému.

Při přenosu dat pomocí scp jsou soubory i heslo šifrovány, takže kdokoli snooping na provozu nebude nic citlivého.

V tomto tutoriálu vám ukážeme, jak používat příkaz scp prostřednictvím praktických příkladů a podrobných vysvětlení nejběžnějších možností scp.

Syntaxe příkazu SCP

Než se podíváme na to, jak používat příkaz scp , začneme kontrolou základní syntaxe.

Syntaxe příkazu scp má následující podobu:

scp SRC_HOST:]file1 DEST_HOST:]file2

  • OPTION - možnosti scp, jako je šifra, konfigurace ssh, port ssh, limit, rekurzivní kopie… atd. SRC_HOST:]file1 - Zdrojový soubor. DEST_HOST:]file2 - Cílový soubor

Místní soubory by měly být zadány pomocí absolutní nebo relativní cesty, zatímco názvy vzdálených souborů by měly zahrnovat specifikace uživatele a hostitele.

scp poskytuje řadu možností, které řídí každý aspekt jeho chování. Nejčastěji používané možnosti jsou:

  • -P Určuje port ssh vzdáleného hostitele. -p Zachovává úpravy souborů a časy přístupu. -q Tuto možnost použijte, pokud chcete potlačit měřič průběhu a chybové zprávy. -C . Tato volba donutí scp komprimovat data, jak jsou odeslána do cílového počítače. -r Tato volba řekne scp aby zkopíroval adresáře rekurzivně.

Než začnete

Příkaz scp se při přenosu dat spoléhá na ssh , takže k ověření na vzdálených systémech je vyžadován klíč nebo heslo ssh.

Dvojtečka ( scp je, jak scp rozlišuje mezi místními a vzdálenými umístěními.

Abyste mohli kopírovat soubory, musíte mít alespoň oprávnění ke čtení ve zdrojovém souboru a oprávnění k zápisu v cílovém systému.

Při kopírování souborů, které sdílejí stejný název a umístění v obou systémech, buďte opatrní, scp přepíše soubory bez varování.

Při přenosu velkých souborů se doporučuje spustit příkaz scp uvnitř relace obrazovky nebo tmux.

Kopírování souborů a adresářů mezi dvěma systémy pomocí scp

Zkopírujte místní soubor do vzdáleného systému pomocí příkazu scp

Chcete-li zkopírovat soubor z místního do vzdáleného systému, spusťte následující příkaz:

scp file.txt [email protected]:/remote/directory

Kde file.txt je název souboru, který chceme kopírovat, remote_username je uživatel na vzdáleném serveru, 10.10.0.2 je IP adresa serveru. Adresář /remote/directory je cesta k adresáři, do kterého chcete soubor zkopírovat. Pokud neurčíte vzdálený adresář, bude soubor zkopírován do domovského adresáře vzdáleného uživatele.

Budete vyzváni k zadání uživatelského hesla a spustí se proces přenosu.

[email protected]'s password: file.txt 100% 0 0.0KB/s 00:00

Vynecháním názvu souboru z cílového umístění zkopírujete soubor s původním názvem. Pokud chcete soubor uložit pod jiným názvem, musíte zadat nový název souboru:

scp file.txt [email protected]:/remote/directory/newfilename.txt

Pokud SSH na vzdáleném hostiteli poslouchá na jiném portu, než je výchozí 22, můžete port specifikovat pomocí argumentu -P :

scp -P 2322 file.txt [email protected]:/remote/directory

Příkaz ke kopírování adresáře je podobný jako při kopírování souborů. Jediný rozdíl je v tom, že musíte použít příznak -r pro rekurzivní.

Chcete-li zkopírovat adresář z místního do vzdáleného systému, použijte volbu -r :

scp -r /local/directory [email protected]:/remote/directory

Zkopírujte vzdálený soubor do lokálního systému pomocí příkazu scp ommand

Chcete-li kopírovat soubor ze vzdáleného do místního systému, použijte vzdálené umístění jako zdroj a místní umístění jako cíl.

Chcete-li například zkopírovat soubor s názvem file.txt ze vzdáleného serveru s IP 10.10.0.2 spusťte následující příkaz:

scp [email protected]:/remote/file.txt /local/directory

Zkopírujte soubor mezi dvěma vzdálenými systémy pomocí příkazu scp

Na rozdíl od rsync , když používáte scp , nemusíte se přihlašovat k jednomu ze serverů, abyste mohli přenášet soubory z jednoho vzdáleného počítače na druhý.

Následující příkaz zkopíruje soubor /files/file.txt ze vzdáleného hostitele host1.com do adresáře /files na vzdáleném hostiteli host2.com .

scp [email protected]:/files/file.txt [email protected]:/files

Budete vyzváni k zadání hesel pro oba vzdálené účty. Data budou přenášena přímo z jednoho vzdáleného hostitele na druhého.

Chcete-li směrovat provoz přes stroj, na kterém je příkaz vydán, použijte volbu -3 :

scp -3 [email protected]:/files/file.txt [email protected]:/files

Závěr

V tomto tutoriálu jste se naučili, jak pomocí příkazu scp kopírovat soubory a adresáře.

Můžete také nastavit autentizaci pomocí klíče SSH a připojit se k serverům Linux bez zadání hesla.

scp terminál