(03-11-2009 06:38 AM)menki Wrote: ok also hat das indirekt nichts mi meinem problem zu tun.....
ich habe jetzt einen cron eingebaut der jeden tag in der früh 04:30 killall apache2 macht. dadruch werden die sessions wieder gekillt und der speicher wird frei. mal schauen wie sich das verhält....
dies lösung ist keine zuverlässige lösung....
MENKI
kannst es ja mit dem script hier versuchen...
Code:
#!/bin/bash
SERVERNAME="host.menkisys.de"
MONITOR_DIR="/monitor"
WEB_DIR="/var/www/ispcp/gui/tools/monitor"
WEB_URL="http://admin.menkisys.de/tools/monitor/monitor.html"
WEB_FILE="monitor.html"
TIMEOUT="3"
EMAIL="admin@menkisys.de"
LOG_FILE="apache2.log"
# Pruefen, ob das temporaere Monitoring-Verzeichnis vorhanden ist. Falls nicht, wird es erzeugt.
if ! test -d $MONITOR_DIR ; then
mkdir -p $MONITOR_DIR
fi
cd $MONITOR_DIR
# Pruefen, ob die Monitoring-Datei Web-Server-Verzeichnis verfuegbar ist.
# Falls nicht, wir das Verzeichnis und eine neue Datei mit dem Inhalt "works" erzeugt
if ! test -s $WEB_DIR/$WEB_FILE ; then
mkdir -p $WEB_DIR
echo works > $WEB_DIR/$WEB_FILE
fi
# Eine zuvor heruntergeladene Monitoring-Datei wird geloescht
rm -rf $WEB_FILE 2>/dev/null
# Die Monitoring-Datei wird vom Web-Server heruntergeladen
wget -t 1 -T $TIMEOUT $WEB_URL 2>/dev/null >/dev/null &
sleep 10
# Es wird versucht, heruntergeladene Datei zu oeffnen. Konkret wird nach dem Inhalt "works" gesucht.
grep works $WEB_FILE >apachetest 2>/dev/null
# Falls der Inhalt nicht gefunden wird, wird der Apache-Web-Server neu gestartet und eine Status-E-Mail verschickt.
if ! test -s apachetest ; then
echo `date` Apache2 Neustart >> $LOG_FILE
sleep 2
/etc/init.d/apache2 stop 2>/dev/null >/dev/null &
sleep 2
killall -9 apache2 2>/dev/null >/dev/null &
sleep 2
/etc/init.d/apache2 start 2>/dev/null >/dev/null &
sleep 3
tail -n 10 $LOG_FILE | mail -s "$SERVERNAME Apache2 Neustart" $EMAIL
fi
mkdir /root/bin/
nano ap2mon.sh
Schritt 1: datein speichern und ins tools verzeichnis zum ispcp packen... zugriff setzen
Quote:chmod +x
ap2mon.sh
Schritt 2: Jetzt testen Sie das Script zunächst manuell. Führen Sie es mit folgendem Kommando aus:
Quote: ./ap2mon.sh
Schalten Sie am besten einmal absichtlich den Apache-Web-Server aus, um zu prüfen, ob das Script sich korrekt verhält und den Web-Server neustartet.
Schritt 3: Haben Sie Ihre Tests erfolgreich durchgeführt, lassen Sie das Script alle 5 Minuten als Cronjob ausführen. Öffnen Sie dazu die Crontab (crontab -e) und fügen Sie folgenden Eintrag hinzu.
Quote: */5 * * * * /root/ap2mon.sh
nicht vergessen das monitor verzeichnis und dort eine datei reinladen. monitor.html
viel spaß