[linux-support] Backup Script in Ubuntu mit root Rechten laufen lassen

Mike Burgener mburgener at tuxinator.org
Sun Nov 13 12:37:32 CET 2005


Philipp Sury wrote:
> Guten Morgen Linuxgemeinde
> 
> Nachdem es mir vor zwei Wochen die Festplatte zerfetzt hat und ich
> mittlerweile eine innige Beziehung mit dd_rescue und fsck geschlossen
> habe, will ich in Zukunft den Nervenkitzel ein wenig einschränken und
> mache mich jetzt zum ersten Mal richtig hinter Shellscripts.
> 
> Mein Ziel ist es, mit einem cronjob und rsync in regelmässigen Abständen
> meine Daten von Platte 1 auf Platte 2 zu sichern.
> 
> Ich habe neu in meinem Gehäuse zwei 120GB Platten, beide genau gleich
> partitioniert:
> 
> /dev/hdb1 ist /
> /dev/hdb2 ist swap
> /dev/hdb3 ist /home
> 
> /dev/hdd1 ist /backup/system
> /dev/hdd2 ist swap
> /dev/hdd3 ist /backup/daten
> 
> 
> Der folgende Befehl funktioniert einwandfrei:
> 
> rsync -Cavz --delete /home/ /backup/daten/
> 
> 
> Das folgende Script funktioniert schon nicht mehr so toll:
> 
> #!/bin/bash
> mount /backup/daten
> rsync -Cavz --delete /home/ /backup/daten/
> umount /backup/daten
> 
> Das Problem: Ubuntu möchte, dass ich die zweite Harddisk mit sudo mounte
> resp. unmounte. Das passt mir aber nicht, da ich das Script ja später in
> einem cronjob verwenden will. Klar, ich könnte in fstab die Partitionen
> so eintragen, dass auch ein regulärer User sie mounten kann, aber ich
> möchte es so haben, dass nur root die Partition zu backup Zwecken
> mounted und dann wieder unmounted. Das Script hat übrigens root als
> owner und liegt auch im /root Ordner.
> 
> Hier also meine Fragen:
> 
> 1) Wie kann man in Ubuntu ein Script so mit root Rechten versehen, dass
> es alles tun kann, was ein "richtiger root" kann, ohne dass ich den
> Umweg über sudo und Passwortabfrage machen muss?
> 
> 2) Es wäre vermutlich intelligent, noch einen Test einzubauen, der
> überprüft, ob die Partitionen auch korrekt gemounted wurden, bevor rsync
> gestartet wird. Wie geht das?
> 
> 3) Ich möchte auch alle Unterordner von / (mit Ausnahme von /backup und
> /home) mit /backup/system rsyncen. Jetzt könnte ich natürlich für jeden
> Ordner im Script eine Zeile schreiben, aber das geht doch sicher
> eleganter... wie lauten die entsprechenden Befehle? Vermutlich müsste
> ich irgendwie ein ls von / machen und dies dann als Variable an rsync
> übergeben, aber wie könnte man dann /backup und /home wieder
> ausschliessen? (shellscript newbie here!)
> 
> 4) Ich habe ja auf der zweiten Platte noch eine zweite swap Partition,
> welche bisher ungenutzt herumliegt. Kann ich einfach einen zweiten swap
> Eintrag in /etc/fstab machen und sie wird vom System genutzt?
> 
> Live long and prosper,
> 
> 	Parcival
> 


So können deine Daten inkonsistent werden, wie wäre es einfach mit 
Linux-Software raid? Kann auch ohne Neuinstallation gemacht werden also 
von dem her, haben das in unserer Firma ohne Probleme im Einsatz.

Gruss

Mike


More information about the Linux-support mailing list