Så säkerhetskopierar du din webbplats via SSH-kommandoraden

Så säkerhetskopierar du din webbplats via SSH-kommandoraden / Wordpress & Webbutveckling

Att säkerhetskopiera din webbplats eller blogg kan vara en dyr och svår uppgift, som kräver en mängd olika plugins eller ytterligare planer från din värdleverantör - men det behöver inte vara riktigt. Om du har SSH-åtkomst till din webbplats värd (i allmänhet skulle du behöva minst en virtuell privat server. De olika formerna för webbhotell förklaras. [Teknologi förklaras] De olika formerna för webbhotell förklaras. [Teknologi förklaras] Läs mer för detta), då är det lätt att säkerhetskopiera, återställa och migrera hela webbplatsen med bara några kommandon. Låt mig visa dig hur.

Vad är SSH Command Line?

SSH ger dig möjlighet att prata direkt till din webbserver. Det ger inte ett vackert gränssnitt, eller en trevlig GUI, bara en rak upp kraftfull kommandorad. Detta kan vara skrämmande för vissa människor, men den rena kraften, hastigheten och den automatiska nivå det ger kan vara en absolut livsuppehållare och gör processen att migrera platser oerhört lätt.

De flesta delade värdarna tillåter tyvärr inte SSH-åtkomst till ditt konto, åtminstone inte som standard. Om du är värd med GoDaddy kan du aktivera det, så var noga med att kolla först.

För att logga in via SSH, öppna upp Terminal i OS X (eller få lite gratis SSH-programvara för Windows Vad SSH är och hur det skiljer sig från FTP [Teknologi förklaras] Vad SSH är och hur det skiljer sig från FTP [Teknologi förklaras] Läs mer ) och skriv in följande:

ssh [email protected]

Du blir uppmanad till 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 något på skärmen. Oroa dig inte, det är för säkerhet.

När du är inloggad får du en kommandotolk som liknar följande:

-bash-3,2 $

Det betyder att allt är bra, så fortsätt och fortsätt med dessa kommandon.

Börja med att ta en titt och försöka navigera till din webbkatalog. Typ:

ls

För att "lista" de aktuella filerna och mapparna.

cd-katalognamn

att byta till en katalog. I det här fallet ska jag navigera till httpdocs-katalogen, som är roten till min webbplats (där alla mina WordPress-filer lagras). Du kan då 'ls' igen, bara för att vara säker.

Vid denna tidpunkt är vi redo att starta SSH-säkerhetskopieringsprocessen.

Säkerhetskopiera databasen:

Eftersom majoritetsläsarna kommer att göra detta med en WordPress-installation, kommer du säkert att ha en databas för säkerhetskopiering utöver alla filer som finns lagrade på webbplatsen. Först måste du ha 3 bitars information för att säkerhetskopiera din databas, men alla kan hittas i wp-config.php (om du kör wordpress, det är):

  • Databas namn
  • Databasanvändare
  • Databas lösenord

Utfärda sedan det här enkla kommandot, var noga med att ersätta användarnamnet, tabellnamnet och säkerhetskopieringsfilen där det behövs:

mysqldump --add-drop-table -u användarnamn -p tabellenamn> backupfilename.sql

Klicka på Enter och ange ditt lösenord. När det har körts kan du sedan utfärda ett annat kommando "ls" för att kontrollera att filen har lagts 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 databasserver körs på samma server som du är värd för. På en GoDaddy-värd är dock MySQL-databasen lagrad på distans på en separat server som du inte har SSH-åtkomst till. I sådana fall måste du komma åt PHPMyAdmin via värdkontrollpanelen, men det går inte under denna handledning..

Säkerhetskopiera filer:

Nu när vi har databasen lagrad till en enskild fil på servern kan vi fortsätta och säkerhetskopiera både det och din webbplats filer ner till en enda komprimerad backupfil. För att göra detta ska vi utfärda ett enkelt kommando. Du behöver bara byta ut yourbackupfilename med vad du vill att det ska ringas.

tjära -vcf yourbackupfilename.tar .

Låt mig bryta ner det. Tjära är ett vanligt Linux-komprimeringsformat, liknande zip men effektivare. -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å den fil vi vill skapa, och slutligen berättar ett enskilt periodmärke att det ska inkludera allt. Vi kunde ha skrivit * istället, men detta skulle sakna några dolda filer som .htaccess som är nödvändigt för WordPress.

Det är allt. När det har körts kommer du att ha en enda .tar-fil som består av varje fil på din webbplats. Du kan logga in via FTP vid denna tidpunkt 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 det värsta har hänt, och något har gått hemskt fel på din webbplats. Du har en tjära fil av allt som du säkerhetskopierade förra veckan, så nu vill du återställa det till det. Först av, logga in via FTP och ladda upp backupfilen till din server. Kanske har du lagrat dem i en särskild katalog. Hur som helst, flytta den senaste fullständiga backupfilen till roten på din webbplats, och vi börjar.

Börja med att packa upp alla filer, omvänden av vad vi gjorde för att säkerhetskopiera dem:

tjära -vxf yourbackupfilename.tar

Detta kommer att skriva över befintliga filer! Den avgörande skillnaden här ligger i -VXF växla, som berättar att extrahera filerna istället för att skapa en ny säkerhetskopia. Dessutom finns det ingen period i slutet av kommandot denna gång.

Det sista steget är att suga din databas tillbaka till där den var förut. Se till att du har en tom databasinstallation med samma lösenord och tabellenamn som tidigare, eller du måste också ändra inställningarna för webbplatsens konfiguration. För att suga data tillbaka in, utfärda det här kommandot:

mysql -u användarnamn -p tabellenamn < databasebackupfilename.sql

Nästa vecka: Automatisera dina säkerhetskopior

Det är nog för att komma igång med att göra SSH-säkerhetskopior för nu, då kommer jag visa hur man automatiserar uppgiften med ett enkelt skalskript och ett CRON-kommando. Om du har lite Amazon s3-lagringsutrymme 4 Great Uses för Amazons S3 Web Services 4 Great Uses för Amazons S3 Web Services Trots att Amazon är mest känt för sina detaljhandelstjänster erbjuder de faktiskt en mängd webbtjänster för utvecklare och hemanvändare som tar fördel med Amazons erfarenhet och skalbarhet med massiva mängder av ... Läs mer, jag visar till och med hur du automatiskt kan ladda upp dina backupfiler till en lagringshink när de är färdiga.

Ett sista tips - när jag först började använda kommandoraden, imponerade jag verkligen på mig - försök att trycka på fliknyckeln när du skriver in ett långt filnamn, och om namnet är unikt nog kommer det att försöka att fylla i resten av filnamnet!

Utforska mer om: Data Backup, Webmaster Tools, Wordpress.