Administratorhandbuch:SquidCacheleeren: Unterschied zwischen den Versionen

Aus Delixs
Zur Navigation springen Zur Suche springen
Keine Bearbeitungszusammenfassung
 
Keine Bearbeitungszusammenfassung
Zeile 4: Zeile 4:
== Leeren des Proxy-Caches von Squid ==
== Leeren des Proxy-Caches von Squid ==


'''Achtung:''' Diese Beschreibung ist für Arktur 3 geschrieben und muss auf Arktur 4 erst noch ausgetestet werden.


Als ''root'' anmelden. Dann:
Als ''root'' anmelden. Dann:
Zeile 11: Zeile 10:
   /etc/init.d/squid stop
   /etc/init.d/squid stop
   rm -fR /var/proxy/cache    (dauert eine Weile, durchaus 10 Minuten!)
   rm -fR /var/proxy/cache    (dauert eine Weile, durchaus 10 Minuten!)
   mkdir /var/proxy/cache
   /etc/init.d/squid start    (und wieder 5-10 Minuten Geduld)
  chown squid.squid /var/proxy/cache
  /usr/squid/bin/squid -zD  (und wieder 5-10 Minuten Geduld)
  /etc/init.d/squid start
</pre>
</pre>


Zeile 37: Zeile 33:


/etc/init.d/squid stop
/etc/init.d/squid stop
sleep 180 ( oder sleep 3m )
sleep 180           ( oder sleep 3m )
killall squid (damit wirklich Ruhe ist) ???
killall squid       ( damit wirklich Ruhe ist )
/etc/init.d/squid start
/etc/init.d/squid start
</pre>
</pre>

Version vom 19. November 2005, 09:23 Uhr

Uberarbeiten Diese Seite sollte nochmals überarbeitet werden. Eine Begründung befindet sich in der Regel unter Diskussion (oben).

Leeren des Proxy-Caches von Squid

Als root anmelden. Dann:

  /etc/init.d/squid stop
  rm -fR /var/proxy/cache    (dauert eine Weile, durchaus 10 Minuten!)
  /etc/init.d/squid start    (und wieder 5-10 Minuten Geduld)


Um den überlaufenden Cache von Squid regelmässig zu löschen, kann über einen Eintrag in "/etc/crontab" das untenstehende Skript (sqempty) aufgerufen werden.


Eintrag in "/etc/crontab", damit sqempty alle drei Monate am ersten Tag um 04:00 Uhr aufgerufen wird:

00 04 1 3,6,9,12 * (tab) root (tab) sqempty

Das Skript "sqempty", das in einem über PATH erreichbaren Verzeichnis liegen muss (z.B. "/usr/sbin/"):

#!/bin/bash
#
# leert den Cache von squid
#

/etc/init.d/squid stop
sleep 180            ( oder sleep 3m )
killall squid        ( damit wirklich Ruhe ist )
/etc/init.d/squid start

Das Problem steckt im Detail: Eine Anfrage hat einen Timeout über Nameserver und Co. zwischen 2 und 3 Minuten.

Squid darf niemals von online nach offline (und umgekehrt) geschaltet werden, wenn noch Anfragen aktiv sind. In diesem Fall wird die erste Instanz nicht geschlossen (denn sie hat ja noch Anfragen), die zweite nicht sauber aufgebaut und Squid frisst sich nach endlicher Zeit fest, wobei die Zeit zwischen dem Umschalten und dem Festfressen auch eine Stunde oder mehr sein kann.



zurück | Hauptseite