Hur tar du backup på din server?

Konfiguration av nätverk, hur man använder Ubuntu som server, och håller sin dator säker
dreamie
Inlägg: 16
Blev medlem: 27 maj 2010, 09:06
OS: Ubuntu
Utgåva: 14.04 Trusty Tahr LTS

Hur tar du backup på din server?

Inlägg av dreamie »

Hej.

Att ta backup på data etc. är väl inga konstigheter men hur tar ni backup på serverns konfiguration för att lätt komma igång med servern igen om hårddisken skulle krascha?

Vad jag menar är alla konfigurationsinställningar för exempelvis samba, SSH, PHP, apache, OpenVPN, fail2ban etc. etc.

Mvh,

Peter
Användarvisningsbild
amelia
Inlägg: 139
Blev medlem: 06 mar 2008, 17:21
OS: Fedora
Utgåva: Vet inte/ingen utgåva passar
Ort: Stockholm
Kontakt:

Re: Hur tar du backup på din server?

Inlägg av amelia »

Jag har skrivit ett eget litet backup-system i bash som använder ssh och rsync för att göra backuper. Inga konstigheter egentligen, använder rsync med --include-from=FILE och har en fil med en lista på alla filer jag vill göra backup på på respektive server.

I princip flyttar jag helt enkelt filerna till en annan dator bara. Jag ser ingen poäng i att försöka få till ett system som stöder "bare metal restore" eftersom att det är ett problem som de stora jättarna knappt reder ut under många omständigheter.
dreamie
Inlägg: 16
Blev medlem: 27 maj 2010, 09:06
OS: Ubuntu
Utgåva: 14.04 Trusty Tahr LTS

Re: Hur tar du backup på din server?

Inlägg av dreamie »

Ok.

Och om du installerar en ny applikation, ex. en ftp-server så lägger du till konfigurationsfilerna för den i listan över filer som skall backas upp?

Mvh,

Peter
Användarvisningsbild
amelia
Inlägg: 139
Blev medlem: 06 mar 2008, 17:21
OS: Fedora
Utgåva: Vet inte/ingen utgåva passar
Ort: Stockholm
Kontakt:

Re: Hur tar du backup på din server?

Inlägg av amelia »

Nja, nu gör ju jag backup på hela /etc eftersom att den innehåller så mycket viktig information och tar väldigt lite plats. Skulle konfigurationsfilerna för en ny applikation finnas någon annanstans än i /etc får jag manuellt stoppa in den i filen som listar filerna som ska backas upp.
freddess
Inlägg: 9
Blev medlem: 23 okt 2010, 09:22
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: Hur tar du backup på din server?

Inlägg av freddess »

Hej!

Har samma fundering. Men skulle vilja ha ett sätt att se hur backuperna gick samt om det fanns möjlighet att bli notifierad om det gick fel.
Användarvisningsbild
amelia
Inlägg: 139
Blev medlem: 06 mar 2008, 17:21
OS: Fedora
Utgåva: Vet inte/ingen utgåva passar
Ort: Stockholm
Kontakt:

Re: Hur tar du backup på din server?

Inlägg av amelia »

Jag kör ett övervakningssystem (Xymon) som övervakar om backuperna har gått som de ska, har de inte det får jag ett mail precis som om något annat gått ner. Det kanske är lite mycket om man inte har någon nytta av att övervaka annat.

Ett annat alternativ är ju att använda mail-kommandot för att skicka mail t.ex. när backuperna inte fungerar. Man kan ju alltid använda sig av return code för hela skriptet eller en rad i skriptet för att avgöra om backuperna fungerade eller inte och om man isåfall ska maila eller inte.
Emil.s
Inlägg: 6633
Blev medlem: 12 dec 2006, 23:20
OS: Ubuntu
Ort: /Dalarna/Hedemora/
Kontakt:

Re: Hur tar du backup på din server?

Inlägg av Emil.s »

Själv kör jag den enkla varianten:

Separat disk på /backup, sen körs mirrordir därifrån:

Kod: Markera allt

#!/bin/bash

# Backup för sandnabba.se, av Emil sandnabba
# Databaser:
DATABASER="cacti drupal gallery2"

echo 'Mirroring: xxxx'
mirrordir -F excluded.txt /home /backup/root_fs/xxxx
echo 'Mirroring: xxxx'
mirrordir -F excluded.txt /home /backup/root_fs/xxxx
echo 'Mirroring: xxxx'
mirrordir -F excluded.txt /home /backup/root_fs/xxxx

echo ; echo Databaser:
bash /backup/mysqlbackup.sh $DATABASER

# Avsluta med ett snapshot:
btrfsctl -s .$(date +%Y%m%d) /backup/
Så vill jag ha SSH konfigurationen som den var den 22a januari 2010 så är det bara att titta i:
/backup/.20100122/root_fs/etc/ssh/

Och ja, det är ingen bra idé att köra backupen på BTRFS, men nej, jag kör inget "affärskritiskt" på min server. ;)
Home sweet ~/ = http://sandnabba.se
freddess
Inlägg: 9
Blev medlem: 23 okt 2010, 09:22
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: Hur tar du backup på din server?

