Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Crontab erledigt Skript nicht bis zum Ende

Frage Linux

Mitglied: itproject

itproject (Level 1) - Jetzt verbinden

07.01.2011 um 12:11 Uhr, 4806 Aufrufe, 9 Kommentare

Hallo zusammen,

habe crontab im Einsatz.
Das ganze ist auf einem Debian 5.0 Server installiert.

Habe zur Datensicherung ein Backup-Skript geschrieben, dass nach beendigung das Archiv auf einen FTP kopiert und anschließend das Original löscht.

wenn ich mit ./scriptname das Skript ausführe klappt alles wunderbar.
wenn ich allerdings das ganze mit Crontab automatisieren möchte beginnt das skript zu laufen und bricht während dem packvorgang ab.

d.h. crontab startet das skript, also das tasking funktioniert anscheinend, jedoch bricht es aus irgendeinem, mir nicht ersichtlichen grund nach nur 19k vom tar.gz ab (warscheinlich kleiner als 1sec)

Ich wäre dankbar für jede Hilfe

Danke u. Gruß

Itproject
Mitglied: jhinrichs
07.01.2011 um 13:30 Uhr
Moin,
zunächst einmal ein paar Fragen:
Unter welchen Rechten läuft das Skript wenn Du es von Hand startest und wenn es vom crond gestartet wird? Bricht der Übertragungsvorgang ab oder der Archivierungsvorgang?
Bitte poste doch einmal den relevanten Teil des Skripts sowie der crontab.

Grüße
Bitte warten ..
Mitglied: itproject
07.01.2011 um 13:57 Uhr
Hi jhinrichs,

Der Crontab eintrag in /etc/crontab ist folgender:


SHELL=/bin/sh
PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

  1. m h dom mon dow user command
#00 12 * * * root /root/backup_mo2fr.sh


Das Script ist folgendes:

#!/bin/bash

### VARIABLEN

DATE=$(date +%Y%m%d)
TIME=$(date +%k%M)

### COMMANDS

echo "" >> /var/log/backup-daily.log &&
date >> /var/log/backup-daily.log &&
echo "Backup started" >> /var/log/backup-daily.log &&

tar -czvf /backup/myserver_backup_daily.tar.gz /var/tree/ /etc/ && # HIER BRICHT ES BEREITS NACH 19k ab.
cp /backup/myserver_backup_daily.tar.gz /backup/myserver_$DATE-$TIME.tar.gz &&

ncftpput -u myftpuser -p myftppassword myftpserver / /backup/myserver_$DATE-$TIME.tar.gz &&

rm /backup/myserver_$DATE-$TIME.tar.gz &&
date >> /var/log/backup-daily.log &&
echo "Backup completed without errors" >> /var/log/backup-daily.log

Es bricht also definitiv wärent dem Archivierungsvorgangs ab.

Wenn ich es manuell starte dann auch mit root rechten.
im Crontab steht ebenfalls der user "root".


Danke und Gruß

Itproject
Bitte warten ..
Mitglied: itproject
07.01.2011 um 13:59 Uhr
Zur Ergänzung,

der Crontabeintrag hat natürlich davor kein # ist nur aktuell so

Gruß

Itproject
Bitte warten ..
Mitglied: carg
10.01.2011 um 16:34 Uhr
Hi,

bei tar das - weglassen ....
was willst Du denn mit dem && ? Lass die doch einfach mal weg

Gruß
Bitte warten ..
Mitglied: itproject
11.01.2011 um 08:38 Uhr
Hallo,

&& weglassen bringt leider auch nichts. Nach 19k ist mit Crontab Ende...

.. hätte mich auch gewundert, da auf zwei anderen Servern das gleiche Skript in Kombination mit Crontab super funktioniert.

Trotzdem Danke für die Mühe.

