Что файловая система предлагает лучшей защите для обеспечения данных против повреждения из-за потерь мощности?

Вы могли использовать ssh ключи, но присваивают их пользовательскому пользователю в удаленной системе, оболочка которой установлена не на фактическую оболочку, но команду, которую Вы хотите выполнить. Эффект будет после входа в систему, что команда выполняется, и затем терминал закроется. Таким образом, если затем пароль поставлен под угрозу, они не могут в интерактивном режиме ввести команды, но только выполнить один набор команд как оболочку.

9
13.04.2017, 15:36
4 ответа

Как со всеми вещами, имеющими отношение к безопасности, нет никаких гарантий, но также необходимо сбалансировать риск (и стоить) против вероятности. На основе опыта (и я выполнял десятки *, отклоняют boxen со средневековья), у меня действительно никогда не было значительного вызванного питанием повреждения файловой системы.

Некоторые из этих машин даже работали на non-journalled файловых системах (ufs и ext2 обычно). Некоторые из них были встроены, и некоторые были мобильными телефонами как Nokia N900 — таким образом, хороший источник питания не был вообще гарантирован.

It не, что повреждения файловой системы не может произойти, это просто, что вероятность его, случай является достаточно низким, что это не должно волновать Вас. Однако, никакая причина не застраховать Ваши ставки.

В ответе на Ваши литеральные вопросы:

  1. По крайней мере, первая книга, на которую Вы сослались, была записана прежде ext4 — когда автор предлагает использовать ext3, они действительно говорят, ‘не используют нестабильные или non-journalled файловые системы как ext2’). Попробовать ext4, это является довольно сформировавшимся, и имеет некоторые достойные опции для невращающих дисков, которые могут расширить продолжительность жизни Вашего устройства флэш-памяти.
  2. Возможности - это, потерял бы Вас последний блок или два, не весь файл. С журналируемой файловой системой это будет о единственной потере. Существуют сценарии отказа, где я видел случайные данные, распыляемые через файл, но они кажется, намереваются настолько же, вероятно, как разрушение микрометеорита прямо через Ваше встроенное устройство.
  3. См. 2. Ничто не сейф на 100,00%.
  4. Если Вы имеете второй канал IDE, засовываете вторую карту CF там и захватываете резервное копирование файловой системы периодически. Существует несколько способов сделать это: rsync, cp dump, dd, даже использование md(4) (программное обеспечение RAID) устройство (Вы иногда добавляете второй диск, позвольте ему синхронизировать, затем удалить его — если оба устройства живы все время, они выполняют тот же риск повреждения файловой системы). При использовании LVM можно даже захватить снимки. Поскольку сбор данных встроил устройство, я буду просто использовать, специальное решение, которое монтирует вторую файловую систему, копии по журналу данных, сразу размонтирования это. Если Вы волнуетесь по поводу устройства, имеющего хороший загрузочный образ, прикрепляете вторую копию диспетчера начальной загрузки и всех необходимых загрузочных образов на втором устройстве и настраиваете компьютер для начальной загрузки от любого карты CF.

    Я не доверял бы второй копии на том же устройстве, потому что устройства хранения перестали работать чаще, чем стабильные файловые системы. Намного чаще, по моему опыту, до сих пор (на работе, была горькая полушутка о странно высоких возможностях отказов диска дня пятницы. Это было почти еженедельное событие некоторое время). Вращается ли диск или нет, он может перестать работать. Поэтому сохраните свои яйца в двух корзинах, если Вы можете, и Вы защитите свои данные лучше.

    Если бы данные особенно уязвимы, я нанес бы регулярные визиты в устройство, подкачал бы резервный CF для нового и перезагрузки, позволив им fsck все его файловые системы в придачу.

11
27.01.2020, 20:05
  • 1
    +1, однако репликация страдает от тех же проблем как основная копия - если Вы начнете синхронизировать два устройства (быть этим через уровень RAID или высокоуровневую утилиту), и питание выходит (в то время как существует постоянное добавление к данным), то Вы получите мусор снова. То, что могло бы помочь, имеет RAID1, время от времени физически изменяя одно из устройств и заставляя офлайновое резервное копирование сформировать удаленное то. Необходимо будет заморозить FS прежде, чем удалить его, хотя, для проверки это последовательно (т.е. сделайте снимки). XFS является одной из файловых систем, которые имеют поддержку этого. номер –  peterph 25.03.2013, 13:59
  • 2
    Действительно. Как я записал, нет никаких гарантий. Любое время, которое Вы пишете данным, у Вас могло быть повреждение. Люди по electronics.stackexchange.com играли вокруг с суперконденсаторами и обнаружением снижения напряжения, где встроенная система получает уведомление питание и все еще заставляет достаточно сока прерывать записи. Возможно.:) Это - весь вопрос того, как, вероятно, Вы думаете, что потенциальная опасность, и сколько денег Вы хотите потратить, чтобы удалить текущий вопрос (и начать рассматривать следующий). –  Alexios 25.03.2013, 15:29
  • 3
    Спасибо за этот ответ. Это разъясняет вещи для меня значительно. слова благодарности –  mathematician1975 26.03.2013, 12:09

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