Inlägg av freddess »

Hej Emil!

Fick frågan av en kollega som blev imponerad av hur allt var filer i linux och att dte då bara var att backa rätt saker. Han funderade ett steg längre och jag tänkte ställa samma fråga.

Då skulle det i princip räcka med att installera en ny server och läsa till baka all info så har man en bare metall restore?
Emil.s
Inlägg: 6633
Blev medlem: 12 dec 2006, 23:20
OS: Ubuntu
Ort: /Dalarna/Hedemora/
Kontakt:

Re: Hur tar du backup på din server?

Inlägg av Emil.s »

freddess skrev:Hej Emil!

Fick frågan av en kollega som blev imponerad av hur allt var filer i linux och att dte då bara var att backa rätt saker. Han funderade ett steg längre och jag tänkte ställa samma fråga.

Då skulle det i princip räcka med att installera en ny server och läsa till baka all info så har man en bare metall restore?
Jejjamen, förutsatt att man kör samma programversioner.

Gör alltid så själv, installerar en ny server, och kopierar över den gamla konfigurationen.
Funkar i 99% av fallen.
Ett tips är ju att installera och testa nya saker i en virtuell maskin, och sen kopiera över hela den virtuella maskinen till servern sen för smidiga övergångar. :)
Home sweet ~/ = http://sandnabba.se
Användarvisningsbild
amelia
Inlägg: 139
Blev medlem: 06 mar 2008, 17:21
OS: Fedora
Utgåva: Vet inte/ingen utgåva passar
Ort: Stockholm
Kontakt:

Re: Hur tar du backup på din server?

Inlägg av amelia »

freddess skrev: Då skulle det i princip räcka med att installera en ny server och läsa till baka all info så har man en bare metall restore?
En bare metal restore går ut på att skriva tillbaka allt inkl operativsystem och applikationer utan att installera något system först. Om du gör backup på allt, med några få undantag typ /proc och /dev, så kan det gå att genom att boot:a från en skiva eller USB-sticka göra en bare metal restore.

Om man installerar ett operativsystem på servern och försöka göra en fullständig restore finns det flera tillfällen då man kommer stötta på stora problem som med största sannolikhet gör att restoren inte kan slutföras. T.ex. kommer problem uppstå när man ska göra restore på den binärkatalog där programmet man gör restore med ligger om det nu är /bin, /sbin, /usr/bin eller vad det kan vara samt även när man gör restore på /lib.

Min personliga åsikt och det jag skulle rekommendera andra är att satsa på filbackuper av de filer som är viktiga och strunta fullständigt i operativsystemet och applikationer man har installerade. Har man inget behov av att vara på exakt samma patchnivå efter en restore så gör er inte besväret att med full systemsbackuper och bare metal restores.
gusse02
Inlägg: 258
Blev medlem: 16 maj 2008, 12:17
OS: Ubuntu
Utgåva: 20.04 Focal Fossa LTS

Re: Hur tar du backup på din server?

Inlägg av gusse02 »

Och hur vet man vilka filer som skall sparas. Hela /etc är ju bra. Men hur vet man om konfiguration och data ligger på andra ställen?
Emil.s
Inlägg: 6633
Blev medlem: 12 dec 2006, 23:20
OS: Ubuntu
Ort: /Dalarna/Hedemora/
Kontakt:

Re: Hur tar du backup på din server?

Inlägg av Emil.s »

gusse02 skrev:Och hur vet man vilka filer som skall sparas. Hela /etc är ju bra. Men hur vet man om konfiguration och data ligger på andra ställen?
Generellt sett så är det bara /etc som är viktigt. Är det något annat så bör du veta om det, då det är du som ändrat något.

Använder du mysql så finns databaserna i /var/ iof.

Själv tar jag backup på nästan hela systemet. Men det är mestadels bara för att kunna återställa ifall man råkar köra "rm -rf /usr/" eller nåt.
Home sweet ~/ = http://sandnabba.se
Användarvisningsbild
amelia
Inlägg: 139
Blev medlem: 06 mar 2008, 17:21
OS: Fedora
Utgåva: Vet inte/ingen utgåva passar
Ort: Stockholm
Kontakt:

Re: Hur tar du backup på din server?

Inlägg av amelia »

Emil.s skrev: Generellt sett så är det bara /etc som är viktigt. Är det något annat så bör du veta om det, då det är du som ändrat något.
Som sagt, de flesta konfigurationsfiler ligger i /etc, gör de inte det så borde du känna till det redan eftersom att du då själv lagt dem där. Från konfigurationsfilerna i /etc/ kan du ta reda på var data för applikationen lagras.
Emil.s skrev: Använder du mysql så finns databaserna i /var/ iof.
Dock vill du inte göra backup på dessa filer som de är då det kan orsaka data loss och korrupta databaser vid återläsning. Istället vill du göra en dump av databasen t.ex. med mysqldump för att sedan göra backup på dumpfilen.
Användarvisningsbild
dmz
Inlägg: 3292
Blev medlem: 29 jul 2008, 19:42
OS: Arch Linux

