Sådan sikkerhedskopieres automatisk dine webserverfiler med WinSCP over FTP
Du har hørt det igen og igen: sikkerhedskopier dine data. Der er masser af backup løsninger, men intet er bedre end en nem og gratis løsning. Så med nogle få linjer kode og et meget nyttigt program kaldet WinSCP, vil vi oprette en automatisk synkronisering mellem din FTP-server og din hjemmecomputer.
FTP (File Transfer Protocol) er en internetprotokol, der giver brugerne mulighed for at overføre filer mellem computere. På trods af sin alderdom (tænk før TCP / IP-æra), er FTP og dens søsterprotokol SFTP (Secure File Transfer Protocol) stadig meget populære i dag og betragtes som en nem måde at overføre filer lokalt og over internettet. Det forekommer også at være en meget god måde at holde en ekstern backup af vigtige filer, du holder på din FTP-server.
Hvis du ikke ønsker at betale for en tredjeparts FTP-løsning, skal du tjekke denne artikel om, hvordan du opbygger din egen FTP-server skrevet af de fine folk over på Lifehacker.
Krav
- En FTP-server og adgangsoplysninger
- En Windows-computer
- En kopi af WinSCP (kun Windows)
Opsætning af WinSCP
Når du har downloadet din kopi af WinSCP, skal du installere .exe på din computer. Det ville heller ikke være en dårlig idé at begynde at huske din FTP-adresse, brugernavn og adgangskode, mens WinSCP installerer.
Nu hvor vi har WinSCP installeret, skal vi oprette og gemme en ny session profil for lettere adgang senere. Indtast dit værtsnavn (dvs. ftp.howtogeek.com), brugernavn og adgangskode fra login-skærmen. Du kan bruge enten FTP eller SFTP, men sørg for at ændre portnummeret den relevante port, som din FTP-vært har givet dig. Klik derefter på Gem for at gemme profilen. Åbn profilen for at logge ind på din FTP-server. Dette bekræfter, at du har skrevet de rigtige legitimationsoplysninger i profilen.
Oprettelse af scriptet
Vi skal oprette et simpelt script, der logger ind på din FTP-server, fortæller WinSCP, hvor du skal downloade de manglende filer til på din computer og derefter oprette en logfil, der registrerer FTP-aktivitet. Gå videre og åbner Notesblok på din computer. Kopier følgende skabelon til Notepad:
option batch på
mulighed bekræftelse
åben [email protected]
cd backup
option overførsel binær
get / testremote * f: \ backups \ testlocal \ *
synkroniser lokale f: \ backups \ testlocal testremote
Afslut
Her er en kort forklaring på, hvad der sker i scriptet. WinSCP vil besvare alle beskeder negativt for at undgå at holde scriptet op. Derefter overskrives filerne automatisk, når de bliver bedt om det. Den logger derefter ind på din FTP-server ved hjælp af den profil, vi oprettede tidligere, ændrer mapper (hvis det er nødvendigt) og overfører binære (i modsætning til ASCII). Endelig læser den den eksterne FTP-mappe og overfører filer til den angivne lokale mappe. For endnu flere muligheder, se den officielle WinSCP scripting side.
Nu inden du ændrer eller kører dette script, foreslår vi at oprette testmapper på både de eksterne og lokale mål. Den sidste ting, du vil have, er ved et uheld at tørre din FTP-server uden nogen sikkerhedskopiering. Så opret en mappe på din computer kaldet "testlocal" (vi oprettede den under f: \ backups) og en anden kaldet "testremote" på din FTP-server (vi skabte det ved roden). Når du kører scriptet, og det udføres med succes, gem det som "sync.txt" til din computer (vi gemte vores i vores testlocal-mappe). Nu er du klar til at automatisere scriptet.
Automatisering af scriptet
Vi skal lade Windows håndtere automatiseringen ved at bruge den indbyggede Task Scheduler. I Windows 7 skal du starte med at åbne Kontrolpanel> System og sikkerhed> Administrationsværktøjer> Opgaveplanlægning.
Klik på knappen Opret grundlæggende opgave i den højre kolonne.
Navngiv og beskriv din opgave, og klik derefter på Næste.
Den næste mulighed bestemmer, hvor ofte opgaven løber. Vi valgte at køre scriptet hver gang vi tænder vores computer. Du kan vælge en mindre hyppig indstilling som Ugentlig at køre den mindre ofte.
På den næste skærm vælger du "Start et program" og klik på Næste. Du bliver bedt om at søge efter et program eller script. Klik på knappen Gennemse og navigere til "C: \ Programmer \ WinSCP" for at vælge WinSCP.exe. Under, tilføj "/ konsol /script=f:\backup\sync.txt /log=f:\backup\log.txt" for at tilføje argumenter. Sørg for at ændre argumenterne, hvis din sync.txt er på en anden placering, og hvis du vil generere logfilen på en anden placering. Klik på Næste.
Du får vist et resumé af din opgave. Hvis det ser rigtigt ud, skal du klikke på Udfør. Endelig, for at sikre at opgaven kører korrekt, skal vi køre den. Sørg for, at du har mindst en fil i din testremote-mappe (dvs. "thisisatest.txt"). Fremhæv din nyoprettede opgave, og klik på Kør i den højre kolonne. Du skal se en kommandoprompt vises, oprette forbindelse til din FTP-server og derefter synkronisere filen / filerne..
Din testopgave skal have afsluttet, og din testfil skal nu være i den angivne lokale mappe. Hvis du løber ind i eventuelle fejl, skal du kontrollere logfilen for at finde ud af hvorfor.
Det er alt der er! Du har nu en gratis backup løsning, der vil holde alle dine FTP-filer synkroniseret til en lokal mappe. Skulle din FTP-server nogensinde gå ned, eller du ved et uheld sletter en fil, kan du genoprette kopien fra din computer!