Какая файловая система лучше справляется с сбоями и более надёжна?

Каким образом можно настроить файловую систему и параметры монтирования, чтобы предотвратить возможность ошибок суперблока при обесточивании компьютера Пети, в то время как он работает над кодом в офисе?
  • 23 октября 2023 г. 10:41
Ответы на вопрос 3
Одна из наиболее надежных файловых систем, способных справиться с сбоями, - это ZFS. ZFS предоставляет проверки целостности данных, копирование данных и восстановление после сбоев, что делает ее очень надежной. Однако, заметим, что ZFS доступна только в операционных системах, которые поддерживают ее, таких как FreeBSD, Illumos, OpenZFS, Linux.

Для предотвращения возможности ошибок суперблока при обесточивании компьютера, можно использовать несколько стратегий:

1. Включение поддержки журнала (journaling). Путем включения функциональности журнала, любые несохраненные изменения в файловой системе могут быть восстановлены после сбоя. Некоторые файловые системы, такие как ext4, поддерживают журналирование.

2. Монтирование файла системы в режиме "read-only" (только для чтения). Это предотвращает возможность записи данных на диск, поэтому сбой во время обесточивания не повлияет на целостность суперблока.

3. Использование параметров монтирования, таких как "sync" или "noatime". Параметр "sync" заставляет ОС записывать данные на диск немедленно, что снижает риск потери данных при сбое. Параметр "noatime" отключает обновление временных меток доступа к файлам при чтении, что уменьшает количество операций записи на диск и, таким образом, снижает риск ошибок суперблока.

4. Регулярное создание резервных копий данных. Независимо от выбранной файловой системы и параметров монтирования, создание регулярных резервных копий является важной стратегией для сохранения данных. Если происходит сбой или потеря данных, вы сможете восстановить их из резервной копии.

В целом, выбор лучшей файловой системы и настройка параметров монтирования зависит от конкретных требований и условий работы. Рекомендуется изучить и сравнить различные файловые системы и их особенности, чтобы выбрать наиболее подходящую для вашей ситуации.
Нужно выбирать файловые системы с журналированием, такие как XFS или ext4. Вот ссылка, где можно узнать, что это такое: https://www.interface.ru/home.asp?artId=18352

Если вы хотите включить журналирование, например, на ext4, это можно найти в поиске на Google.

Важно обратить внимание на защиту от сбоев по питанию. Решение проблемы должно быть направлено на её решение, а не на устранение последствий. Наиболее простым решением является использование бесперебойного питания. У вас также есть альтернативные варианты, такие как работа с ноутбуком или подключение к удаленному серверу в ЦОД. Не забывайте, что помимо выбора файловой системы есть множество других факторов, таких как операционная система, драйверы и оборудование.

Если раньше можно было рубить сервер в любом состоянии, то сейчас сервера должны работать через источник бесперебойного питания. Должно быть также резервирование линий питания, блоков питания и даже использование рейд-контроллеров с аккумуляторами. Комплексный подход в минимизации ущерба от сбоев включает в себя множество дополнительных мер, таких как резервирование и резервное копирование данных. "Рубить сервер" должно быть крайней мерой, когда нет других способов взаимодействия с сервером. Это означает, что что-то было сделано или организовано неправильно.

Важно отметить, что устойчивость к сбоям для сервера и для домашнего компьютера - это разные вещи с разными требованиями.
Btrfs, Zfs и JFS - это различные файловые системы, но на практике просто использование обычной ext4 может быть вполне достаточным. Хотя есть желание использовать самую современную систему, но в реальности это может быть несостоятельно. 

Если вы сталкиваетесь с задачей хранения большого количества мелких файлов, то рекомендуется обратить внимание на экономические аспекты, так как меньшее количество серверов может означать упрощение административной работы. На практике все эти разные файловые системы могут иметь какие-то недостатки, связанные с разделением данных или проблемами с построением рейда. В итоге, мы выбрали ext4 в сочетании с seaweedfs, которая не является классической файловой системой, но подходила для нашей задачи.

Когда решаете такие вопросы, полезно изучить отзывы и рекомендации, но следует помнить, что опыт других может зависеть от различных факторов, таких как использование аппаратного рейда и другие условия. Лучший подход - это провести собственный эксперимент и оценить результаты на основе своих конкретных требований и условий.
Похожие вопросы