Backup mit Cronjob nur teilweise!!!!!!

Dieses Thema im Forum "Shell-Skripte" wurde erstellt von noob222, 20.04.2007.

  1. #1 noob222, 20.04.2007
    noob222

    noob222 Mitglied

    Dabei seit:
    20.04.2007
    Beiträge:
    41
    Zustimmungen:
    0
    Hallo,
    habe ein Script zur Datensicherung eines Systems. Wenn man es manuell ausführt, dann klappt alles wunderbar.

    Da ich es natürlich automatisch haben möchte, habe ich ein Cronjob-Script erstellt. Diese wird auch ausgeführt, jedoch werden nicht alle erforderlichen Daten gesichert.

    Folgendes wird manuell erstellt aber per Cronjob nicht :




    Code:
    
    # Erstellen des Datenbank-Dump-Files
    exp $DB_USER/test@$SID file=$BACKUPDIR_TODAY/$DB_EXPORTFILE log=$BACKUPDIR_TODAY/$LOG_DBEXPORTFILE statistics=none compress=yes
    
    wobei

    Code:
    
    BACKUPDIR_TODAY=$BACKUPDIR/$DATE
    DB_EXPORTFILE=$SAVE_HOST"_"$DB_HOST"_"$DB_USER"_at_"$SID"_"$DATE.dmp
    LOG_DBEXPORTFILE=db_export_$DATE.log
    
    es soll also die .lgo (der dazugehörige log-Order) und die .dmp Datei erstellt werden.

    wenn ich das Script manuell starte dann bekomme ich im nachhinhein eine Bestätitungsmail in der für die .dmp Datei folgendes steht



    Code:
    
    . exporting bitmap, functional and extensible indexes
    . exporting posttables actions
    . exporting materialized views
    . exporting snapshot logs
    . exporting job queues
    . exporting refresh groups and children
    . exporting dimensions
    . exporting post-schema procedural objects and actions
    . exporting statistics
    Export terminated successfully without warnings.
    
    aber wenn ich es halt mit Cronjob starte, bekomme ich diese Meldungen nicht.

    Woran kann das liegen?
    Kennt einer das problem??

    danke
    mfg
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. rikola

    rikola Foren Gott

    Dabei seit:
    23.08.2005
    Beiträge:
    2.133
    Zustimmungen:
    0
    Wie seht denn der Eintrag in der crontab aus?
     
  4. blur

    blur Tripel-As

    Dabei seit:
    01.12.2006
    Beiträge:
    156
    Zustimmungen:
    0
    Moin, moin,

    cronjobs werden mit sh ausgeführt. Guck Dir mal Dein Script an, sind da relative Pfade drin? Mach mal absolute draus.

    Gruß
    Blur
     
  5. #4 noob222, 20.04.2007
    Zuletzt bearbeitet: 20.04.2007
    noob222

    noob222 Mitglied

    Dabei seit:
    20.04.2007
    Beiträge:
    41
    Zustimmungen:
    0
    na ja, der eintarg in der crontab ist schon korrekt,weil er ja auch das script ausführt.

    habe den cronjob folgendermassen definiert:

    Code:
    20 12 * * 1 /testsystem/backup_order/backup.sh
    
    aber wie gesagt, wird mein backup-script am montag um 12:20 aufgerufen. nur werden nicht alle dateien gesichert. aber wenn ich es manuell mache, dann schon. das kann ich gerade nicht verstehen


    PS: was ist der unterschied zwischen relativen und absoluten Pfade??
    also in meinem beispiel wäre es ein absoluter Pfad, weil es mit einem "/" anfängt oder (?) und dementsprechend auch richtig sein sollte.
     
  6. #5 Wolfgang, 20.04.2007
    Wolfgang

    Wolfgang Foren Gott

    Dabei seit:
    24.04.2005
    Beiträge:
    3.978
    Zustimmungen:
    0
    Ort:
    Erfurt
    Hallo

    Die Pfade innerhalb deines Scriptes solltest auch absolut setzen.
    Ein Script, welches als Cronjob läuft kennt all die in der ~/.bashrc definierten Umgebungsvariablen nicht.
    Wenn du in der Crontab eine Mailadresse (systemuser) einfügst, bekommst du alle Ausgaben dorthin gesendent (auch die Fehlerausgaben).

    Das sollte dann Klarheit verschaffen.

    Gruß Wolfgang
     
  7. #6 noob222, 22.04.2007
    noob222

    noob222 Mitglied

    Dabei seit:
    20.04.2007
    Beiträge:
    41
    Zustimmungen:
    0
    hmm, die pfade in dem script sind auch alle absolut.
    ich kriege ja eine mail, sowohl per cronjob als auch wenn ich es manuell starte. die ausgabe steht ja ganz oben beschrieben


    wenn ich es manuell starte steht da : Export terminated successfully without warnings.

    wenn ich es per cronjob laufen lasse steht da nix.....
     
  8. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  9. #7 Schlaubi_fi.de, 23.04.2007
    Schlaubi_fi.de

    Schlaubi_fi.de Mac OS X User

    Dabei seit:
    22.12.2004
    Beiträge:
    304
    Zustimmungen:
    0
    Hallo,

    Dir sollte bewusst sein, dass aus der Shell heraus bzw. manuell, diverse
    Umgebungsvariablen gesetzt sind - im Cronjob hingegen nicht! Dort ist
    die Umgegung (oftmals) eher rudimentär.

    Ich glaube, dass dem exp-Kommando Umgebungsvariablen fehlen, da Die
    Ausgabe sehr nach Oracle aussieht, nachfolgend ein paar Variablen, die
    Du VOR dem Aufruf des exp-Kommandos unbedingt setzen solltest!

    export ORACLE_SID=<sid>;
    export ORACLE_HOME=/opt/oracle/orahome;
    export ORACLE_TERM=xterm;
    export TNS_ADMIN=/opt/oracle/orahome/network/admin;
    export NLS_LANG="";

    (Bitte auf Deine Umgebung anpassen!)
     
  10. #8 noob222, 23.04.2007
    noob222

    noob222 Mitglied

    Dabei seit:
    20.04.2007
    Beiträge:
    41
    Zustimmungen:
    0
    @ Schlaubi_fi.de

    danke für die infos werde diese morgen dann mal direkt in die tat umsetzen, weil ich von zu hause keine rechte für den server habe. aber noch ne kurze frage, damit ich mir auch sicher sein kann und das es eventuell beim ersten mal klappt (hoffen wir es doch mal :-) ). ich muss die Befehle

    bevor ich das script per cronjob laufen lasse, in der shell (ich benutzte den csh-shell) setzten?????
    natürlich muss ich die variablen meiner umgebung anpassen.
    muss ich irgendwo in meinem script diese Variablen auch definieren????
    weil ja keine dieser Variablen in meinem script auftauchen.

    kann ich also den "exp"-Befehl in meinem script so stehen lassen wie er ist ohne weitere Befehle, die eventuell etwas mit den von dir oben genannten Variablen zu tun haben?

    PS: es ist ein Oracle Datenbank :-) hatte ich vorher vergessen gehabt zu erwähnen :-(

    mfg
     
Thema:

Backup mit Cronjob nur teilweise!!!!!!

Die Seite wird geladen...

Backup mit Cronjob nur teilweise!!!!!! - Ähnliche Themen

  1. Bräuchte Hilfe bei Backupscript mittels Bash und cronjob

    Bräuchte Hilfe bei Backupscript mittels Bash und cronjob: Es soll für bestimmte Ordner Archivierung aller Dateien(Logfiles), die älter als 30 Tage sind machen. Am besten einmal täglich nachts irgendwann....
  2. Backups über Webmin und Cronjobs

    Backups über Webmin und Cronjobs: Auf meinem Mandriva 2005 System habe ich Webmin in der neuesten Version installiert. Da ich nun auch Backups machen will, hab ich mir gedacht,...
  3. Entwicklung von »Arkeia Network Backup« eingestellt

    Entwicklung von »Arkeia Network Backup« eingestellt: Nachdem die Backup-Lösung »Arkeia Network Backup« bereits seit geraumer Zeit nicht mehr an Neukunden ausgeliefert wird, steht nun fest, dass die...
  4. Backup Alternative zu CloneZilla

    Backup Alternative zu CloneZilla: Moin, bin im Moment auf der Suche nach ner verlässlichen alternative für vollständige Plattenbackups. Leider meldet clonezilla immer wieder...
  5. Projekt Backup Server

    Projekt Backup Server: Ich bekomme Gehäuse Supermicro CSE-846A-R900B Motherboard Supermicro X10SLM-F Intel Xeon E3 1230V3 2x8GB Kings. DDR3 1600MHz...