defragmentierung ext3?

counterroot

Lt. Commander
Registriert
Feb. 2005
Beiträge
1.633
Ich habe mich schon immer gefragt wie es denn bei Linux mit Defragmentierungen aussieht :D
Unter Win hat das ja immer den anschein gemacht, als ob es an der Leistung schrauben würde :D
Daher meine frage: Gibt es für das Dateisystem ext3 ne Defragmentierung oder ähnliches? wenn ja, wie kann ich die in gang kriegen? wenn nich, mit welchem Grund?
pmb µatze
 
Hallo.

Nein, du brauchst ein *nix Dateisystem nicht zu defragmentieren, da Dateifragmentation von Anfang an vermieden wird. Ausserdem gibt es, soweit ich weiss, keine Defragmentierungs-Tools (keine Kostenlosen), da man es ja, wie gesagt, eh nicht braucht.

Fuehr mal ein fsck durch - auf FreeBSD zeigt es mir immer die Fragmentierungsrate an - sollte nicht ueber 3% kommen.


greetz
 
Linux Dateisysteme besitzen intelligente Belegungsmechanismen, um der Fragmentierung vorzubeugen.
Ext2 implementiert mehrere Mechanismen, um Fragmentierung zu reduzieren. Dazu gehört das Zusammenfassen von Blöcken zu Blockgruppen. Dateien werden dann möglichst gleichmäßig auf Blockgruppen verteilt. Dadurch entsteht eine gleichmäßige Verteilung von Dateien (und freien Bereichen) auf der Platte. Im Gegensatz zu FAT werden nun Dateien immer in möglichst schlecht passende freie Bereiche gelegt, also kleine Dateien in große Lücken, um auf Größenänderungen der betreffenden Dateien ohne Verluste reagieren zu können. Hinter jeder Datei versucht Ext2 auch genug Platz zu lassen, sodass kleinere Größenänderungen von Dateien nicht prompt zu einer Fragmentierung führen. Durch die Verteilung der Daten über den kompletten nutzbaren Bereich fällt im Serverbetrieb die Fragmentierung weniger ins Gewicht als beim Lesen im „Burst“-Modus. So ordnen moderne Festplatten-Scheduler die Lese- oder Schreibanforderungen derart, dass Suchzeiten (z. B. des Schreib-Lese-Kopfes der Platte) minimal werden.

Eine weitergehende Reduzierung von Fragmenten erhält man z. B. durch das Dateisystem XFS, welches Schreiboperationen verzögert (delayed write) und im RAM möglichst komplett zwischenspeichert. Bei kleinen Dateien ist so die komplette Dateigröße dem Dateisystem bekannt, bevor die Datei auf die Platte geschrieben wird. So kann XFS eine optimale Stelle für die Datei finden. Passt die Datei nicht komplett in den RAM, wird natürlich schon vorher begonnen den Puffer auf den Datenträger zu schreiben.
http://de.wikipedia.org/wiki/Defragmentierung

Dies funktioniert sehr gut, wenn auf der Systemplatte immer mind. 5-10% freier Platz vorhanden ist.
Auch gibt es keine FAT oder MFT, welche selber fragmentieren könnte, wenn sie zu gross wird.
Für ext2 gibt es zwar auch ein "defrag", wird jedoch im normalen Einsatz nie benötigt.

Im Endeffekt muss man sich unter Linux um so etwas nicht kümmern, lediglich auf genügend freien Platz auf der Systempartition achten.

gruss, limoni
 
aay. :D danke für die informationen =)
man lernt nie aus :D

greetz µatze
 
und ich hab mich schon gefragt warum meine platte unter linux nicht so laut wird wie unter windows:D

...Suchzeiten (z. B. des Schreib-Lese-Kopfes der Platte) minimal werden.

die festplatte wird dadurch doch weniger beansprucht oder? kann man dann mit einer längeren lebenszeit rechnen?
 
Zurück
Oben