PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Backuplösung für Client



steve-e
13.07.05, 15:40
Ich suche nach einer Lösung mir wichtige Daten auf einem entfernten System zu sichern. Habe bereits verschiedene, fertige Lösungen ausprobiert, konnte jedoch nie zufriedengestellt werden. Zu meinen genauen Kriterien später mehr.

Da es sich um einen Client handelt ist besonders das home-Verzeichnis von Bedeutung, aber auch /root und /etc sollen gesichert werden. Cache, Thumbnails und History-Datein (z.b Centericq) brauchen natürlich nicht archiviert zu werden.

Gesichert werden sollen die Daten auf eine "Netzwerkfestplatte". Diese ist Hardwarmäßig sehr schwach auf der Brust, was berücksichtig werden muss, da ich sie nicht völlig außer Gefecht setzen kann. Die Geschwindigkeiten sind hierbei sehr geringen und variieren nochmals stark abhängig vom Dienst:
samba: 1,5 mb/s
nfs: 2,5 mb/s
ftp: 3,5 mb/s

Es wäre also ratsam incrementelle Backups zu machen bzw. nur wirklich die Daten zu übertragen, die sich auch geändert haben. Auch ist es nur ein Client der gesichert wird. Ist dieser an wird auch daran gearbeitet. rechenintensive Operationen möchte ich somit vermeiden.

Mein Problem gestaltet sich hierbei nun eigentlich bei der Auswahl eines passenden Backup-Tools. Viele dieser Programme arbeiten mit Links, was mein NFS nicht richtig zu verkraften scheint.

Backup2l: gzip: TMP.all.list.gz: Unknown error 524
rsync: mkstemp "/nas/backup/snapshot.0/home/stephan/webdesign/projekte/physik/css/.style.css.MGA9oQ" failed: Unknown error 524 (524)

Bei backup-manager kann ich zwar über den "schnellen" FTP updaten, aber es werden Full-Backups gemacht.


Am liebsten wäre mit eine Möglichkeit, bei der täglich meine veränderten Dateien gesichert werden. Ich möchte einfachen Zugriff auf die Daten des letzten Monats. Hier würde es sich anbieten die Backups über NFS readonly einzuhängen.
Unter einfachen Zugriff verstehe ich, dass auch auch an einzelne Dateien herankomme ohne das gesamte Backup zurückspielen zu müssen.

Blade
13.07.05, 18:06
Na da rate ich Dir nur zu rsync, benutze mal die SuFu im Board. Da gibt es viele Hinweise und Skripte. Wenn Du mir Deine Mail-Adresse nennst, kann ich Dir mal einen einführenden guten Artikel mit Beispielen mailen.

Vorteil von rsync:
- eigenes Scripting
- individuell einstellbar
- Datenübertragung komprimiert
- Datenübertragung verschlüsselt ... per ssh
- Datenübertragung übers Internet
- Datenübertragung inkrementell
- Sicherung der alten Daten vor Überschreiben
- Datenübertragung nur der geänderten Bytes bei großen Dateien
- und ...

RSYNC ist einfach genial und fix!

Pinky
13.07.05, 18:37
rsync kann auch unter Windows für Backups verwendet werden : cwrsync

Blade
13.07.05, 19:29
Na hoppla, das ist mir neu :eek: ...
Ist da auch Freeware?

steve-e
13.07.05, 21:26
Ja, habe selber ein rsync script. Macht aber mit Samba und NFS irgendwie Probleme. (siehe oben genannter Fehler)
Werde mich dann wohl nochmal den beiden Diensten widmen müssen. Was würdet ihr an den Script noch verbessern bzw. ändern?



#!/bin/bash
# ----------------------------------------------------------------------
# mikes handy rotating-filesystem-snapshot utility
# ----------------------------------------------------------------------
# RCS info: $Id: rsync_2fSnapshotBackups,v 1.16 2003/01/16 02:43:23 linuxwiki_de Exp $
# ----------------------------------------------------------------------
# this needs to be a lot more general, but the basic idea is it makes
# rotating backup-snapshots of /home whenever called
# ----------------------------------------------------------------------

# ------------- system commands used by this script --------------------
ID=/usr/bin/id;
ECHO=/bin/echo;

MOUNT=/bin/mount;
UMOUNT=/bin/umount
RM=/bin/rm;
MV=/bin/mv;
CP=/bin/cp;
TOUCH=/bin/touch;

