Festplatte voll obwohl leer

In seltenen Fällen hat man den kuriosen Fall, dass die Festplatte voll ist, aber man keine Dateien findet, welche ihn belegen. So auch bei meinem aktuellen Patienten.

Fehlersuche

Ein „df -h“ zeigt uns, dass auf der Festplatte 457GB belegt sind:

/# df -h
Dateisystem Size Used Avail Use% Eingehängt auf
/dev/sda5 457G 387G 48G 90% /
tmpfs 16G 0 16G 0% /lib/init/rw
udev 16G 148K 16G 1% /dev
tmpfs 16G 0 16G 0% /dev/shm

Rufen wir im Hauptverzeichniss dagegen „du -hs .*“ auf, sind nur Dateien mit einer Gesamtgröße von 659MB zu finden.

/# du -hs .*
659M

Wo ist also der Rest? Nun schauen wir uns die Festplatte mit „dumpe2fs -h /dev/sda5“ mal genauer an, eventuell gibt es ja dort ein extrem großes Journal oder Sonstiges.

/# dumpe2fs -h /dev/sda5
dumpe2fs 1.41.12 (17-May-2010)
Filesystem volume name: <none>
Last mounted on: /
Filesystem UUID: 8ce4d8b3-8beb-4bb2-9e40-2d02e98073c1
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr resize_inode dir_index filetype needs_recovery extent flex_bg sparse_super large_file huge_file uninit_bg dir_nlink extra_isize
Filesystem flags: signed_directory_hash 
Default mount options: (none)
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 30408704
Block count: 121607936
Reserved block count: 6080396
Free blocks: 77869795
Free inodes: 30382554
First block: 0
Block size: 4096
Fragment size: 4096
Reserved GDT blocks: 995
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 8192
Inode blocks per group: 512
Flex block group size: 16
Filesystem created: Mon May 21 13:21:19 2012
Last mount time: Thu Sep 6 14:45:37 2012
Last write time: Mon May 21 13:29:11 2012
Mount count: 12
Maximum mount count: 28
Last checked: Mon May 21 13:21:19 2012
Check interval: 15552000 (6 months)
Next check after: Sat Nov 17 12:21:19 2012
Lifetime writes: 137 GB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 256
Required extra isize: 28
Desired extra isize: 28
Journal inode: 8
First orphan inode: 12322323
Default directory hash: half_md4
Directory Hash Seed: 2b10893d-59bd-466e-88ae-8a8c0f48fd56
Journal backup: inode blocks
Jounaleigenschaften: journal_incompat_revoke
Journalgrösse: 128M
Journal-Länge: 32768
Journal-Sequenz: 0x0039c511
Journal-Start: 2634

Leider nein, das Journal hat nur eine Größe von 128MB.

Da auf diesem Rechner der verfügbare Platz immer kleiner wird, muss irgendetwas die ganze Zeit neue Daten auf der Festplatte ablegen. Mit „iotop -a“ kann man schnell erkennen, wer das ist.

Total DISK READ: 0.00 B/s | Total DISK WRITE: 0.00 B/s
 TID PRIO USER DISK READ DISK WRITE SWAPIN IO> COMMAND 
 337 be/3 root 0.00 B 68.00 K 0.00 % 0.41 % [jbd2/sda5-8]
 1467 be/4 nobody 0.00 B 188.00 K 0.00 % 0.00 % memcached -vv -m 8192 -p 11211 -u nobody -l [IPADDRESS] -c 8192
 1468 be/4 nobody 0.00 B 196.00 K 0.00 % 0.00 % memcached -vv -m 8192 -p 11211 -u nobody -l [IPADRESSE] -c 8192
 1469 be/4 nobody 0.00 B 216.00 K 0.00 % 0.00 % memcached -vv -m 8192 -p 11211 -u nobody -l [IPADRESSE] -c 8192
 1470 be/4 nobody 0.00 B 196.00 K 0.00 % 0.00 % memcached -vv -m 8192 -p 11211 -u nobody -l [IPADRESSE] -c 8192
 1 be/4 root 0.00 B 0.00 B 0.00 % 0.00 % init [2]
 2 be/4 root 0.00 B 0.00 B 0.00 % 0.00 % [kthreadd]
 3 rt/4 root 0.00 B 0.00 B 0.00 % 0.00 % [migration/0]
 4 be/4 root 0.00 B 0.00 B 0.00 % 0.00 % [ksoftirqd/0]
 5 rt/4 root 0.00 B 0.00 B 0.00 % 0.00 % [watchdog/0]

