Etikettarkiv: ssh

Gör du backup?

Då jag har flera servrar utplacerade runt om i Sverige så är backup något som är otroligt viktigt men som oftast är något som jag är lite dålig på att prioritera. Men! Så igår så hände något som gjorde att jag fick tummen ur och äntligen fick för mig att bygga en snabb och lätt backup-lösning som ser ut enligt följande:

1. Dator placerad i hemmet med mycket disk

2. Server

1. Förberedelse för överföring av backup-filer

Det jag då gör är att jag genererar SSH privata/publika nycklar på min dator som är placerad i hemmet och sedan tar den publika nyckeln och placerar denna i (2) Server’s ~/.ssh/authorized_keys enligt följande:

dator1$ ssh-keygen -t rsa

Detta kommando genererar två stycken nycklar, nämligen ~/.ssh/id_rsa.pub samt den privata nyckeln ~/.ssh/id_rsa. Ta nu nyckeln id_rsa.pub och stoppa den i dator2 (server) ~/.ssh/authorized_keys så ska det vara möjligt att göra ssh/scp utan att behöva ange lösenord vilket vi behöver i detta steg.

2. Skapande av backup-filer

Det förfarande jag brukar gå enligt är att jag skapar två rader i ett enkelt shellscript och sedan anropar detta shellscript en gång varje natt (dator2/server) med cron:

#!/bin/sh
/usr/bin/mysqldump --opt -u db -pdb db >  /home/je/backups/db_`date +"%F"`.sql
/bin/tar cfjp /home/je/backups/db_`date +"%F"`.tar.bz2 /var/www/website.se/docs /var/www/website.se/other

3. Överföring

Överföringen sker således med scp från dator1. Rsync över ssh kan också användas med fördel