Pobieranie całego katalogu z serwera zdalnego przez LFTP


21 listopada 2020 / Michał Kortas


Zajmowałem się nie tak dawno przenoszeniem dość dużej aplikacji na nowy serwer. Cały proces zajął ostatecznie kilka dni. Jednak aby samo przełączenie użytkowników do pracy w nowym środowisku odbyło się możliwie bez przerw, największą przeszkodą do pokonania stało się utrzymanie magazynu załączników w aktualnym stanie.

Postanowiłem na bieżąco pobierać zmiany z bieżącego środowiska do nowego za pomocą zautomatyzowanego połączenia SFTP za pomocą LFTP.

Plik konfiguracyjny – mirror dwóch katalogów

Najpierw utworzyłem plik konfiguracyjny. W moim przypadku nazywał się storage_mirror.lftp.

Dodałem do niego następujące komendy.

Za pomocą argumentu --use-pget-n=4  można zdecydować ile plików ma być pobieranych jednocześnie. W tym przypadku są to 4 pliki.

Argument --verbose pokazuje w konsoli bieżący i szczegółowy stan zadania

Uruchamianie pobierania plików

Po zapisaniu pliku konfiguracyjnego połączenia można odpalić skrypt.

Za pierwszym razem – w zależności od zasobności katalogu i prędkości połączenia – proces może potrwać naprawdę długo. Każde późniejsze wywołanie skryptu analizuje całe drzewo plików i katalogów na serwerze zdalnym, pobierając tylko zmiany.

Automatyzacja

Powyższe polecenie dodałem jako zadanie CRON, tak aby wykonywało się co 30 minut.

Dzięki temu katalog z załącznikami na nowym serwerze był na bieżąco aktualizowany.


Tagi:


Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *