GNU/Linux >> Znalost Linux >  >> Linux

Jak používat příkazy a možnosti SFTP

Úvod

SFTP (Safe File Transfer Protocol) je součástí protokolu SSH určeného k bezpečnému přenosu souborů mezi vzdálenými systémy. Umožňuje uživatelům prohlížet, spravovat a měnit oprávnění k souborům a adresářům na vzdálených systémech.

V tomto tutoriálu si projdeme příkazy, které můžete použít s SFTP, a pro každý z nich poskytneme vysvětlení, možnosti a příklady.

Předpoklady

  • Přístup k místnímu systému a vzdálenému serveru připojený pomocí páru veřejných klíčů SSH.
  • Fungující připojení k internetu.
  • Přístup do okna terminálu.

Seznam příkazů a možností SFTP

SFTP umožňuje uživatelům přenášet data mezi vzdáleným serverem SFTP a místním klientským systémem. SFTP používá síťový protokol SSH k propojení dvou systémů, které sdílejí veřejný klíč SSH.

Připojením k serveru SFTP se otevře rozhraní shellu SFTP. Rozhraní prostředí SFTP podporuje následující příkazy:

Příkaz Popis
cd [path] Změňte adresář na vzdáleném serveru na [path] .
lcd [path] Změňte adresář v místním systému na [path] .
chgrp [group ID] [path] Změnit vlastnictví skupiny na [group ID] pro soubor nebo složku umístěnou na [path] .
chmod [mode] [path] Změnit vlastnictví na [mode] pro soubor nebo složku umístěnou na [path] .
chown [user ID] [path] Změnit vlastnictví uživatele na [user ID] pro soubor nebo složku umístěnou na [path] .
help Zobrazte text nápovědy.
get [remote path] [local path] Přeneste soubor nebo adresář z [remote path] na vzdáleném serveru na [local path] v místním systému.
lls [options] [path] Zobrazit výpis pro adresář umístěný na [path] na místním systému. Používá ls možnosti příkazů.
ln [old path] [new path] Vytvořte symbolický odkaz ze [old path] na [new path] na vzdáleném serveru.
lmkdir [path] Vytvořte adresář na [path] v místním systému.
lpwd Zobrazit aktuální místní adresář.
ls [options] [path] Zobrazit výpis pro adresář umístěný na [path] na vzdáleném serveru. Používá ls možnosti příkazů.
lumask [mask] Nastavit masku místních oprávnění na [mask] .
mkdir [path] Vytvořte adresář na [path] na vzdáleném serveru.
put [local path] [remote path] Přeneste soubor nebo adresář z [local path] v místním systému na [remote path] na vzdáleném serveru.
pwd Zobrazit aktuální vzdálený adresář.
exit Opusťte rozhraní SFTP.
exit Opusťte rozhraní SFTP.
rename [old path] [new path] Přejmenujte soubor na vzdáleném serveru z [old path] na [new path] .
rmdir [path] Odeberte adresář umístěný na [path] na vzdáleném serveru.
rm [path] Odeberte soubor umístěný na [path] na vzdáleném serveru.
symlink [old path] [new path] Vytvořte symbolický odkaz ze [old path] na [new path] na vzdáleném serveru.
version Zobrazit aktuální verzi SFTP
![command] Spustit <strong>[command]</strong> v místním prostředí.
! Dočasně přejít do místního prostředí.
? Zobrazte text nápovědy.

Připojování k SFTP

Připojení k SFTP používá stejnou syntaxi jako připojení ke vzdálenému systému pomocí SSH:

sftp [username]@[remote hostname or IP address]

Například připojení k serveru pomocí phoenixnap uživatelské jméno na IP adrese 192.168.100.7 :

sftp [email protected]

Pokud je připojení úspěšné, shell se přesune do rozhraní SFTP, což je označeno sftp> místo aktuálního uživatelského jména:

Při připojování ke vzdálenému systému pomocí SFTP použijte s sftp následující možnosti příkaz pro změnu jeho chování:

