Journaliserat filsystem

Ett journaliserat filsystem  är ett filsystem som upprätthåller en journal som lagrar en lista över ändringar och, i en eller annan grad, hjälper till att upprätthålla filsystemets integritet under krascher.

I ett sådant system, före den faktiska implementeringen av eventuella ändringar, lagras deras lista tidigare i en separat del av filsystemet, kallad journalen ( Engelsk  journal eller Engelsk  logg ) - en analog av pre-record-loggen för DBMS . När ändringar har gjorts i loggen tillämpas de på filer eller metadata , och sedan tas motsvarande poster bort från loggen. Loggposter är organiserade i uppsättningar av relaterade filsystemändringar.

När systemet startas om kan monteraren garantera det journaliserade filsystemets integritet genom att helt enkelt kontrollera journalen för förväntade men inte gjorda ändringar och sedan skriva dem till filsystemet; det vill säga om det finns en journal behöver systemet i de flesta fall inte kontrollera filsystemets integritet. Följaktligen minskar risken för dataförlust på grund av problem i filsystemet avsevärt.

Det finns flera typer av journaliserade filsystem efter typ av loggning [1] :

APFS som används i macOS  är journalförd. I FreeBSD kan UFS- transaktionsjournalföring göras på GEOM-nivå av gjournal- modulen. Bland de använda journalsystemen i Linux  finns XFS , Reiser4 , JFS , ext3 , ext4 .

Andra tillvägagångssätt för att säkerställa integritet i filsystem kan vara copy-on-write- mekanismer ( ZFS , Btrfs ), såväl som journalstrukturerad lagring  - när filsystemet har en journalorganisation direkt och inte kräver förskrivning ( Fossil i Plan9 , UDF för optisk lagring, NOVA för icke-flyktigt minne ).

Anteckningar

  1. M. Tim Jones. Anatomy of Linux Journaled Filesystems (07.10.2008). Hämtad 4 augusti 2010. Arkiverad från originalet 26 augusti 2011.

Litteratur