ext3 journaling modes

Fanurgakis Manolis mfano at freemail.gr
Sun Jan 25 23:26:57 EET 2004


http://www.linuxplanet.com/linuxplanet/reports/4136/5/

Στο λινκ λεει:

> journal - logs all filesystem data and metadata changes. The slowest
> of the three ext3 journaling modes, this journaling mode minimizes the
> chance of losing the changes you have made to any file in an ext3
> filesystem. 
> 
> ordered - only logs changes to filesystem metadata, but flushes file
> data updates to disk before making changes to associated filesystem
> metadata. This is the default ext3 journaling mode. 
> 
> writeback - only logs changes to filesystem metadata but relies on the
> standard filesystem write process to write file data changes to disk.
> This is the fastest ext3 journaling mode. 
> 
> [...] 
> 
> Using the "writeback" mode is faster than the other two ext3
> journaling modes because it only logs changes to filesystem metadata
> and does not wait for associated changes to file data to be written
> before updating things like file size and directory information.
> Because updates to file data are done asynchronously to journaled
> changes to filesystem metadata, files in the filesystem may exhibit
> metadata inconsistencies such as owning data blocks to which updated
> data was not yet written when the system went down. This isn't fatal,
> but can be disappointing to users. 

Αν κατάλαβα καλά: αν θέλω να χρησιμοποιήσω τη «γρήγορη» μέθοδο του
writeback, ρισκάρω τον κίνδυνο αν κοπεί το ρεύμα ενώ εκείνη την ώρα είχα
σώσει αλλαγές στη μέση κάποιου αρχείου να χάσω τις αλλαγές αυτές.
Επίσης, αν κάνω append δεδομένα στο τέλος ενός αρχείου, ώστε να φτάσει
να χρησιμοποιηθεί καινούριο μπλοκ, μπορεί μετά σ' αυτό το μπλοκ να δω
όλο σκουπίδια. Αυτό δεν είναι το χειρότερο που μπορεί να συμβεί;

Γι' αυτό το «standard filesystem write process» που λέει, το linux, αν 
θυμάμαι καλά, γράφει εξ' ορισμού τις αλλαγές στο δίσκο κάθε 30'', ενώ 
αυτό μπορεί να αλλάξει με διόρθωση στον κώδικα του πυρήνα και 
αναμεταγλώττιση.

Ας πούμε ότι _δε_ χρησιμοποιώ journaling. Αν κοπεί το ρεύμα την ώρα που
διορθώνω κάποιο αρχείο έχοντας σώσει, αλλά πριν προλάβει να γίνει το
επόμενο system write θα χάσω όλες τις αλλαγές. Αν κοπεί το ρεύμα την ώρα
που γράφονται οι αλλαγές, τότε το τι θα συμβεί δεν είναι βέβαιο. Μπορεί
να χάσω κάποιες ή όλες τις αλλαγές και διακυβεύονται και κάποια (με
μικρότερη πιθανότητα) σοβαρότερα προβλήματα για το fs, σωστά;

Αν είναι έτσι, οι χρήστες που όπως λεει ο ποιητής παραπάνω φοβούνται τη
χρήση του journaling στην κατάσταση writeback, θα πρέπει να φοβούνται
πολύ περισσότερο τη μη χρήση journaling.

Τέλος, απ' ότι βλέπω, το journaling είναι καρά-ιδανική επιλογή για ένα
πολύ μεγάλο σε έκταση fs στο οποίο δε γράφουμε πολύ συχνά, όπως για
παράδειγμα το partition που έχω τα mp3 και τις ταινίες μου σε divx και
είναι άνω των 30GB.

Είναι σωστά τα παραπάνω;

Ευχαριστώ.




More information about the Linux-greek-users mailing list