Citat:
Originally posted by Isak@Mar 15 2006, 19:15
Hejsan,
Backup är ju rätt viktigt viket man alltsomoftast kommer till insikt om sent.
Hur handskas ni som har dedikerade servrar med mycket kodinnehåll och frekventa ändrigar med detta
när servern inte är fysiskt i närheten.
Nästan alltid erbjuds väl en backuptjänst där man har servern men för oss som är mer paranoida än så
känns det ju bra att förutom detta också en hyfsat färsk egen backup. Man såg ju hur det gick för Xlate tex...
Själv har vi förutom backup där vi är hostade script för att göra backup på databaser och maila ut dem (till gmail konton)
ca 1 gång per dag.
Problemet är mer källkoden. Om många jobbar mot koden och den består av 1000 tals filer i 100tals kataloger
tar det en evig tid att ftp:a hem allt vilket gör att man ej gör detta så ofta som man borde.
Jag skulle vilja lägga upp ett script som kopierar upp alla kataloger man valt ut i en temp katalog och sen zippar
denna. Jag antar att tiden för att ftp:a hem allt borde reduceras ordentligt i ett sånt fall ?.
Finns det några fina shareware program som fixar detta lite snyggt eller måste man fixa ett eget script.
Andra synpunkter ?
|
Jag använder rsync för såna ändamål. Ta exempelvis loggar. På en av maskinerna kan loggar växa upp till över 1Gb. Jag kopierar ändå dessa 1 g/timma utan att den äter upp ens någon procent av bandbredden.
Rsync kopierar skillnader mellan filerna. För mig duger det inte heller riktigt. Sabbar du något stort och råkar publicera det, så kopierar du felaktigheten också.
Så min totala lösning ser ut så här (förenklat för en development och live server):
På development servern har jag en CVS-repository. Där har jag också en testsite.
På live servern har jag en arbetskopia av CVS-modulen (dvs en utcheckning). Det är det som "riktiga" applikationen kör på.
På development servern har jag också ett cron-jobb som kopierar hela CVSROOT (rubb och stubb) till en backup-katalog på live servern.
Så på development servern har jag både en version av testapplikation, och CVSROOT, och på liveservern en applikation och kopia av CVSROOT.
Super jag bort något på applikationen på live servern, låt oss säga att jag tar bort en fil, så räcker det att göra "cvs up" i rooten på den, så kommer senaste versionen till mig direkt. Om jag skulle få en fil korrupt på något sätt (låt oss säga, klantat mig med cat), så kan jag bara ta bort filen och sen köra cvs up.
Skulle jag BÅDE supa bort något på live servern OCH supa bort min development server, så har jag också en kopia av hela min CVS på live servern.
Så, praktiskt taget, har jag backup på både min development server och min live server i samma veva. Och det BÄSTA med det? Ja, super man bort något, så slipper man emaila/ringa någon support och förklara vad jag vill ha återläst från backup.
De som kör linux funkar det från början. De med windows på sina servrar måste kanske installera cygwin för rsync bland annat, men det går säkert att fixa med andra program.