Из-за этого стратегия защитить критические данные извлечет выгоду больше всего из решений, принятых об аппаратном уровне, например, при помощи источника бесперебойного питания. Вероятно, это не настолько выполнимо в Вашей ситуации.

Вы сказали, что производительность не является действительно большой проблемой, поэтому сделайте разумное использование fsync().

Потери мощности во время операции записи на диск только повреждают часть данных, которые я добавляю в файл периодически, или это может повредить весь файл?

Я был с помощью extN файловые системы лично и на транспортных интернет-серверах низкого носителя в течение многих лет, и как Alexios я не видел много повреждения из-за сбоя питания (хотя быть справедливым, серверы имеют UPS, и я не могу вспомнить одного из них на самом деле потеря работоспособности по тому пути). Намного более серьезной проблемой является повреждение от отказа оборудования, какие различные файловые системы могут (снова) быть больше и менее способны к контакту с проблемой, но (снова) это существенно находится вне их контроля, и они не могут предотвратить его.

Я иногда видел файлы, потерянные или усеченные для обнуления размера. Я предполагаю, что существует хороший шанс, они были бы восстанавливаемыми так или иначе; это не было необходимо для меня, поскольку они были сохранены. Большую часть времени, если существует что-то не так вообще fsck кажется, имеет дело с ним.

Данные, которые не пишутся при абсолютно безопасных потерях мощности? В частности, есть ли какой-либо риск, что мой initramfs.cpio файл может стать поврежденным также?

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

Есть ли какой-либо метод, который я могу использовать в своем коде приложения для защиты данных?

Стоящий повторения точку о fsync (). C++/iostream объекты не имеет метода для этого (:: сброс и:: синхронизация не является fsync), но все, в чем Вы нуждаетесь, дескриптор файла.

4
27.01.2020, 20:05
  • 1
    для этого ответа это очень полезно также. Я монтирую раздел, который записан в через sync опция в /etc/fstab файл, поскольку я понимаю, что это вынуждает запись произойти синхронно. Я предполагаю, что это означает, что, когда мой код записи файла возвращается, затем данные были физически записаны в диск. Я понял то монтирование с sync по существу делает то же как вызов fsync(my_filedescriptor) после записи. Мое понимание этого корректно? –  mathematician1975 26.03.2013, 12:17
  • 2
    @mathematician1975, который я предположил бы так, это не что-то, что я исследовал. IMO, пока это не так или иначе неудобно, бросая fsync() в в точках Вы думаете, является соответствующим, не причинит боль так или иначе и делает систему более устойчивой (например, если устройство будет небрежно смонтировано без синхронизирующего набора, и т.д.). –  goldilocks 26.03.2013, 17:33

ZFS является определенно файловой системой, защищенной от повреждения дизайном и возможно единственным. Однако я не уверен в доступности реализаций ZFS (или базирующийся предохранитель или собственный компонент) для базирующихся платформ uClinux.

1
27.01.2020, 20:05

Существует как минимум одна коммерческая файловая система, которая делает огромную работу, убедившись, что файловая система, почти почти не может быть повреждена из-за сбоев питания и Это единственные данные, которые вы рискуете потерять, являются данными, которые были добавлены в качестве питания.

Внешняя сторона - это то, что она очень дорогая, на стороне вверх, они предлагают большую поддержку. Из-за расхода, это действительно только вариант для высоких ставок и / или продуктов с высоким объемом. Как критическое встроенное оборудование в Е.Г. Добыча нефти и газа, которые необходимы для обеспечения целостности системы в «неопределенных» условиях эксплуатации (например, отключители частых электроэнергии и т. Д.).

Проверьте Datalight (Company) и / или продукт « reliance Nitro ». (Ориентия - это их наследие и безопасное, но не очень эффективное решение, замененное reliance Nitro ). Даже если у вас нет денег, чтобы использовать эту систему, у них есть несколько хороших предметов, обсуждающих, как работает их система, почему она более надежна, чем E.G. Ext3 и Ext4.

Мои извинения, если это прочитано как объявление, просто хотел отметить варианты.

0
27.01.2020, 20:05

Теги

Похожие вопросы