Журнальована файлова система
Журнальована файлова система — файлова система, що зберігає інформацію про усі зроблені зміни на диску в спеціальному журналі (це зазвичай кільцевий запис у спеціальній області файлової системи). Зміни завжди зберігаються перед їх застосуванням до основної файлової системи і у разі виникнення збою системи або відключення живлення, відновлення таких файлових систем проходить швидше і існує менша ймовірність пошкодження.
Опис
Оновлення файлової системи для відбиття змін файлів і каталогів, як правило, вимагає безліч окремих операцій запису. Це може спричинити пошкодження даних у разі переривання роботи між окремими записами.
Наприклад, видалення файлу у файловій системі Unix включає два кроки:
- 1) видалення запису директорії;
- 2) маркування простору видаленого файлу та його inode у категорію «вільний простір».
Якщо збій стається між кроками 1 і 2, то з'являється завислий inode, а отже і витік пам'яті накопичувача. У нежурнальованій файловій системі виявлення і відновлення після таких неполадок вимагає повного проходження через усі структури даних файлової системи. Це зазвичай треба робити перед монтуванням ФС для запису/зчитування. Якщо ФС відносно велика і має низьку пропускну здатність, то відновлення може зайняти багато часу і призвести до довшого простою.
Щоб запобігти цьому, журнальовані файлові системи виділяють спеціальну область — журнал — у яких заздалегідь записуються зміни, що мають бути застосовані до основної ФС. Після збою відновлення являє собою просто читання журналу файлової системи та відтворення змін із нього, поки ФС не відновиться.