RSYNC=/usr/bin/rsync;

# ------------- file locations -----------------------------------------

MOUNT_DEVICE=192.168.0.103:/mnt/ste_backup;
SNAPSHOT_RW=/nas/backup/;
EXCLUDES=/usr/local/config/rsync_no;

# ------------- the script itself --------------------------------------

# make sure we're running as root
if (( `$ID -u` != 0 )); then { $ECHO "Sorry, must be root. Exiting..."; exit; } fi

# attempt to remount the RW mount point as RW; else abort
$MOUNT -o remount,rw $MOUNT_DEVICE $SNAPSHOT_RW ;
if (( $? )); then
{
$ECHO "snapshot: could not remount $SNAPSHOT_RW readwrite";
exit;
}
fi;

# rotating snapsh# step 1: delete the oldest snapshot, if it exists:
if [ -d $SNAPSHOT_RW/current/snapshot.3 ] ; then \
$RM -rf $SNAPSHOT_RW/current/snapshot.3 ; \
fi ;

# step 2: shift the middle snapshots(s) back by one, if they exist
if [ -d $SNAPSHOT_RW/current/snapshot.2 ] ; then \
$MV $SNAPSHOT_RW/current/snapshot.2 $SNAPSHOT_RW/current/snapshot.3 ; \
fi;
if [ -d $SNAPSHOT_RW/current/snapshot.1 ] ; then \
$MV $SNAPSHOT_RW/current/snapshot.1 $SNAPSHOT_RW/current/snapshot.2 ; \
fi;

# step 3: make a hard-link-only (except for dirs) copy of the latest snapshot,
# if that exists
if [ -d $SNAPSHOT_RW/current/snapshot.0 ] ; then \
$CP -al $SNAPSHOT_RW/current/snapshot.0 $SNAPSHOT_RW/current/snapshot.1 ; \
fi;

# step 4: rsync from the system into the latest snapshot (notice that
# rsync behaves like cp --remove-destination by default, so the destination
# is unlinked first. If it were not so, this would copy over the other
# snapshot(s) too!
$RSYNC \
-vaz --delete --delete-excluded \
--exclude-from="$EXCLUDES" \
/ $SNAPSHOT_RW/current/snapshot.0 ;

# step 5: update the mtime of hourly.0 to reflect the snapshot time
$TOUCH $SNAPSHOT_RW/current/snapshot.0 ;

# and thats it for home.

# now remount the RW snapshot mountpoint as readonly

$MOUNT -o remount,ro $MOUNT_DEVICE $SNAPSHOT_RW ;
if (( $? )); then
{
$ECHO "snapshot: could not remount $SNAPSHOT_RW readonly";
exit;
} fi;

Fly
14.07.05, 06:56
Na hoppla, das ist mir neu :eek: ...
Ist da auch Freeware?