Re: Hur tar du backup på din server?

Inlägg av dmz »

Jag versionshanterar (GIT) hela $HOME och hela /etc. Dessutom kör jag backup på bägge dessa en gång om dagen, dels till en separat disk, dels till min server.
Och om man vill backa tillbaka i historiken så ser jag inte hur något kan vara bättre än t.ex git.
Jag har bara kod och konfigurationsfiler i $HOME, men om du även lagrar din musik och dina filmer där så kan det vara lämpligt att undanta dessa.
ǁ A: Because it obfuscates the reading.
ǁ Q: Why is top posting so bad?
freddess
Inlägg: 9
Blev medlem: 23 okt 2010, 09:22
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: Hur tar du backup på din server?

Inlägg av freddess »

Emil.s skrev:Själv kör jag den enkla varianten:

Separat disk på /backup, sen körs mirrordir därifrån:

Kod: Markera allt

#!/bin/bash

# Backup för sandnabba.se, av Emil sandnabba
# Databaser:
DATABASER="cacti drupal gallery2"

echo 'Mirroring: xxxx'
mirrordir -F excluded.txt /home /backup/root_fs/xxxx
echo 'Mirroring: xxxx'
mirrordir -F excluded.txt /home /backup/root_fs/xxxx
echo 'Mirroring: xxxx'
mirrordir -F excluded.txt /home /backup/root_fs/xxxx

echo ; echo Databaser:
bash /backup/mysqlbackup.sh $DATABASER

# Avsluta med ett snapshot:
btrfsctl -s .$(date +%Y%m%d) /backup/
Så vill jag ha SSH konfigurationen som den var den 22a januari 2010 så är det bara att titta i:
/backup/.20100122/root_fs/etc/ssh/

Och ja, det är ingen bra idé att köra backupen på BTRFS, men nej, jag kör inget "affärskritiskt" på min server. ;)

Detta är ju en intressant modell. Tror du att du skulle kunna förtydliga koden lite? Lägger du den som ett cron job? Kräver detta att det är btrfs? Tror jag har ext4 som standard på min maskin.
Skulle man kunna lägga in någon logg funktion funkad/funkad ej?
freddess
Inlägg: 9
Blev medlem: 23 okt 2010, 09:22
OS: Ubuntu
Utgåva: 22.04 Jammy Jellyfish LTS

Re: Hur tar du backup på din server?

Inlägg av freddess »

Användarvisningsbild
amelia
Inlägg: 139
Blev medlem: 06 mar 2008, 17:21
OS: Fedora
Utgåva: Vet inte/ingen utgåva passar
Ort: Stockholm
Kontakt:

Re: Hur tar du backup på din server?

Inlägg av amelia »

Bacula är ganska stort och kanske mer lämpat för en mindre servermiljö än hemmabruk. Det är även väldigt fokuserat kring att man använder band, antingen virtuella band på disk eller riktig bandstation.

Ett bättre alternativ kanske kan vara BackupPC (http://backuppc.sourceforge.net/). Av vad jag har hört är det betydligt mer lätthanterat än Bacula.
Emil.s
Inlägg: 6633
Blev medlem: 12 dec 2006, 23:20
OS: Ubuntu
Ort: /Dalarna/Hedemora/
Kontakt:

Re: Hur tar du backup på din server?

Inlägg av Emil.s »

freddess skrev: Detta är ju en intressant modell. Tror du att du skulle kunna förtydliga koden lite? Lägger du den som ett cron job? Kräver detta att det är btrfs? Tror jag har ext4 som standard på min maskin.
Skulle man kunna lägga in någon logg funktion funkad/funkad ej?
Den skapar en kopia av mitt filsystem på en separat disk.
Sen skapas ett snapshot så man kan gå tillbaka i "tiden".

Jag skör skriptet själv när jag känner att det är dags :P
Oftast efter att man grejat ordentligt med servern.
Men självklart så går det att göra en lösning med cron. Då bör man dock göra nån sorts inbyggd kontroll som ser till att allt går bra. (kanske köra all output till en fil, och ta en checksumma på den?)

Förut körde jag med http://rsnapshot.org/. Blir ungefär samma princip som med btrfs snapshots.
Fördelen med snapshots är ju at det är mycket enklare att administrera, och går snabbt att skapa/ta bort.

Finns ju ett backup-program som heter "Amanda" också:
http://www.amanda.org/

Ingen erfarenhet av det dock...
Home sweet ~/ = http://sandnabba.se
dreamie
Inlägg: 16
Blev medlem: 27 maj 2010, 09:06
OS: Ubuntu
Utgåva: 14.04 Trusty Tahr LTS

Re: Hur tar du backup på din server?

Inlägg av dreamie »

Gott med idéer här. Skall börja med att ta backup på /etc, det låter ju som en bra idé ;D

Funderar på att använda en online backup typ SpiderOak då jag använder det till backup av lite andra saker, någon annan som har erfarenhet av detta?
Skriv svar

Återgå till "Nätverk, säkerhet och servrar"