Hat vielleicht jemand noch eine Idee?
Bitte warten ..
Mitglied: jhinrichs
11.01.2011 um 10:05 Uhr
Moin,
welche Datei wird denn nach 19k "getart"? Du führst ja tar mit der Option "v" aus, also sollte es eine Liste der archivierten Dateien auf STDOUT ausgeben. Das würde ich erst einmal in eine Datei umleiten, sofern Du nicht sowieso vom crond eine Mail mit den Ausgaben der enthaltenen Kommandos erhältst.
Wenn dann tar immer bei der gleichen Datei abbricht, ist natürlich die Fehlermeldung noch interessant:
Also einmal die tar-Zeile im Skript ergänzen:
01.
tar -czvf /backup/myserver_backup_daily.tar.gz /var/tree/ /etc/  > /root/stdout.txt 2> /root/stderr.txt 
und dann bitte die Dateien /root/stdout.txt und /root/stderr.txt einmal hier posten.

Danke und Grüße
Bitte warten ..
Mitglied: itproject
11.01.2011 um 10:40 Uhr
Hi Jhinrichs,

ich danke erstmal für die Antwort.

Bin heute morgen auch erstmal auf die Idee gekommen das ganze mal zu Loggen -->

habe erstmal festgestellt, dass das Skript 1 Sec arbeitet und dann beendet. --> wärend dieser zeit schafft er 19k
habe das Skript noch erweitert (d.h. mehr zu tun zum abarbeiten) --> plötzlich macht er schon 1,8mb

Habe gerade eben mit > das Archivieren in mein Logfile eingehängt --->
und siehe da, sobald ich einen Log mitlaufen lasse wird das ganze ordnungsgemäß gepackt und zwar komplett.

d.h. crontab (ich glaube das muss ein bug sein oder ähnliches) läuft genau so lange, wie der Log mitläuft.

Wie kann soetwas sein?
Ich werde zwar das Backup sowiso loggen, allerdings darf Crontab nicht abbrechen wenn ich es nicht mache...

Auf den anderen Servern ging das ja auch prächtig

Kann ich irgendwie die Crontab version oder ähnliches rausfinden, vllt ist in dieser Version irgend ein Fehler enthalten der später korrigiert wurde.

Vielen Dank u. Gruß

Itproject
Bitte warten ..
Mitglied: jhinrichs
11.01.2011 um 15:14 Uhr
Hallo,
welche Version Du hast, verrät Dir die Paketverwaltung. Unter einem RPM-basierten System z. B. das Kommando
rpm -qa | grep cron
bei Debian müsste es
dpkg --get-selections | grep cron
oder so sein, mit Debian kenne ich mich nicht aus.
Ich glaube aber eigentlich nicht, dass es damit zu tun hat.
Läuft denn Dein Backup-Skript weiter, wenn tar abbricht, also funktioniert der Kopier- und Uploadvorgang oder bricht das ganze Skript ab?
Und was passiert, wenn Du das Skript nicht direkt in die crontab schreibst, sondern ein Aufrufskript, das so aussieht:
01.
#!/bin/bash 
02.
 
03.
/root/backup_mo2fr.sh &
Das soll kein Workaround sein, sondern der Fehlersuche dienen.

Grüße
Bitte warten ..
Mitglied: itproject
12.01.2011 um 15:29 Uhr
Hallo,

vielen Dank.

ich werde das mal ausprobieren.

Gruß Itproject
Bitte warten ..
Neuester Wissensbeitrag
Humor (lol)

Linkliste für Adventskalender

(3)

Information von nikoatit zum Thema Humor (lol) ...

Ähnliche Inhalte
Heiß diskutierte Inhalte
Router & Routing
gelöst Ipv4 mieten (22)

Frage von homermg zum Thema Router & Routing ...

Exchange Server
gelöst Exchange 2010 Berechtigungen wiederherstellen (20)

Frage von semperf1delis zum Thema Exchange Server ...

Windows Server
DHCP Server switchen (20)

Frage von M.Marz zum Thema Windows Server ...

Hardware
gelöst Negative Erfahrungen LAN-Karten (19)

Frage von MegaGiga zum Thema Hardware ...