Обнаружен баг с журналированием EXT4 в ядре Linux 3.4-3.6

Discussion in 'Мировые новости. Обсуждения.' started by Solitude, 25 Oct 2012.

  1. Solitude

    Solitude Member

    Joined:
    29 Aug 2011
    Messages:
    445
    Likes Received:
    23
    Reputations:
    1
    Обнаружен баг с журналированием EXT4 в ядре Linux 3.4-3.6

    В Linux обнаружен баг в файловой системе ext4, который может привести к повреждению данных. Ошибку внесли в ядро с коммитом для версии 3.6.2, которая вышла 12 октября 2012 года. Затем её перенесли в версии стабильных релизов 3.4.* и 3.5.*. Таким образом, если вы в последние две недели обновляли ядро Linux, то вполне вероятно, что глючный код мог попасть в вашу систему.

    Собственно, баг обнаружен в этом коммите для 3.6.2:
    jbd2: don't write superblock when if its empty

    Хорошая новость в том, что баг проявляет себя в довольно редких ситуациях. Только если значение стартового блока журнала является нулевым, то сбоит перезапись журнала при отключении файловой системы. Другими словами, столкнуться с потерей данных можно только в том случае, если раздел часто монтируется и отмонтируется. Например, при неоднократном подключении флэшки или перезагрузке компьютера. Когда баг проявляется в первый раз, он не приводит к катастрофическим последствиям, но начиная со второго раза запись транзакций в журнал уже ведётся некорректно.

    Хотя баг проявляется относительно редко, уже нашлись пользователи, которых он всё-таки затронул. Один из них пишет, что всего за пару минут была уничтожена значительная часть содержимого в папке /home, пользователь вовремя заметил и успел выключить компьютер. Если же оставить файловую систему работать ещё недолго в активном режиме, то ущерб может быть гораздо более значительным.

    Естественно, разработчики уже выпустили обновлённые версии ядра.

    25.10.2012
    http://www.xakep.ru/post/59534/​
     
Loading...