0 Inodes, dennoch ~70 GB frei
email.listen at googlemail.com
email.listen at googlemail.com
Don Nov 16 06:39:37 GMT 2006
Am Thu, 16. November 2006 04:34 schrieb Bernd Schwendele:
> Hallo Liste,
>
> ich hab da ein kleines Problemchen mit meiner externen Festplatte.
> Leider lässt sich auf dieser nichts mehr speichern, trotz ca. 70 freien
> GBs. Allerdings verrät mir ein df -i, dass dort keine Inodes "mehr frei
> sind".
>
> besc2008 at defiant:~$ df -h
> Dateisystem Größe Benut Verf Ben% Eingehängt auf
> [...]
> /dev/sda2 230G 152G 67G 70% /media/MAPOWER-EXT3
>
> ----
>
> besc2008 at defiant:~$ df -i
>
> Dateisystem INodes IBenut. IFrei IBen% Eingehängt auf
> [...]
> /dev/sda2 235008 235008 0 100% /media/MAPOWER-EXT3
>
> Was kann ich denn tun, um an die restlichen 67 GBs zu kommen?
Erst mal herausbekommen warum keine inodes mehr frei sind.
Was sagt ein 'sudo fdisk -l /dev/sda' bzw. 'fdisk -l /dev/sda2' wenn du es auf
einem Terminal eingibst?
Interessant ist auch was du auf der Platte gespeichert hast. z.B. ob es sehr
viele kleine Dateien sind.
Hontergrund:
Siehe auch http://www.linux.org/docs/ldp/howto/Filesystems-HOWTO.html ist
allerdings von 2000 und damit etwas alt.
Einige Dateisysteme erlauben es die Blockgrössen vor zu geben.
So bei ext2:
-b block-size
Specify the size of blocks in bytes. Valid block size vales are
1024, 2048 and 4096 bytes per block. If omitted, mke2fs block-
size is heuristically determined by the file system size and the
expected usage of the filesystem (see the -T option). If block-
size is negative, then mke2fs will use heuristics to determine
the appropriate block size, with the constraint that the block
size will be at least block-size bytes. This is useful for cer‐
tain hardware devices which require that the blocksize be a mul‐
tiple of 2k.
Eine Datei belegt dabei auf dem Datenträger immer ein vielfaches dieser Blöcke
auf der Platte.
Programme wie mke2fs die die Partition formatieren sorgen in der Regel
eigendlich immer dafür das die Blockgrösse und die Anzahl inodes in einem
vernünftigen Grösse angelegt werden. Trotzdem kann es manchmal dazu kommen
das dies nicht immer für den jew. Einsatzzweck richtig sein muss. So ist eine
Partition die sehr gross ist und per ext2 eine Blockgrösse von 4096 bytes per
Block zum sichern von Dateien die überwiegend kleiner sind (Dateien auf
einnem newsserver sind so ab 1000 bytes gross) eine immense
Platzverschwendung. Solch eine Partition wäre bereits voll wenn sie zu einem
viertel mit 1000 byte grossen Dateien gefüllt wäre da jede Datei mindestens
einen Block von 4096 byte belegt.
(Es gibt Dateisysteme die ein sog. Sub-Block Allocation beherrschen, dort
werden die Blöcke noch mal in Sub-Blöcke unterteilt (z.B. 4, 8, oder 16
Sub-Blocks) und die Dateien können auch teilweise bereits belegte Blöcke
nutzen. Wenn ich mich recht erinnere beherrschen jfs und xfs sub-block
allocation, bin mir da aber nicht mehr ganz sicher, man möge mich berichtigen
wenn ich hier falsch liege.
Dateisysteme wie ext3, xfs, jfs und andere sind auch in der lage die inodes
dynamisch zu verwalten. So kommt es erst gar nicht zu dem von dir
beobachteten Problem.)
Allerdings sind solche Szenarien _äusserst_ selten.
Häufiger kommt es vor das gerade ein externer Datenträger mit einem falschen
FAT Dateisystem formatiert wurde. Ein 12-Bit FAT wie es für Disketten
verwendet wird ist bei einer Festplatte mit einigen GB ein ziemlicher Schuss
in den eigenen Fuss...
Von da her wäre es noch interessant zu wissen wie die Platte paritioniert und
das Dateisystem formatiert wurde.
regards,
Thomas