Da haben wir doch etwas: memached schreibt die ganze Zeit unsere Festplatte voll, nur wo hin? Also noch ein „lsof | grep memcached

/# lsof | grep memcached
memcached 1466 nobody cwd DIR 8,5 4096 2 /
memcached 1466 nobody rtd DIR 8,5 4096 2 /
memcached 1466 nobody txt REG 8,5 83136 18621865 /usr/bin/memcached
memcached 1466 nobody mem REG 8,5 51728 7077901 /lib/libnss_files-2.11.3.so
memcached 1466 nobody mem REG 8,5 43552 7077927 /lib/libnss_nis-2.11.3.so
memcached 1466 nobody mem REG 8,5 31616 7077912 /lib/libnss_compat-2.11.3.so
memcached 1466 nobody mem REG 8,5 80712 7077902 /lib/libresolv-2.11.3.so
memcached 1466 nobody mem REG 8,5 31744 7077910 /lib/librt-2.11.3.so
memcached 1466 nobody mem REG 8,5 89064 7077917 /lib/libnsl-2.11.3.so
memcached 1466 nobody mem REG 8,5 1437064 7077913 /lib/libc-2.11.3.so
memcached 1466 nobody mem REG 8,5 131258 7077904 /lib/libpthread-2.11.3.so
memcached 1466 nobody mem REG 8,5 104960 18618506 /usr/lib/libevent-1.4.so.2.1.3
memcached 1466 nobody mem REG 8,5 128744 7077907 /lib/ld-2.11.3.so
memcached 1466 nobody 0w CHR 1,3 0t0 580 /dev/null
memcached 1466 nobody 1w REG 8,5 413650802669 12322323 /var/log/memcached.log.1 (deleted)
memcached 1466 nobody 2w REG 8,5 413650802669 12322323 /var/log/memcached.log.1 (deleted)
memcached 1466 nobody 3u 0000 0,9 0 578 anon_inode
memcached 1466 nobody 4u unix 0xffff8808199f7300 0t0 14611 socket
memcached 1466 nobody 5u unix 0xffff8808199f7600 0t0 14612 socket
memcached 1466 nobody 6r FIFO 0,8 0t0 14613 pipe
memcached 1466 nobody 7w FIFO 0,8 0t0 14613 pipe
memcached 1466 nobody 8u 0000 0,9 0 578 anon_inode
memcached 1466 nobody 9u unix 0xffff8808199f7900 0t0 14614 socket
memcached 1466 nobody 10u unix 0xffff8808199f7c00 0t0 14615 socket
memcached 1466 nobody 11r FIFO 0,8 0t0 14616 pipe
memcached 1466 nobody 12w FIFO 0,8 0t0 14616 pipe
memcached 1466 nobody 13u 0000 0,9 0 578 anon_inode
memcached 1466 nobody 14u unix 0xffff8808199f6d00 0t0 14617 socket
memcached 1466 nobody 15u unix 0xffff8808199f6a00 0t0 14618 socket
memcached 1466 nobody 16r FIFO 0,8 0t0 14619 pipe
memcached 1466 nobody 17w FIFO 0,8 0t0 14619 pipe
memcached 1466 nobody 18u 0000 0,9 0 578 anon_inode
memcached 1466 nobody 19u unix 0xffff8808199f6700 0t0 14620 socket
memcached 1466 nobody 20u unix 0xffff8808199f6400 0t0 14621 socket
memcached 1466 nobody 21r FIFO 0,8 0t0 14622 pipe
memcached 1466 nobody 22w FIFO 0,8 0t0 14622 pipe
memcached 1466 nobody 23u 0000 0,9 0 578 anon_inode
memcached 1466 nobody 24u unix 0xffff8808199f6100 0t0 14623 socket
memcached 1466 nobody 25u unix 0xffff8808199f5e00 0t0 14624 socket

und wir kennen das Ziel „/var/log/memcached.log.1“, welches bereits 413650802669 Bytes groß ist. Diese Datei ist laut „ls“ in /var/log/ aber gar nicht vorhanden, welches uns auch schon beim lsof durch das „(deleted)“ angezeigt wird.

Lösung

Die Lösung des Problems ist damit ganz einfach: memcached einmal neu starten, damit er die alten Logdateien „loslässt“. Oder die große Runde damit man gleich noch eine Plattenprüfunge machen kann: den Rechner neu starten.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.