Słyszałeś to od czasu do czasu: twórz kopie zapasowe danych. Istnieje wiele rozwiązań do tworzenia kopii zapasowych, ale nic nie jest lepsze niż proste i darmowe rozwiązanie. Tak więc dzięki kilku linijkom kodu i bardzo przydatnemu programowi o nazwie WinSCP, stworzymy automatyczną synchronizację między serwerem FTP a twoim domowym komputerem.
FTP (File Transfer Protocol) to protokół internetowy, który umożliwia użytkownikom przesyłanie plików między komputerami. Pomimo starości (myśl przed epoką TCP / IP), FTP i jego siostrzany protokół SFTP (Secure File Transfer Protocol) są wciąż bardzo popularne i są postrzegane jako łatwy sposób przesyłania plików lokalnie i przez Internet. Jest to również bardzo dobry sposób na przechowywanie zdalnych ważnych plików przechowywanych na serwerze FTP.
Jeśli nie chcesz płacić za rozwiązanie FTP innej firmy, zapoznaj się z tym artykułem, jak zbudować własny serwer FTP napisany przez dobrych ludzi w Lifehacker.
Po pobraniu kopii WinSCP zainstaluj plik .exe na swoim komputerze. Nie jest też złym pomysłem, aby zacząć pamiętać swój adres FTP, nazwę użytkownika i hasło podczas instalacji WinSCP.
Teraz, gdy mamy zainstalowany WinSCP, stworzymy i zapiszemy nowy profil sesji, aby później ułatwić dostęp. Na ekranie logowania wprowadź nazwę hosta (np. Ftp.howtogeek.com), nazwę użytkownika i hasło. Możesz użyć FTP lub SFTP, ale pamiętaj, aby zmienić numer portu na odpowiedni port dostarczony przez hosta FTP. Następnie kliknij przycisk Zapisz, aby zapisać profil. Otwórz profil, aby zalogować się do serwera FTP. To sprawdzi, czy wpisałeś odpowiednie dane uwierzytelniające w profilu.
Zamierzamy stworzyć prosty skrypt, który zaloguje się do twojego serwera FTP, powie WinSCP, gdzie pobrać brakujące pliki na twój komputer, a następnie tworzy plik dziennika, który rejestruje aktywność FTP. Śmiało otwórz Notatnik na swoim komputerze. Skopiuj następujący szablon skryptu do Notatnika:
opcja wsadowa włączona
opcja potwierdź
otwórz [email protected]
kopie cd
opcja transferu binarnego
get / testremote * f: \ backups \ testlocal \ *
zsynchronizuj lokalne f: \ backups \ testlocal testremote
wyjście
Oto krótkie wyjaśnienie tego, co się dzieje w skrypcie. WinSCP odpowie negatywnie na wszystkie monity, aby uniknąć trzymania skryptu. Następnie po nadejściu polecenia automatycznie nadpisze pliki. Następnie loguje się do serwera FTP, korzystając z profilu, który stworzyliśmy wcześniej, zmienia katalogi (w razie potrzeby) i przenosi dane binarne (w przeciwieństwie do ASCII). Wreszcie odczytuje zdalny katalog FTP i przesyła pliki do określonego katalogu lokalnego. Aby uzyskać jeszcze więcej opcji, sprawdź oficjalną stronę skryptów WinSCP.
Teraz przed zmodyfikowaniem lub uruchomieniem tego skryptu zalecamy utworzenie katalogów testowych zarówno na zdalnych, jak i lokalnych obiektach docelowych. Ostatnią rzeczą, którą chcesz, jest przypadkowe wyczyszczenie serwera FTP bez żadnych kopii zapasowych. Stwórz więc na swoim komputerze katalog o nazwie "testlocal" (stworzyliśmy go pod f: \ backups), a inny o nazwie "testremote" na twoim serwerze FTP (stworzyliśmy go w katalogu głównym). Po uruchomieniu skryptu i jego wykonaniu, zapisz go jako "sync.txt" na swoim komputerze (zapisaliśmy nasz w naszym folderze testlocal). Teraz możesz zautomatyzować skrypt.
Zamierzamy pozwolić systemowi Windows obsługiwać automatyzację za pomocą wbudowanego Harmonogramu zadań. W systemie Windows 7 uruchom, otwierając Panel sterowania> System i zabezpieczenia> Narzędzia administracyjne> Harmonogram zadań.
W prawej kolumnie kliknij przycisk Utwórz podstawowe zadanie.
Nazwij i opisz swoje zadanie, a następnie kliknij Dalej.
Kolejna opcja określi, jak często zadanie będzie uruchamiane. Zdecydowaliśmy się uruchomić skrypt za każdym razem, gdy włączymy komputer. Możesz wybrać rzadszą opcję, taką jak Tygodniowa, aby uruchamiać ją rzadziej.
Na następnym ekranie wybierz "Uruchom program" i kliknij Dalej. Zostaniesz poproszony o wyszukanie programu lub skryptu. Kliknij przycisk Przeglądaj i przejdź do "C: \ Program Files \ WinSCP", aby wybrać plik WinSCP.exe. Pod spodem dodaj "/ console /script=f:\backup\sync.txt / log=f:\backup\log.txt", aby dodać argumenty. Pamiętaj, aby zmienić argumenty, jeśli plik sync.txt znajduje się w innej lokalizacji i chcesz wygenerować plik dziennika w innej lokalizacji. Kliknij Następny.
Zobaczysz podsumowanie swojego zadania. Jeśli wygląda poprawnie, kliknij przycisk Zakończ. Na koniec, aby zapewnić prawidłowe działanie zadania, uruchomimy go. Upewnij się, że w katalogu testremote znajduje się co najmniej jeden plik (np. "Thisisatest.txt"). Zaznacz nowo utworzone zadanie i kliknij Uruchom w prawej kolumnie. Powinien pojawić się wiersz polecenia, połączyć się z serwerem FTP, a następnie zsynchronizować plik (i).
Twoje zadanie testowe powinno zostać ukończone, a plik testowy powinien znajdować się w określonym folderze lokalnym. Jeśli napotkasz jakiekolwiek błędy, sprawdź plik dziennika, aby dowiedzieć się, dlaczego.
To wszystko, co jest! Masz teraz darmowe rozwiązanie do tworzenia kopii zapasowych, które pozwoli zsynchronizować wszystkie twoje pliki FTP z folderem lokalnym. Jeśli serwer FTP kiedykolwiek ulegnie awarii lub przypadkowo usuniesz plik, możesz odzyskać kopię ze swojego komputera!