PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : speicher in /var "verschwindet" langsam



hellberry
18.12.07, 18:48
hallo,

ich habe ein problem mit meiner /var partition. df -h zeigt folgendes:
/dev/sda5 2,8G 2,1G 534M 81% /var

also 2,1G in use. gehe ich in /var und mache du -sh sehe ich:
347M .

die partition wird laut df -h von tag zu tag voller, ich lösche schon log files, habe den mysql daten ordner auf eine andere partition verschoben und apache und mysql restartet für den fall, dass irgendwas gecached wird, aber geholfen hat es nichts.

hat einer eine erklärung hierfür und vielleicht sogar einen tipp, was man machen kann, am besten ohne die partition zu unmounten oder ähnliches?

system ist debian testing.

vielen dank schonmal!!

pucki
18.12.07, 20:03
und was sagt dir ein

du -m --max-depth=1

wenn du in /var stehst?


bzw.

ein

ls -all lost+found


grüße

403
19.12.07, 05:51
moin,

noch 2 Sachen:

lsof | grep deleted|grep '/var'

Hast du /var auf versteckte Verzeichnisse/Dateien geprueft?

Gruss
403

hellberry
19.12.07, 09:33
danke für eure antworten!

hier sind die ausgaben:

du:


1 ./lost+found
1 ./tmp
70 ./lib
44 ./cache
3 ./backups
1 ./local
1 ./lock
206 ./log
1 ./run
18 ./spool
1 ./opt
1 ./mail
48 ./ressources
25 ./www
1 ./www2
412 .


lost+found


insgesamt 52
drwxr-xr-x 2 root root 49152 2006-12-28 14:06 .
drwxr-xr-x 17 root root 4096 2007-05-09 19:15 ..


lsof | grep deleted|grep '/var':
sehr sehr viel, | wc -l sagt 3404. steckt da der wurm drin?

anscheinend keine versteckten ordner/dateien in /var.

cane
19.12.07, 10:54
Interessant sind weniger der belegte Platz als welche Verzeichnisse wachsen.

Bitte packe folgendes Tool in einem beliebigen Verzeichnis aus:
http://gt5.sourceforge.net/

Dann führst Du es als root aus: ./gt5 /var

Dann führst Du es nach einigen Tagen nochmal aus und schaust dir die nette HTML Seite an die dir in roter schrift anzeigt welche verzeichnisse unterhalb /var/ wie stark gewachsen sind. Dann einfach weiter runter in den verzeichnis Ebenen und schwupps hast du deine Kandidaten.

I love gt5 :)

mfg
cane

403
19.12.07, 19:44
also ich wuerde jetzt mal den einen oder anderen Dienst neustarten, dessen Dateien bei
lsof mit deleted und '/var' aufgetaucht sind. Wenn das nicht hilft, haben wir ja noch canes
Killerwaffe :D

hellberry
20.12.07, 19:12
danke cane, habe es mal installiert und ausgeführt, fürchte aber, dass es nichts helfen wird, weil es wohl wie 'du' auch den wirklich verbrauchten speicherplatz zeigen wird und nicht den reservierten.

ich habe gerade gesehen, dass fast alle dateien aus der lsof anzeige apache logs sind. apache habe ich daraufhin restartet, aber die ausgabe bleibt fast die gleiche und mehr speicherplatz steht auch nicht zur verfügung.

kann man die freigabe irgendwie erzwingen? langsam komm ich in platzbedrängnis...

pucki
20.12.07, 20:23
hier findest du noch ein paar tips zu lsof


http://www.linuxforen.de/forums/showthread.php?t=191971


vielleicht findest du so den prozess der das ganze verursacht ...

Grüße

ps: zeige mal ein ausgabe von lsof von solchen verlorenen Dateien ...
evtl sogar mit heruntergefahrenem apache ...

hellberry
21.12.07, 14:49
zeilen sind z.b.:
log/apache2/<domain>.1 (deleted)
apache2 31681 root 19w REG

gibt es denn keine möglichkeit apache zur freigabe zu zwingen?

MiGo
21.12.07, 15:12
gibt es denn keine möglichkeit apache zur freigabe zu zwingen?
/etc/init.d/apache2 restart
hilft. Ebenso bei allen anderen Diensten.

pucki
21.12.07, 16:21
zeilen sind z.b.:
log/apache2/<domain>.1 (deleted)
apache2 31681 root 19w REG

gibt es denn keine möglichkeit apache zur freigabe zu zwingen?

tststs ... ist das die Ausgabe oder was hast du wie wohin kopiert?

beende mal apache und dann die Ausgabe von

lsof /dev/xxx (Partition auf der var liegt)

aber bitte die komplette, entweder als screenshot oder als textfile. zweiteres wäre mir lieber ;-)

wenn die files noch in Besitz eines Prozesses sind, kannst du evtl den Prozess killen. Dazu solltest du aber sicherstellen, dass der server heruntergefahren ist. Sonst machst du dir unnötig arbeit ...


Grüße

hellberry
21.12.07, 17:39
super, jetzt wirds was. :)

ich habe apache gestoppt (restart bringt nichts) und viele der in lsof gezeigten prozesse gekilled, nun wurde schon einiges an speicher angegeben. apache nutzt anscheinend dutzende prozessnummern, also muss ich noch einiges von hand machen, aber jedenfalls habe ich schon wieder ein paar hundert mb gewonnen.

vielen dank!

pucki
22.12.07, 10:23
nicht ganz und doch wieder ....

mach dich mal über prozesse etwas schlau ...

für jede geöffnete verbindung zu deinem apache wird ein neuer prozess gestartet. Normalerweise behält der Elternprozess die Übersicht und beendet auch die Kinder. Wenn er die Verbindung jedoch verliert oder gekillt wird bevor die Kinder sich beendet haben, dann schwirren die einsamen Kinder noch im Speicher rum ...

und die bist du gerade dabei zu killen ... und das zu weihnachten ;-)

grüße

hellberry
22.12.07, 10:32
ja ich dachte dass apache2 stop die ganzen prozesse auch stoppt, aber anscheinend habe ichm ich getäuscht. :)