Forum: PC Hard- und Software Festplatte defragmetieren ohne Dateisystem zu kennen


von Christian (Gast)


Lesenswert?

Hallo,

ist es denkbar ein Programm zu schreiben, dass z.B. eine Festplatte 
defragmentieren kann ohne dass es das Dateisystem kennt?

Christian

von Frank S. (Firma: HSCS) (linuxerr)


Lesenswert?

nein, das ist ein widerspruch in sich. ohne das dateisystem zu kennen, 
ist es nicht einmal möglich zwischen zufälligen und echten daten zu 
unterscheiden. ausserdem hängt es vom dateisystem und vom physikalischen 
trägermedium ab, ob eine defragmentierung überhaupt sinnvoll ist.

von Andreas K. (a-k)


Lesenswert?

Aus dem laufenden System heraus kann es möglich sein. Der 
Defragmentierer muss dann nicht die Filesysteminformation kennen, aber 
das Betriebssystem natürlich schon.

Wenn das Filesystem so gebaut ist, dass es frisch erzeugte und in einem 
Rutsch geschriebe Files mit möglichst wenig Fragmentierung anlegt, dann 
kann es ausreichend sein, sämtliche Files einfach umzukopieren. 
Vorausgesetzt allerdings, es ist genug zusammenhängender Freiraum 
vorhanden, d.h. bei 98% Füllgrad stehen die Chancen schlecht.

Grad so arbeiten beispielsweise Defragmentierer für NTFS. 
Filesysteminformation wird dabei nur verwendet, um rauszukriegen wo sich 
das lohnt (und für die hübschen Bildchen).

von I_ H. (i_h)


Lesenswert?

Moderne Dateisysteme defragmentieren sich selber solang etwa 5..10% frei 
sind (zB. reiserfs, ext3, jfs, xfs...). Das einzige fs das damit arge 
Probleme hat, ist Fat... weil m$ das uralte Ding ja unbedingt noch 
jahrelang einsetzen musste (stammt noch aus CP/M Zeiten). NTFS4 ist auch 
net gut darin.

von Frank S. (Firma: HSCS) (linuxerr)


Lesenswert?

I_ H. wrote:
> Das einzige fs das damit arge
> Probleme hat, ist Fat... weil m$ das uralte Ding ja unbedingt noch
> jahrelang einsetzen musste (stammt noch aus CP/M Zeiten). NTFS4 ist auch
> net gut darin.

ooooch, sei nicht so gemein. da hat doch der user schön was zu tun und 
wenn er dann seinen defragmentierer durchlaufen lassen hat, dann kann er 
mit anderen winusern am stammtisch fachsimpeln, wie oft man das machen 
sollte und das der rechner jetzt plötzlich viel schneller ist und auch 
nicht so oft hängen bleibt.

von Andreas K. (a-k)


Lesenswert?

Defragmentierung ist nicht identisch mit Vermeidung von Fragmentierung.

@I_ H.: Willst du damit sagen, dass all diese Filesysteme stark 
fragmentierte Files automatisch ohne weiteres Zutun umbauen? Da habe ich 
ich vielen Fällen so meine Zweifel.

Oder soll es nicht vielmehr heissen, dass moderne Filesysteme 
Fragmentierung vermeiden, indem Files beim Anlegen und Schreiben 
möglichs zusammenhängend anlegegt werden.

Insbesondere Files, die über Tage und Wochen immer und immer wieder mal 
ein Stückchen grösser werden, neigen auch auf solchen Filesystemen gern 
zu Fragmentierung. Das betrifft beispielsweise Logfiles, aber leider oft 
auch Datenbankfiles.

von I_ H. (i_h)


Lesenswert?

XFS ist ein extra für Datenbanken entwickeltes FS ;)

Bei Operationen auf Dateien wird möglichst zusammenhängend gearbeitet 
und auch zusammenhängende Bereiche frei gelassen, und bei Files die sich 
häufig ändern gleich etwas mehr Platz reserviert... im Detail sind die 
Techniken natürlich noch etwas komplizierter.

Irgendwo gab's mal ein Tool um den Fragmentierungsgrad von reiserfs oder 
ext3 zu messen, der bleibt immer nahe 0... solange die Platte nicht 
wirklich richtig voll ist.

von Andreas K. (a-k)


Lesenswert?

NB: Es gibt auch moderne Filesysteme mit starker Neigung zur 
Fragmentierung. Nämlich wenn das Hauptaugenmerk beim Design des
Filesystems ganz woanders liegt und sich eine spezifische Form der 
Fragmentierung als zwangsläufige Folge ergibt. WAFL von NetApp ist so 
eines. Ungeordnetes Schreiben in ein bereits bestehendes File (typisch 
für Tablespaces von Datenbanken) sorgt bei diesem für erhebliche 
Fragmentierung.

von Andreas K. (a-k)


Lesenswert?

Gemäss Wikipedia gibt es sogar für XFS von Haus aus ein 
Defragmentierungstool ;-).

von I_ H. (i_h)


Lesenswert?

Es defragmentiert sich aber trotzdem selber.

Btw. die home-partition auf'm Laptop:

Total files:      11498
Fragmented files: 2175
Fragments:        115501
18.9% non contiguous files, 10 average fragments.


Also 20%, wobei 10 Teile pro file noch absolut im Rahmen sind (ein ISO 
Image hatte zB. 100 Fragmente, je ~6MB). Root-Partition läuft gerade.

EDIT: und ist fertig:

Total files:      273646
Fragmented files: 8060
Fragments:        298800
2.9% non contiguous files, 1 average fragments. Weniger Fragmentierung 
weil die Dateien kleiner sind.

von Andreas K. (a-k)


Lesenswert?

Ich kann mir durchaus Filesysteme vorstellen, die selbst 
defragmentieren. Will dir damit also nicht widersprechen. Ich kriege 
bloss dieses Posting nicht damit in Zusammenhang. Der einfache 
Ist-Zustand eines Filesystems ist kein Beweis für Defragmentierung, 
sondern allenfalls für effektive Vermeidung von Fragmentierung.

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.