Annons
Säkerhetskopiering av din webbplats eller blogg kan vara en dyr och besvärlig uppgift, som kräver en mängd olika plugins eller ytterligare planer från din webbhotell - men det behöver inte vara riktigt. Om du har SSH-åtkomst till din webbhotell (vanligtvis behöver du minst en virtuell privat server De olika formerna av webbhotell förklarade [Teknisk förklarad] Läs mer för detta), då är det enkelt att säkerhetskopiera, återställa och migrera hela webbplatsen med bara några få kommandon. Låt mig visa dig hur.
Vad är SSH-kommandoraden?
SSH ger dig möjligheten att prata direkt med din webbserver. Det ger inte ett vackert gränssnitt, eller ett trevligt GUI, bara en kraftfull kommandorad. Detta kan vara skrämmande för vissa människor, men den stora kraften, hastigheten och nivån av automatisering som den ger kan vara en absolut livräddare och gör processen för att migrera webbplatser otroligt enkel.
De flesta delade värdar tillåter tyvärr inte SSH-åtkomst till ditt konto, åtminstone inte som standard. Om du är värd hos GoDaddy kan du göra det
aktivera det dock, så se till att kontrollera först.För att logga in via SSH, öppna terminalen i OS X (eller få gratis SSH-programvara för Windows Vad SSH är och hur det skiljer sig från FTP [Technology Explained] Läs mer ) och skriv in följande:
ssh användarnamn@dittdomän.com
Du blir ombedd om ditt lösenord. Om du aldrig har använt SSH tidigare kan du bli förvånad när du skriver in ditt lösenord inte på skärmen. Oroa dig inte, det är för säkerheten.
När du är inloggad får du en kommandotolk, som liknar följande:
-bash-3,2 $
Detta betyder att allt är bra, så fortsätt med dessa kommandon.
Börja med att titta runt och försöka navigera till din webbkatalog. Typ:
ls
För att "lista" de aktuella filerna och mapparna.
cd-registernamn
för att byta till en katalog. I det här fallet kommer jag att navigera till httpdocs-katalogen, som är roten till min webbplats (där alla mina wordpress-filer är lagrade). Du kan sedan "ls" igen, bara för att vara säker.
Just nu är vi redo att börja SSH-säkerhetskopieringsprocessen.
Säkerhetskopiera databasen:
Eftersom majoriteten av läsarna kommer att göra detta med en WordPress-installation kommer du säkert att ha en databas att säkerhetskopiera utöver alla filer som lagras på webbplatsen. Till att börja med behöver du 3 bitar information för att säkerhetskopiera din databas, men alla finns i wp-config.php (om du kör wordpress, det vill säga):
- Databas namn
- Databasanvändare
- Databaslösenord
Sedan utfärda detta enkla kommando, och se till att byta ut användarnamn, tabellnamn och säkerhetsfilnamn där det är nödvändigt:
mysqldump - lägg till-drop-tabell -u användarnamn -p tabellnamn> backupfilename.sql
Tryck på enter och ange ditt lösenord. När den har körts kan du sedan utfärda ett annat "ls" -kommando för att kontrollera att filen har matats ut. Grattis, det här är all information i din databas som en enda SQL-fil, redo att säkerhetskopiera eller importera någon annanstans.
Obs: Jag har antagit att din databaseserver körs på samma server som du är värd för. På en GoDaddy-värd lagras dock MySQL-databasen på distans på en separat server som du inte har SSH-åtkomst till. I fall som dessa måste du komma åt PHPMyAdmin via värdkontrollpanelen, men det är utanför ramen för denna handledning.
Säkerhetskopiera filer:
Nu när vi har databasen lagrad i en enda fil på servern kan vi gå vidare och säkerhetskopiera både den och din webbplatsfiler till en enda komprimerad säkerhetskopia. För att göra detta kommer vi att utfärda ett enkelt kommando. Du behöver bara byta ut yourbackupfilename med vad du vill att det ska kallas.
tar -vcf yourbackupfilename.tar.
Låt mig bryta ner det. Tjära är ett vanligt Linux-komprimeringsformat, liknande zip men mer effektivt. -vcf är enkla några alternativ som säger "skapa ett nytt arkiv och berätta vad du gör". Nästa är namnet på filen vi vill skapa, och slutligen säger ett enda periodmärke att den ska inkludera allt. Vi kunde ha skrivit * istället, men detta skulle sakna alla dolda filer som .htaccess som är viktigt för WordPress.
Det är allt. När det har körts kommer du att ha en .tar-fil som består av varje fil på din webbplats. Du kan logga in via FTP just nu och ladda ner den, men låt mig visa ett sista steg som låter dig återställa alla dessa filer.
Återställa allt:
Låt oss säga att det värsta har hänt, och något har gått hemskt fel på din webbplats. Du har en tjära fil med allt du säkerhetskopierade förra veckan, så nu vill du återställa det till det. Först ut, logga in via FTP och ladda upp säkerhetskopian till din server. Du kanske har lagrat dem i en speciell katalog. Hur som helst, flytta den senaste kompletta säkerhetsfilen till roten på din webbplats så börjar vi.
Börja med att packa upp alla filer, motsatt av vad vi gjorde för att säkerhetskopiera dem:
tar -vxf yourbackupfilename.tar
Detta kommer att skriva över befintliga filer! Den avgörande skillnaden här är i -vxf switch, som säger att den ska extrahera filerna istället för att skapa en ny säkerhetskopia. Det finns inte heller någon period på slutet av kommandot den här gången.
Det sista steget är att suga din databas tillbaka till där den var tidigare. Se till att du har en tom databasinställning med samma lösenord och tabellnamn som tidigare, eller att du också måste ändra inställningarna för din webbplatskonfiguration. För att suga in data igen, utfärda detta kommando:
mysql -u användarnamn -p tabellnamnNästa vecka: Automatisera dina säkerhetskopior
Det räcker för att komma igång med att göra SSH-säkerhetskopior för nu, och sedan ska jag visa hur du automatiserar uppgiften med ett enkelt skalskript och ett CRON-kommando. Om du har några Amazon s3 lagringsutrymme 4 bra användningsområden för Amazons S3-webbtjänsterTrots att Amazon är mest känd för sina detaljhandelstjänster erbjuder de faktiskt en mängd webbtjänster för utvecklare och hemmabrukare som utnyttjar Amazons erfarenhet och skalbarhet med enorma mängder av... Läs mer , Jag kommer till och med att visa dig hur du automatiskt kan ladda upp dina säkerhetskopieringsfiler till en lagringshink när de är klara.
Ett sista tips - när jag först började använda kommandoraden imponerade den verkligen mig - försök att trycka på fliken när du skriver in ett långt filnamn, och om namnet är unikt nog kommer det att försöka automatiskt fylla i resten av filnamn!
James har en kandidatexamen i artificiell intelligens och är CompTIA A + och Network + certifierad. Han är ledande utvecklare av MakeUseOf och tillbringar sin fritid med att spela VR-paintball och brädspel. Han har byggt datorer sedan han var liten.