Natürlich, das kannst du hier (http://sourceforge.net/projects/backuppc/) downloaden. Funzt bei mir perfekt! :)

AceTheFace
14.07.05, 08:28
Ich benutze dafür reobackup. Funktioniert perfekt um per ftp zu sichern.

Gruß,
Ace

pitu
16.07.05, 10:13
also, wie ich mir deine Meldung so anschaue, so hast du da ein nas im netz mit einem snapshot und darin hast du ein problem mit links, dieser link hat zuerstmal dann nix mit nfs zu tun und rsync dann erst recht nicht.

falls du dieses nas verwaltest, solltest du lieber nochmal eine schulung besuchen, das soll jetzt kein angriff sein, sondern ein gut gemeinter hinweis.

so, nun zu Deiner Backuploesung. Du willst:
- täglich möglichst nur die veränderten Dateien sichern
- zugriff auf die Dateien des letzten monats
- einfacher zugriff ohne backups einzuspielen

Also, das geht zusammen NICHT!!
Bei einem FULL-Backup werden eben ALLE Dateien gesichert
Bei einem incrementel Backup nur die veränderten, aber dakommst du nur dran, wenn du vom letzten full der Reihe nach alle Incrementals einspielst
Dass heisst, es geht auch anders, dazu brauchst du aber groessere Backup-Tools die als Server und clients auf den verschiedenen Maschienen laufen.

Und: Einfacher Zigriff auf den letzten Monat...

Also, so wie ich das Sehe, kriegst du das nur mit einer "Kompiloesung" hin, naemlich mit einem SCM-System, dass du FULL sicherst.

SCM bietet Dir:
Tägliche Sicherung nur der geänderten Dateien bzw nur der änderungen der Dateien
Einfacher Zugriff auf jede Datei, nicht nur des letzten monats, sondern seit Entstehung der Datei.

Full-Backup des SCMs, hohe Sicherheit, und du brauchst nie incrementals, die DB kann je nach system auch "Hot" gesichert werden, oder du benutzt deinen snapshot, dann kann an der DB nix passieren wenn du sie sicherst.

steve-e
16.07.05, 11:09
Ja, danke für die gut gemeinen Ratschläge, doch leider ist das etwas überdimensioniert. :ugly:

Es geht darum einen Client zu sichern, der bei mir zuhause steht. Gesichert werden sollen eigentlich nur die Dinge dich ich mir so täglich zusammen schreibe, also hauptsächlich Latex/Worddokumente, selbstgeschriebene Scripte etc.

Das NAS ist nichts anderes wie ein Festplatten-Controller mit Netzwerkanschluss, den ich für ca 80 Euro erstanden habe. Da wäre das Geld für eine Schulung fehlinvestiert ...
Kann an dem Problem mit den Links auch zurzeit nich viel ändern, da muss ich schon auf eine neue Firmware warten.

Hab es inzwischen über reoback gelöst. Täglich werden tar-balls mit meinen veränderten Daten generiert und mittels FTP auf dem Nas gesichert, am Ende der Woche gibt es Full-Backups. Alte Backups werden nach drei Woche gelöscht.

Das Verzeichnis in dem die Daten liegen hänge ich über NFS read-only ein, hab also schnell Zugriff und sie sind auch bei einem "cd / && rm -rf *" sicher.

hacknix
20.04.06, 15:37
Hallo

ich möchte das ganze auch einmal testen bin aber sehr unerfahren.

Ich habe einen WINXP Rechner und möchte dort meine Daten vom Webserver sichern

Der Rsyncdeamon läuft auf dem Linux Server

Auf dem Windows Rechner habe ich cwrsync in der aktuellen Version am laufen.

folgendes habe ich auf der windows Konsole eingegeben.
c:\programme\cwrsync\bin\rsync.exe -av root@domain.de/home/httpd/vhosts/domain.de/httpdocs/ /c/cygdrive/temp/1

aber mit diesem Befehl syncronisiert er nicht. Es kommt auch keine Abfrage bzgl. der SSH Anmeldung.

Könnt Ihr einem absolutem NOOB helfen?

Gruß Marcus (hacknix)

floschuh
20.04.06, 16:58
In der Annahme, dass


/c/cygdrive/temp/1

richtig ist (ich vermute mal, du mountest über smb deine C-Partition von Windwos auf dem Websever unter /c/)
schätze ich einfach mal, dass es an


root@domain.de

liegt.Wenn nämlich keine Verbindung erstellt werden kann, muss es ja an der Domaine liegen. Du könntest statt root@domain.de ja mal root@192.123.15.9 versuchen. Die Ip sollte natürlich die zu deinem Server zugehörige sein.

Gruß
Flo

Fly
20.04.06, 17:44
Hallo

ich möchte das ganze auch einmal testen bin aber sehr unerfahren.

Ich habe einen WINXP Rechner und möchte dort meine Daten vom Webserver sichern

Der Rsyncdeamon läuft auf dem Linux Server

Auf dem Windows Rechner habe ich cwrsync in der aktuellen Version am laufen.

folgendes habe ich auf der windows Konsole eingegeben.
c:\programme\cwrsync\bin\rsync.exe -av root@domain.de/home/httpd/vhosts/domain.de/httpdocs/ /c/cygdrive/temp/1

aber mit diesem Befehl syncronisiert er nicht. Es kommt auch keine Abfrage bzgl. der SSH Anmeldung.

Könnt Ihr einem absolutem NOOB helfen?

Gruß Marcus (hacknix)


Moment! Bist du dir sicher, dass rsync Daten von einem Linux System auf Windows sichern kann? Ich hab das nicht versucht bzw. schaue mir das auch nicht an, da ich leider keine Zeit habe...

hacknix
21.04.06, 13:59
Hi

mit cwrsync geht das. Zumindest hatte ich es am laufen. Jetzt bekomme ich es aber nicht mehr hin. Ich möchte so eine zweite Sicherung meines "Spielservers" im Inet machen.

MfG