CH-J Server ManagerZarządzanie serwerem przez SSH
Menu
Wszystkie poradniki i artykuły →

Transfer SFTP między dwoma serwerami Linux bez SCP

Kopiuj pliki między dwoma zdalnymi serwerami przez własny komputer, rozwiązuj konflikty i sprawdzaj wynik za pomocą SHA-256.

Dwa sposoby przesyłania danych między serwerami

Jeden serwer może łączyć się bezpośrednio z drugim albo Twój komputer może pośredniczyć w przesyłaniu danych między nimi. Połączenie bezpośrednie jest zwykle szybsze, ale serwer źródłowy musi mieć dostęp sieciowy do docelowego oraz jego dane uwierzytelniające, których możesz nie chcieć zostawiać na serwerze. Przesyłanie przez Twój komputer nie wymaga żadnego z tych warunków: tylko Twój komputer przechowuje dane uwierzytelniające, a serwery nie muszą mieć dostępu do siebie nawzajem. Kosztem jest to, że wszystkie dane przechodzą przez Twoje łącze.

Przesyłanie przez komputer lokalny z wiersza poleceń

Opcja -3 polecenia scp kopiuje między dwoma zdalnymi hostami przez komputer lokalny. Przydaje się do jednorazowego kopiowania, ale nie zapewnia kolejki, a po przerwaniu transferu trzeba uruchomić go ponownie samodzielnie.

scp -3 admin@source.example:/srv/data/archive.tar.gz admin@target.example:/srv/data/

Sprawdź kopię

Zanim cokolwiek usuniesz ze źródła, porównaj sumę kontrolną na obu serwerach. Zgodne wartości SHA-256 wskazują, że plik dotarł bez uszkodzeń. Sam jednakowy rozmiar plików tego nie dowodzi.

ssh admin@source.example sha256sum /srv/data/archive.tar.gz
ssh admin@target.example sha256sum /srv/data/archive.tar.gz

Zdecyduj wcześniej, jak rozwiązywać konflikty

Przed większym transferem zdecyduj, co zrobić, gdy plik już istnieje w miejscu docelowym: nadpisać go, zachować oba czy pominąć. Sprawdź wolne miejsce na serwerze docelowym oraz uprawnienia do katalogu docelowego. Kopiowanie jako zwykły użytkownik nie zachowuje właściciela plików, więc po odtworzeniu aplikacji może być konieczne poprawienie własności jej plików.

Dwa panele w CH-J Server Manager

W Alpha 0.1.1 moduł File Manager ma od jednego do trzech paneli, z których każdy pokazuje dysk lokalny lub dowolną otwartą sesję SSH. Kopiuj lub przenoś pliki między panelami za pomocą klawiatury, przeciągania lub menu kontekstowego. Dane płyną z jednej sesji SFTP do drugiej przez Twój komputer bez zapisywania na jego dysku, a transfery korzystają z kolejki z funkcjami wstrzymywania, wznawiania, anulowania i obsługi konfliktów. Podczas przenoszenia plik źródłowy jest usuwany dopiero po potwierdzeniu zgodności jego SHA-256 i tylko wtedy, gdy nie uległ zmianie.

Ograniczenia, które trzeba uwzględnić

Transfer nie jest bezpośredni, więc jego szybkość zależy od Twojego łącza do obu serwerów, a komputer musi pozostać połączony. Plików, które można odczytać tylko za pomocą sudo, nie da się w ten sposób kopiować między serwerami. Beta 0.1.0 nie zawiera modułu File Manager z wieloma panelami.

Dokumentacja szczegółowa

OpenSSH: sftp →

OpenSSH: scp (-3) →

Biometryczne odblokowanie i bezpieczeństwo →