Hur säkerhetskopieras automatiskt dina webbserverfiler med WinSCP över FTP
Du har hört det gång på gång: säkerhetskopiera dina data. Det finns gott om backup-lösningar, men inget är bättre än en enkel och fri lösning. Så med några rader av kod och ett mycket användbart program som heter WinSCP, kommer vi att ställa in en automatisk synkronisering mellan din FTP-server och din hemdator.
FTP (File Transfer Protocol) är ett internetprotokoll som tillåter användare att överföra filer mellan datorer. Trots sin ålder (tänk före TCP / IP-eran) är FTP och dess systerprotokoll SFTP (Secure File Transfer Protocol) fortfarande mycket populära idag och betraktas som ett enkelt sätt att överföra filer lokalt och över Internet. Det råkar också vara ett mycket bra sätt att hålla en fjärrbackup av viktiga filer som du behåller på din FTP-server.
Om du inte vill betala för en tredjeparts FTP-lösning, kolla in den här artikeln om hur du bygger din egen FTP-server skrivet av de finaste på Lifehacker.
Krav
- En FTP-server och åtkomstuppgifter
- En Windows-dator
- En kopia av WinSCP (endast Windows)
Konfigurera WinSCP
När du har laddat ner din kopia av WinSCP, installerar du .exe på din dator. Det skulle inte vara en dålig idé att börja komma ihåg din FTP-adress, användarnamn och lösenord medan WinSCP installerar.
Nu när vi har WinSCP installerat, kommer vi att skapa och spara en ny session profil för lättare åtkomst senare. Ange inloggningsskärmen ditt värdnamn (dvs. ftp.howtogeek.com), användarnamn och lösenord. Du kan använda antingen FTP eller SFTP, men var säker på att ändra portnummeret till den lämpliga porten som din FTP-värd har gett dig. Klicka sedan på Spara för att spara profilen. Öppna profilen för att logga in på din FTP-server. Detta kommer att verifiera att du har skrivit rätt behörighet i profilen.
Skapa skriptet
Vi ska skapa ett enkelt skript som loggar in i din FTP-server, berättar WinSCP var du vill ladda ner de saknade filerna till din dator och skapar sedan en loggfil som registrerar FTP-aktivitet. Fortsätt och öppna Anteckningar på din dator. Kopiera följande skriptmall till anteckningsblock:
alternativ sats på
alternativet bekräfta
öppna [email protected]
cd-säkerhetskopior
alternativ överföring binär
få / testremote * f: \ backups \ testlocal \ *
synkronisera lokala f: \ backups \ testlocal testremote
utgång
Här är en kort förklaring av vad som händer i manuset. WinSCP svarar alla anvisningar negativt för att undvika att hålla upp skriptet. Då kommer det automatiskt att skriva över filer när du blir ombedd. Den loggar sedan in i din FTP-server med den profil som vi skapade tidigare, ändrar kataloger (om det behövs) och överför binära (i motsats till ASCII). Slutligen läser den fjärrfTP-katalogen och överför filer till den angivna lokala katalogen. För ännu fler alternativ, kolla in den officiella WinSCP-skriptsidan.
Nu innan du ändrar eller kör det här skriptet, föreslår vi att du skapar testkataloger på både fjärr- och lokala mål. Det sista du vill ha är att oavsiktligt torka din FTP-server utan några säkerhetskopior. Så skapa en katalog på din dator som heter "testlocal" (vi skapade den under f: \ backups) och en annan som heter "testremote" på din FTP-server (vi skapade den vid roten). När du kör skriptet och det körs med framgång, spara det som "sync.txt" till din dator (vi sparade vår i vår testlocal-mapp). Nu är du redo att automatisera manuset.
Automatisering av skriptet
Vi ska låta Windows hantera automationen genom att använda den inbyggda Task Scheduler. I Windows 7 börjar du med att öppna Kontrollpanelen> System och säkerhet> Administrativa verktyg> Aktivitetsschemaläggare.
I den högra kolumnen klickar du på knappen Skapa grundläggande uppgift.
Namn och beskriv din uppgift, och klicka sedan på Nästa.
Nästa alternativ bestämmer hur ofta uppgiften ska köras. Vi valde att köra skriptet varje gång vi slår på datorn. Du kan välja ett mindre frekvent alternativ som Weekly för att köra det mindre ofta.
På nästa skärm väljer du "Starta ett program" och klicka på Nästa. Du blir uppmanad att leta efter ett program eller ett skript. Klicka på knappen Bläddra och navigera till "C: \ Program Files \ WinSCP" för att välja WinSCP.exe. Nedan lägger du till "/ console /script=f:\backup\sync.txt /log=f:\backup\log.txt" för att lägga till argument. Var noga med att ändra argumenten om din sync.txt ligger på en annan plats och om du vill skapa loggfilen på en annan plats. Klicka på Nästa.
Du får se en sammanfattning av din uppgift. Om det ser rätt ut, klicka på Slutför. För att säkerställa att uppgiften körs ordentligt, kommer vi att köra den. Se till att du har minst en fil i din testremote katalog (dvs "thisisatest.txt"). Markera din nyskapade uppgift och klicka på Kör i den högra kolumnen. Du borde se en kommandotolkning, ansluta till din FTP-server och synkronisera sedan filerna / filerna..
Din testuppgift borde ha slutförts, och din testfil ska nu vara i den angivna lokala mappen. Om du stöter på några fel, kolla loggfilen för att få reda på varför.
Det är allt det finns! Du har nu en gratis backup-lösning som kommer att hålla alla dina FTP-filer synkroniserade med en lokal mapp. Skulle din FTP-server någonsin krascha eller du oavsiktligt tar bort en fil, kan du återställa kopian från din dator!