Datenbank Backup

Status
Für weitere Antworten geschlossen.

Scofield8610

Benutzer
Registriert
08. Dez. 2015
Beiträge
93
Reaktionspunkte
0
Punkte
6
Guten Abend,
für das tägliche Backup nutze ich folgendes Skript:

Rich (BBCode):
#!/bin/bash
#
# dieses Skript kann man beliebig oft ausführen
#
# Anzahl der Sicherungen die aufgehoben werden sollen
KEEP=360
BACKUPS=`find /volume1/web/backup -name "mysqldump-*.gz" | wc -l | sed 's/\ //g'`
while [ $BACKUPS -ge $KEEP ]
do
ls -tr1 /volume1/web/backup/mysqldump-*.gz | head -n 1 | xargs rm -f 
BACKUPS=`expr $BACKUPS - 1` 
done
DATE=`date +%Y%m%d%H%M%S`
rm -f /volume1/web/backup/.mysqldump-${DATE}.gz_INPROGRESS
/bin/mysqldump --opt -uroot -pXXX --all-databases | gzip -c -9 > /volume1/web/backup/.mysqldump-${DATE}.gz_INPROGRESS
mv -f /volume1/web/backup/.mysqldump-${DATE}.gz_INPROGRESS /volume1/web/backup/mysqldump-${DATE}.gz
exit 0


Zur Ausführung wurde im Aufgabenplaner ein "Benutzdefiniertes Skript" ausgewählt.
Nach erfolgtem Backup kommt eine Mail, in der folgendes steht:

Rich (BBCode):
Aufgabe: Datenbank sichern
Startzeit: Sat, 25 Feb 2017 21:45:02 GMT
Stoppzeit: Sat, 25 Feb 2017 21:45:23 GMT
Aktueller Status: 0
Standardausgabe/Fehler:
find: cannot get current directory: Permission denied


Das Backup wird auch im gewünschten Pfad abgelegt.
Was mich stört, ist der rote Absatz in der Bestätigungsmail --> die Zugriffsrechte scheinen hierfür nicht ausreichend zu sein, kann/ muss der Benutzer des ausführenden Skripts geändert werden?

VG.
Chris
 
Hi,

Welcher User führt das Skrip aus und wo wurde es gespeichert? Was passiert wenn du es auf der Konsole startest?
Das erstellt backup zip verfügt über brauchbaren Inhalt, schon mal überprüft?

btw. Ich würde dir empfehlen das Backup nicht ins Webserver root share abzulegen.

Bob
 
Hallo Bob,

das Skript wurde gespeichert unter \volume1\web

Welcher User es ausführt kann ich nicht sagen, es gibt drei aktive Benutzerkonten, allerdings nur ein Konto mit Adminrechten.
Wie genau wird denn definiert, welcher Nutzer das Skript ausführt?

Das gestrige Backup habe ich gerade in eine neue Datenbank importiert --> funktioniert problemlos.

Welcher Speicherort wäre denn besser geeignet, das Backup abzulegen?
 
Alles worauf http keinen Zugriff hat.
 
Welcher User es ausführt kann ich nicht sagen, es gibt drei aktive Benutzerkonten, allerdings nur ein Konto mit Adminrechten.
Wie genau wird denn definiert, welcher Nutzer das Skript ausführt?

Das kannst du im Aufgabenplaner einfach auswählen.
 
Das kannst du im Aufgabenplaner einfach auswählen.

Jetzt hab ich´s auch gesehen - und auf "root" geändert :D
Wenn das Skript heute Nacht läuft werde ich sehen, ob der Zugriff diesmal korrekt war.
Danke dir.

Welcher Speicherort wäre denn besser geeignet, das Backup abzulegen?

Alles worauf http keinen Zugriff hat.
Worin genau besteht denn das Problem, wenn http Zugriff auf den Pfad hat?
 
Alles in /web darf halt die Gruppe http lesen und je nach Konfiguration auch schreiben. Wenn man den Pfad weiß, man man so die Dumps aus /web herunterladen.
Es gibt halt einfach manche Sachen, die man nicht machen soltle. :o
 
Es gibt halt einfach manche Sachen, die man nicht machen soltle.

Okay, aber wenn ich einen neuen gemeinsamen Ordner erstelle, werde ich nur gefragt welcher Benutzer entsprechende Rechte erhalten soll.
Wie werden die Rechte der Gruppen für einzelne Ordner angepasst?
 
EDIT: Ich hab´s gefunden unter Systemsteuerung > Gruppe > Bearbeiten

Schaue ich mit gleich einmal näher an...
 
Wenn Du einen gemeinsamen Ordner erstellst hat http darauf erstmal prinzipiell keine Rechte.
Dafür müsstest Du die Openbase_Dir anpassen. Diese Option erlaubt Dir für http auch Zugriff außerhalb des /web zu geben.
 
Status
Für weitere Antworten geschlossen.
 

Kaffeautomat

Wenn du das Forum hilfreich findest oder uns unterstützen möchtest, dann gib uns doch einfach einen Kaffee aus.

Als Dankeschön schalten wir deinen Account werbefrei.

:coffee:

Hier gehts zum Kaffeeautomat