Ist der Schreibcache wichtig?
Die Platte funktioniert auch ohne eingeschalteten Schreibcache. Allerdings soll der Schreibcache Schreiboperationen beschleunigen können. Nebenbei hat das nichts mit dem Lesecache zu tun, der der eigentlich wichtigere ist, was die Performance angeht. Und der ist ja eigentlich immer an.
Bei eingeschalteten Schreibcache bekommt das Linux beim Schreiben auf die Platte schon ein OK, wenn die Daten im Schreibcache gelandet sind, aber noch nicht wirklich auf die Platte geschrieben wurden. Nun kann sich der Plattencontroller eine Strategie ausdenken, wann und in welcher Reihenfolge er die Daten auf die Platte schreibt. Und genau das ist das Problem ... denn Linux denkt, es ist schon alles ok, auch wenn der Plattencontroller noch gar nichts getan hat. Da Linux auch laufend über die Schreiboperationen in einem Protokoll Buch führt, um Wiederherstellungspunkte zu haben, (Journal ab ext3) und dieses zwecks Ausfallsicherheit auch auf die Platte schreibt (damit man es auch ganz sicher hat), kann es nun passieren, dass die Daten zwar auf der Platte sind, aber das Journal nicht schon vorher auf die Platte geschrieben wurde (weil der Plattencontroller bei eingeschaltetem Cache sich ja den Zeitpunkt selbst optimiert). Das kann bei einem Ausfall ganz fürchterlich in die Hose gehen, deswegen ist es eigentlich immer besser (so lange man die DS nicht per USV schützt oder nur lesend auf die Platten zugreift), den Schreibcache aus zu schalten ... und ja, das Thema wurde schon vor 3 Jahren im internationalen Forum diskutiert und auch hier ab und an schon einmal ... Diese Problematik ist auch unter Windows und auf Macs vorhanden, wird da aber eher selten thematisiert ... gleichwohl leiden alle Rechner und alle journalisierenden Dateisysteme darunter.
Anmerkung: man kann auch ohne Journal ein Dateisystem betreiben (ext2, FAT usw.). Das ist dann bei Ausfällen halt weniger gut in der Lage, sich selbst auf Konsistenz zu prüfen und deswegen braucht ein solcher Prüflauf dann auch erheblich mehr Zeit (Stunden, Tage ...). Und um ein mögliches Missverständnis auszuräumen: die Daten, die bei solchen Geschichten möglicherweise verloren gehen, gehen immer verloren, egal ob mit oder ohne Journal (ein Journal ist also auch kein Mini-Backup) ... im Zweifelsfall werden halt die Dateien komplett gelöscht, wenn sie nicht mehr richtig stimmen und die Datenblöcke werden im Verzeichnis 'lost+found' munter durchnummeriert aufgelistet (oder auch einfach gelöscht). Es geht also nie um die Userdaten, sondern immer nur um die Dateisystemverwaltungsdaten ... und, um das auch gleich noch zu thematisieren, auch ein redundantes RAID leidet unter diese Problematik ... (RAID schützt also hier auch nicht wirklich).
Itari