BASH-Script startet Apache manchmal nicht
Hallo Liste, ich benutze hier einen selbst übersetzten Apache, der sich in /usr/local/apche befindet. Um die access_log und error_log monatlich zu kürzen und zu archivieren habe ich mir ein kleines Skript geschrieben, daß von cron an jedem ersten des Monats um 0:00 Uhr ausgeführt wird. Das Problem ist nun folgendes: Apache läuft nicht mehr wenn Cron das Skript am ersten eines Monats um 0:00 Uhr ausgeführt hat. In /var/log/messages bzw. warn finden sich keine Hinweise auf ein Fehler. Root erhält auch keine email von cron. Das mir unverständliche daran ist, daß alles bestens funktioniert, wenn ich das Skript von der Komandozeile aufrufe. Eben habe ich cron das Skript um 11:20 Uhr ausführen lassen und auch dann hat es funktioniert ?!? Hier ist das Skript: ---schnipp--- #!/bin/sh # halt the server /etc/init.d/apache stop > /dev/null APACHE_LOGS=/usr/local/apache/logs/ BACKUP_DIR=$APACHE_LOGS/old/ # define backup names OLD_ACCESS_LOG=$BACKUP_DIR/access_log.`date +%d.%m.%Y-%H:%M:%S` OLD_ERROR_LOG=$BACKUP_DIR/error_log.`date +%d.%m.%Y-%H:%M:%S` # make end of month copy for analyzer cp $APACHE_LOGS/access_log $APACHE_LOGS/access_log.backup # move files to archive directory mv $APACHE_LOGS/access_log `echo $OLD_ACCESS_LOG` mv $APACHE_LOGS/error_log `echo $OLD_ERROR_LOG` # restart web server /etc/init.d/apache start > /dev/null # compress the archived files /bin/gzip $OLD_ACCESS_LOG /bin/gzip $OLD_ERROR_LOG ---schnipp--- Das Skript läuft immer durch, da die Archiev-Dateien kompremiert sind, also die letzte Zeile ausgeführt wird. Hier noch der Crontab-Eintrag: ---schnipp--- 0 0 1 * * /usr/local/sbin/rotate_apachelogs ---schnipp--- Für jeden Tip bin ich dankbar! Viele Grüße Florian
hallo an alle, sorry, ich habe die entsprechende/n mails nichtmehr. ich will nur wissen, wie der eintrag in der access-datei auszusehen hat, damit ich meine mails auch über t-online senden kann. danke gruss michael
Gudn At 12:08 02.10.2001 +0200, Michael Grundmann wrote:
hallo an alle,
sorry, ich habe die entsprechende/n mails nichtmehr. ich will nur wissen, wie der eintrag in der access-datei auszusehen hat, damit ich meine mails auch über t-online senden kann. danke
ehm, du willst den T-Online Relayserver für deine ausgehenden eMails benutzen? Das trägst du in der sendmail.cf unter dem Punkt DS ein. tschö
* Michael Grundmann schrieb am 02.Okt.2001:
sorry, ich habe die entsprechende/n mails nichtmehr. ich will nur wissen, wie der eintrag in der access-datei auszusehen hat, damit ich meine mails auch über t-online senden kann. danke
Was hat das mit Bash-skript und Apache zu tun? Oder warum hängt Deine Mail in diesem Thread? Bernd -- Umsteiger von Microsoft Windows xx? Hast Du schon file://usr/doc/howto/de/DE-DOS-nach-Linux-HOWTO.txt gelesen? Auch file://usr/doc/Books/Linuxhandbuch.dvi ist zu empfehlen. |Zufallssignatur 1
Was hat das mit Bash-skript und Apache zu tun? Oder warum hängt Deine Mail in diesem Thread?
Bernd nein, ich muss einen eintrag unter /etc/mail/access vornehmen. das weiss ich, weil ich das mal gemacht habe. diese info hatte ich auch dieser liste. wie gesagt, leider habe ich die mail nicht mehr.
gruss michael
Hallo Florian
ich benutze hier einen selbst übersetzten Apache, der sich in /usr/local/apche befindet. Um die access_log und error_log monatlich zu kürzen und zu archivieren habe ich mir ein kleines Skript geschrieben, daß von cron an jedem ersten des Monats um 0:00 Uhr ausgeführt wird.
Warum nutzt Du nicht einfach logrotate, da waer schon alles fertig. :-)
Das Problem ist nun folgendes: Apache läuft nicht mehr wenn Cron das Skript am ersten eines Monats um 0:00 Uhr ausgeführt hat. In /var/log/messages bzw. warn finden sich keine Hinweise auf ein Fehler. Root erhält auch keine email von cron.
---schnipp--- [..] /etc/init.d/apache start > /dev/null [..] ---schnipp---
Was sagt denn Dein Apache, wenn Du ihn nicht nach /dev/null umleitest? Marcel -- _\|/_ My ~ is my castle... `(o-o)' /-----------------oOO-(_)-OOo---------------------------------------\ | Marcel Meyer | c/o Fachschaft Mathe/Physik/Info | | meyerm@fs.tum.de | Technische Universitaet Muenchen | | Tel.: +49.89.289-22997 | Arcisstrasse 19, D-80290 Muenchen | \-------------------------------------------------------------------/
On Tuesday, 2. October 2001 16:01, Marcel Meyer wrote:
Hallo Florian
ich benutze hier einen selbst übersetzten Apache, der sich in /usr/local/apche befindet. Um die access_log und error_log monatlich zu kürzen und zu archivieren habe ich mir ein kleines Skript geschrieben, daß von cron an jedem ersten des Monats um 0:00 Uhr ausgeführt wird.
Warum nutzt Du nicht einfach logrotate, da waer schon alles fertig. :-)
Hallo Marcel, Hallo Florian, Das was Florian vorhat (lt. Script) klappt nicht mit logrotate. Aber ich habe in der Apache-Doku einen Hinweis auf cronolog gefunden. Das kann das. http://www.ford-mason.co.uk/resources/cronolog/ Peter Wiersig
ich benutze hier einen selbst übersetzten Apache, der sich in /usr/local/apche befindet. Um die access_log und error_log monatlich zu kürzen und zu archivieren habe ich mir ein kleines Skript geschrieben, daß von cron an jedem ersten des Monats um 0:00 Uhr ausgeführt wird.
Warum nutzt Du nicht einfach logrotate, da waer schon alles fertig. :-) [..] Das was Florian vorhat (lt. Script) klappt nicht mit logrotate. Aber ich habe in der Apache-Doku einen Hinweis auf cronolog gefunden. Das kann das. [..]
Hallo Peter, oh, das ist aber schlecht. Denn ich selber mach etwas aehnliches auf einem RedHat-System (nicht hauen, ich habe das nicht ausgesucht... ;-) ) über logrotate. Allerdings erst heute eingerichtet, die grosse Generalprobe kommt noch *g*. Wo wuerde denn Deiner Meinung nach das Problem bei logrotate liegen? Ein prinzipielles oder ein SuSE-spezielles? In banger Erwartung :-), Marcel -- _\|/_ My ~ is my castle... `(o-o)' /-----------------oOO-(_)-OOo---------------------------------------\ | Marcel Meyer | c/o Fachschaft Mathe/Physik/Info | | meyerm@fs.tum.de | Technische Universitaet Muenchen | | Tel.: +49.89.289-22997 | Arcisstrasse 19, D-80290 Muenchen | \-------------------------------------------------------------------/
On Tuesday, 2. October 2001 16:16, Marcel Meyer wrote:
Wo wuerde denn Deiner Meinung nach das Problem bei logrotate liegen? Ein prinzipielles oder ein SuSE-spezielles?
Mir miesfiel die "seconds since the epoch" Erweiterung. cronolog macht das halt mit den real Monatszahlen, -namen ... Ausserdem kann man die Variablen auch im Pfadanteil verwenden. Sehr praktisch fuer die Uebersicht. Die grundsaetzliche Loesung ist bei beiden ausreichend gut geloest. Peter
participants (6)
-
B.Brodesser@t-online.de
-
Florian Rossol
-
Marcel Meyer
-
Matthias Strack
-
Michael Grundmann
-
Peter Wiersig