2010-04-26 17:36:01 +0000 2010-04-26 17:36:01 +0000
164
164

Jaka jest różnica pomiędzy SCP a SFTP?

Zazwyczaj używam komendy scp do przesyłania plików na systemach \nix.

Jaka jest różnica między SFTP a SCP? Czy oba nie działają na SSH?

Odpowiedzi (5)

105
105
105
2010-04-26 19:36:45 +0000

Z Wikipedii :

W porównaniu z wcześniejszym protokołem SCP, który pozwala tylko na transfer plików, protokół SFTP pozwala na szereg operacji na zdalnych plikach - jest bardziej zbliżony do protokołu zdalnego systemu plików. Dodatkowe możliwości klienta SFTP w porównaniu do klienta SCP obejmują wznawianie przerwanych transferów, tworzenie list katalogów i zdalne usuwanie plików. 1] Z tych powodów implementacja klienta GUI SFTP jest stosunkowo prosta w porównaniu z klientem GUI SCP.

i

Chociaż zarówno SCP jak i SFTP wykorzystują to samo szyfrowanie SSH podczas transferu plików z tym samym ogólnym poziomem narzutu, SCP jest zazwyczaj znacznie szybszy niż SFTP w transferze plików, szczególnie w sieciach o dużych opóźnieniach. Dzieje się tak, ponieważ SCP implementuje bardziej wydajny algorytm transferu, który nie wymaga oczekiwania na potwierdzenie pakietów. Prowadzi to do większej szybkości, ale odbywa się kosztem braku możliwości przerwania transferu, więc w przeciwieństwie do SFTP, transfer SCP nie może być przerwany bez zakończenia sesji.

100
100
100
2010-04-26 18:10:26 +0000

W skrócie, SCP może być używany tylko do przesyłania plików i jest nieinteraktywny (tzn. wszystko musi być określone w wierszu poleceń). SFTP jest bardziej rozbudowany i pozwala na interaktywne komendy do robienia takich rzeczy jak tworzenie katalogów, usuwanie katalogów i plików (wszystko oczywiście z uwzględnieniem uprawnień systemowych), itp.

9
9
9
2016-01-20 11:04:11 +0000

Z perspektywy linii poleceń:

  • scp nie posiada trybu interaktywnego ani nie może czytać skryptów poleceń, co oznacza, że wszystko musi być napisane w linii poleceń.
  • sftp posiada tryb interaktywny i może czytać komendy z pliku.

Inną ważną różnicą pomiędzy tymi dwoma komendami jest to, że sftp nie może umieścić lokalnego pliku w zdalnej lokalizacji za pomocą jednej linii poleceń, chociaż może uzyskać zdalny plik, podczas gdy scp może zrobić obie te rzeczy.

sftp get remote file

sftp user@host:/path/to/remote.file [/path/to/local.file]

scp get remote file

scp user@host:/path/to/remote.file [/path/to/local.file]

scp put remote file

scp /path/to/local.file user@host:[/path/to/remote.file]
```.
3
3
3
2016-05-25 03:52:12 +0000

SSH (S ecure SH ell) jest kryptograficznym protokołem sieciowym umożliwiającym zdalne logowanie i inne usługi sieciowe, które mogą bezpiecznie działać w niezabezpieczonej sieci.

Różnice: SFTP działa w trybie interaktywnym (sesyjnym), a SCP w nieinteraktywnym. Używając SFTP mamy dostęp do zdalnego systemu plików tj. tworzenie, usuwanie i listowanie plików.

Podobieństwa: Zarówno SCP (S ecure C opy P rotocol) jak i SFTP (S SH F ile T ransfer P rotocol) są protokołami sieciowymi, które wspierają zarządzanie plikami pomiędzy hostami w sieci. Oba używają SSH. więcej

2
2
2
2017-08-13 19:46:17 +0000

Większość różnic między tymi dwoma protokołami została już opisana w innych odpowiedziach, a bardziej dosadnie w https://unix.stackexchange.com/q/8707/19088

Inną różnicą, zgodnie z dokumentacją curl , jest to, że protokół SCP nie jest zbyt przenośny i zwykle działa tylko między systemami uniksowymi.

Przy okazji, curl implementuje oba protokoły i w przeciwieństwie do domyślnej implementacji klienta OpenSSH SFTP, jest nieinteraktywny zarówno dla SFTP jak i SCP.

I zauważ, że istnieje również protokół FISH , który pozwala na transfer plików przez SSH bez potrzeby korzystania z SCP lub SFTP. Z tego co wiem FISH nie jest zbyt popularny, obecnie zaimplementowany jest tylko w kilku menedżerach plików Midnight Commander i kilku opartych na KDE) oraz Lftp .