Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen (A bis Z)

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

Cronjob mit bestimmten Benutzer ausführen

Frage Linux Linux Tools

Mitglied: fraggle666

fraggle666 (Level 1) - Jetzt verbinden

15.08.2007, aktualisiert 23.08.2007, 18484 Aufrufe, 8 Kommentare

Hallo zusammen,

ich möchte gerne ein Backupscript mit Hilfe des cronjobs unter Redhat ausführen.

Allerdings mit dem Benutzer Oracle...

hierfür hatte ich den Befehl crontab -l aufgerufen um zu sehen ob es schon einen Job gibt, was nicht der Fall war.
Also mit crontab /etc/crontab eine Kopie erstellt und diese mit crontab -e bearbeitet.

Soweit so gut.

Der Inhalt (Ich bin mit meinem Benutzer "oracle" angemeldet):

SHELL=/bin/bash #muss ich das ändern?
PATH=/sbin:/bin/:/usr/sbin/:/usr/bin #Hier wird des öfteren geschrieben, dass das Verzeichnis mit dem Script angegeben werden soll. Bei mir liegt das Script in /tools/backup/test.sh.
#Also "PATH=/sbin:/bin/:/usr/sbin/:/usr/bin/tools/backup/test.sh"?
HOME=/ #Hier muss ich vermutlich mein oracle Home angeben, /home/oracle/

#run-parts
0 16 * * * /tools/backup/test.sh

Der Job startet aber einfach nicht zur gewünschten Uhrzeit. Unter /var/log/ gibts eine "cron" und eine "cron.1" die ich allerdings beide nicht öffnen kann.
Das Script selbst funktioniert wenn ich es manuell anstoße.

Dankeschön für eure Hilfe

Gruß Jan
Mitglied: cykes
15.08.2007 um 16:57 Uhr
Hi,

zunächst einmal solltest Du die Dateiberechtigungen überprüfen, darf der USer oracle das Script auch anstossen/ausführen?
Was sagen die Logfiles gegen 16 Uhr, finden sich dort eventuell Fehlermeldungen?

Ich würde die Sehll im Cronfile auf /bin/sh umändern, den Pfad brauchst Du eigentlich nicht abändern, auf keinen Fall aber den kompletten Pfad inkl. Dateinamen dort einfügen (wenn überhaupt dann nur /tools/backup

Funktioniert das Script auch als User oracle beim manuellen Anstossen?

Gruß

cykes
Bitte warten ..
Mitglied: fraggle666
15.08.2007 um 17:17 Uhr
Jepp, das Script kann ich manuell als Oracle anstoßen und es funktioniert auch.
Demnach sind die Berechtigungen soweit in Ordnung.
Fehlermeldungen kann ich keine entdecken...
Bitte warten ..
Mitglied: 49391
17.08.2007 um 16:27 Uhr
Servus Jan,

bin zwar ein SuSEaner , denke aber, daß 'cron' auch unter RedHat gleich ausgeführt wird.
Die 'crontabs' werden für jeden Benutzer separat gespeichert und zwar unter /var/spool/cron/tabs/<user> und nicht in /etc.

'man cron' ist Dein Freund:
Cron searches /var/spool/cron/tabs for crontab files which are named after accounts in /etc/passwd;
Weitere Infos gibt es auch per 'man crontab'.

Du solltest Dein Skript also ausgeführt bekommen, indem Du das Original Deiner /etc/crontab wiederherstellst, Dich dann als Benutzer oracle anmeldest, 'crontab -e' aufrufst und Deine Einträge machst.
Prinzipiell sollte '0 16 * * * /tools/backup/test.sh' als Eintrag reichen.
Daß die Uhrzeit am System stimmt und der cron-Dämon läuft hast Du ja sicher schon geprüft

Noch ein Tipp: Wenn Dein Skript einen Fehler produzieren sollte, sendet 'cron' ein Mail an den Benutzer oracle mit Fehlerdetails. Abrufbar mit 'mail' in einer Konsole.

Hoffe, daß ich helfen konnte.
Gruß
Bitte warten ..
Mitglied: fraggle666
22.08.2007 um 08:32 Uhr
Hallo zusammen,

ich hab zwar keine Ahnung warum, aber mein Cronjob läuft auf einmal :/
Ich habe eigentllich nur einen reboot durchgeführt...

Dankeschön
Bitte warten ..
Mitglied: cykes
22.08.2007 um 09:02 Uhr
Hi,

vielleicht hatte sich der Cron Daemon aufgehangen. Kann auch mal passieren
Reboot tut halt auch bei Linux ab und zu gut

Gruß

cykes

P.S. Kannst Du den Beitrag bitte noch als gelöst markieren?
Bitte warten ..
Mitglied: 49391
23.08.2007 um 16:22 Uhr
Servus fragle666,

schön, daß es funktioniert. Hätte trotzdem *neugierigbin* noch ein paar Fragen, vielleicht hast Du ja kurz Zeit.

Welche Datei hast Du editiert?
Wenn Du /etc/crontab bearbeitet hast, ist klar, daß ein reboot (bzw. Neustart des crond) nötig war. /etc/crontab ist eine Art init-Datei für cron. Benutzereinträge haben dort eigentlich nichts verloren.

Oder hast Du tatsächlich als Benutzer oracle ein 'crontab -e' ausgeführt und das hat nicht funktioniert?

Existiert nun eine Datei /var/spool/cron/tabs/oracle mit Deinen Einträgen?

Interessiert mich speziell wegen eventueller Unterschiede SuSE/RedHat.

Danke und Gruß
Bitte warten ..
Mitglied: fraggle666
23.08.2007 um 16:28 Uhr
Hiho,

ich hatte diese Datei mit "crontab -e" und dem Benutzer Oracle angelegt und eben dies wollte er nicht akzeptieren.

Unter /var/spool/cron/ existiert nun eine Datei mit dem Namen Oracle und meinem Inhalt

Grüße
Bitte warten ..
Mitglied: 49391
23.08.2007 um 21:20 Uhr
Schönen Dank für die Info.
Gruß
Bitte warten ..
Ähnliche Inhalte
PHP
gelöst Ein Script, verschiedene Intervalle für Cronjob (7)

Frage von tsunami zum Thema PHP ...

Batch & Shell
Neuen Cronjob zeitgesteuert (3)

Frage von wescraven07 zum Thema Batch & Shell ...

Windows Server
gelöst Server 2008 R2: Aufgabe ohne bestimmten Benutzer starten - wie? (3)

Frage von honeybee zum Thema Windows Server ...

Neue Wissensbeiträge
Humor (lol)

Wohnt jemand in Belgien und kann nicht mehr ruhig ausschlafen?

(3)

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

Sicherheits-Tools

Trendmicro OSCE und das Fall Creators Update Win10 RS3

(3)

Information von Henere zum Thema Sicherheits-Tools ...

Microsoft Office

Text in Zahlen umwandeln

Tipp von logische zum Thema Microsoft Office ...

Heiß diskutierte Inhalte
Microsoft Office
ICH BIN AM ENDE MEINES IT-WISSENS ANGELANGT!!!! (38)

Frage von 134537 zum Thema Microsoft Office ...

Windows Server
Gruppenrichtlinie greift nicht zu! (24)

Frage von Syosse zum Thema Windows Server ...

Hosting & Housing
Mailserver Software Empfehlungen (21)

Frage von sunics zum Thema Hosting & Housing ...

Voice over IP
DeutschlandLAN IP Voice Data M Premium, Erfahrung mit Faxgeräte? (16)

Frage von liquidbase zum Thema Voice over IP ...