Možnost Popis
-1 Při připojování použijte verzi 1 protokolu SSH.
-4 Používejte pouze adresy IPv4.
-6 Používejte pouze adresy IPv6.
-A Umožňuje předávání ověřovacího agenta SSH na vzdálený server.
-a Pokuste se pokračovat v přerušených přenosech souborů.
-B [buffer size] Nastavte vlastní velikost vyrovnávací paměti (výchozí hodnota je 32 768 bajtů).
-b [batch file] Zadejte dávkový soubor pro spuštění sftp příkaz v dávkovém režimu.
-C Použít kompresi souborů.
-c [cipher] Vyberte šifru, která se použije při šifrování dat pro přenos.
-D [SFTP server path] Připojte se k místnímu serveru SFTP bez použití SSH.
-F [SSH configuration file] Určete konfigurační soubor SSH, který se má použít při připojování.
-f Vyprázdněte soubory na disk ihned po přenosu.
-i [private key file] Vyberte soubor, který obsahuje soukromý klíč pro ověření veřejného klíče.
-J [destination] Nastavte předávání TCP přes zadaný cíl.
-l [kbit/s] Nastavte limit pro šířku pásma připojení v kbit/s.
-N Zakažte tichý režim.
-o [SSH option] Při připojování k SFTP přidejte možnost příkazu ssh.
-P [port number] Nastavte port, ke kterému se chcete připojit.
-p Při přenosu zachovejte oprávnění k souboru a doby přístupu.
-q Povolte tichý režim.
-R [number of requests] Nastavte počet povolených souběžných požadavků na přenos souborů.
-r Přenášejte adresáře rekurzivně.
-S [client] Určete klienta SFTP, kterého chcete použít k připojení.
-s [SSH subsystem or SFTP server path] Vyberte cestu podsystému SSH2 nebo serveru SFTP.
-v Uchovávejte podrobný protokol relace.

Použijte exit příkaz k ukončení aktuálního připojení:

exit

Přenos souborů

Použijte get a put příkazy k vytvoření požadavku na přenos souboru v SFTP. get příkaz přenese soubory ze vzdáleného serveru do místního systému, zatímco put příkaz dělá opak.

get používá následující základní syntaxi:

get [path to file]

Pomocí get příkaz přenese soubor ze vzdáleného serveru do Domů místního systému adresář. Například:

get example01.txt

Na druhou stranu pomocí put příkaz přenese soubor z místního systému do Domů vzdáleného serveru adresář:

put example02.txt

Chcete-li přenést soubor do jiného adresáře, připojte název adresáře na konec get nebo put příkaz:

get [path to file] [path to directory]
put [path to file] [path to directory]

Chcete-li změnit název souboru v místním systému, připojte nový název souboru na konec příkazu:

get [path to file] [new file name]
put [path to file] [new file name]

get a put příkazy používají následující možnosti:

Možnost Popis
-a Pokuste se obnovit přenos souboru.
-f Vyprázdněte soubor na disk ihned po přenosu.
-p Zachovejte při přenosu oprávnění k souboru a doby přístupu.
-R Přeneste celý adresář rekurzivně. Při použití této možnosti definujte cestu k adresáři namísto cesty k souboru.

Změna oprávnění k souboru

SFTP také umožňuje upravit oprávnění k souborům a adresářům na vzdáleném serveru. chown příkaz změní vlastnictví souboru pro jednotlivé uživatele:

chown [user ID] [path to file]

Na rozdíl od chown příkaz, který vyžaduje ID uživatele, funguje příkaz chmod stejně jako ve standardním shellu:

chmod [permission] [path to file]

Další možností je použít chgrp příkaz ke změně skupinového vlastnictví souboru:

chgrp [group ID] [path to file]

SFTP vám také umožňuje nastavit místní umask a změnit výchozí oprávnění pro všechny budoucí soubory přenesené do místního systému. Použijte lumask příkaz k nastavení nového místního umask:

lumask [permission mask]

Správa souborů a adresářů

SFTP poskytuje možnosti, které uživatelům umožňují kontrolovat a spravovat soubory na místním systému i na vzdáleném serveru. ls umožňuje vypsat seznam souborů a adresářů na vzdáleném serveru. Například:

ls -l

Podobně lls (místní ls ) zobrazí seznam souborů a adresářů v místním systému:

lls -l

cd a lcd příkazy mění aktuální pracovní adresář na vzdáleném serveru nebo místním systému:

cd [path to directory on the remote server]
lcd [path to directory on the local system]

Pomocí příkazu mkdir vytvoříte na vzdáleném serveru adresář s cestou, kterou zadáte:

mkdir [path to the new directory on the remote server]

Například vytvoření Example_Directory v Domů adresář:

mkdir Example_Directory

mkdir příkaz nemá žádný výstup, takže musíte použít ls příkaz k ověření výsledku:

Podobně jako tento lmkdir příkaz vytvoří adresář v místním systému:

lmkdir [path to the new directory on the local system]

Pomocí stejného příkladu:

lmkdir Example_Directory

rename příkaz změní název souboru nebo adresáře na vzdáleném serveru:

rename [old path] [new path]

Například přejmenování example01.txt do sampledoc.txt :

rename example01.txt sampledoc.txt

Pomocí rm příkaz odstraní soubor ze vzdáleného serveru:

rm [path to file]

Například odstranění souboru sampledoc.txt soubor:

rm sampledoc.txt

Podobně rmdir příkaz odebere adresář ze vzdáleného serveru:

rmdir [path to directory]

Například odstranění Example_Directory :

rmdir Example_Directory

ln a symlink příkazy vytvoří symbolický odkaz na soubor nebo adresář na vzdáleném serveru:

ln [old path] [new path]
symlink [old path] [new path]

Například vytvoření odkazu na example02.txt s názvem example_link pomocí ln příkaz:

ln example02.txt example_link

pwd příkaz zobrazí aktuální pracovní adresář na vzdáleném serveru jako výstup:

pwd

Na druhé straně lpwd příkaz vytvoří výstup, který ukazuje aktuální pracovní adresář v místním systému:

lpwd

Spouštění místních příkazů prostředí

SFTP umožňuje spouštět příkazy pomocí místního prostředí přidáním vykřičníku (! ) před příkazem. To umožňuje uživatelům spouštět příkazy, které nejsou součástí standardního shellu SFTP na místním systému.

SFTP například nepodporuje tree příkaz v Linuxu. Pomocí místního shellu můžete spustit tento příkaz v rozhraní SFTP:

!tree

Pomocí vykřičníku (! ) bez příkazu dočasně přesune uživatele do lokálního shellu. Chcete-li se vrátit do prostředí SFTP, použijte exit příkaz.

Další příkazy

Pomocí help nebo ? příkazy zobrazí text nápovědy pro rozhraní SFTP. Nápověda poskytuje seznam příkazů dostupných v prostředí SFTP.

version zobrazí aktuální verzi nainstalovaného protokolu SFTP:

SFTP Cheat Sheet PDF

Níže naleznete jednostránkový referenční list obsahující všechny výše uvedené příkazy a možnosti SFTP. Uložte jej jako soubor PDF kliknutím na odkaz níže.

STÁHNOUT SFTP Cheat Sheet


Linux
  1. Jak používat příkazy historie Bash

  2. Jak používat příkazy „cat“ a „tac“ s příklady v Linuxu

  3. Jak uložit příkazy Linuxu a používat je na vyžádání

  1. Jak nainstalovat a používat Flatpak v Linuxu

  2. Použijte SFTP a SCP

  3. Jak používat příkazy strace a ltrace v Linuxu

  1. Jak nainstalovat a používat obrazovku Linux s příkazy

  2. Co je to chroot jail a jak jej používat?

  3. Jak mohu v Bash používat společně příkazy watch a jobs?