Рейтинг:0

Файловая система для защиты носителя

флаг cn

Я работаю над встроенной системой, которая будет действовать как сервер, проблема в том, что среда, в которой она будет работать, настолько агрессивна, что у нее будут резкие перебои в подаче питания. Поэтому я планирую смонтировать корневую файловую систему как фейково-записываемую с помощью OverlayFS.Идея исходит от RaspberryPi, где у разработчиков есть механизм для включения/отключения монтирования rootfs как OverlayFS (как видите, это можно включить с помощью raspi-config сценарий)

Мой вопрос: поможет ли это защитить физическое устройство от повреждения? Или даже сама файловая система? Моя идея состоит в том, чтобы продлить срок службы физического устройства, и я думаю, что могу сделать это, избегая операций записи, но система не может быть полностью доступна только для чтения, потому что некоторым программам нужно видеть ФС как доступную для записи, поэтому я думаю в OverlayFS .

Что вы думаете? У вас есть другая идея, как решить эту проблему? Спасибо вам всем.

PS: Система, которую я должен использовать, — Debian Buster.

Рейтинг:2
флаг cn

Записи все равно случаются, overlayfs перенаправляет их на верхний слой. И нижний слой в конечном итоге необходимо будет обновить. Так что нет, просто наличие накладки не решит проблему с долговечностью. Вы должны подумать о том, какие данные должны быть надежными и как восстанавливаться после сбоя.

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

Этот raspi-config, по-видимому, имеет более высокое значение для tmpfs, поэтому да, он позволяет избежать износа носителя, но записи будут потеряны при перезагрузке! Что может быть приемлемо в некоторых случаях использования, перезагрузите компьютер, и он вернется в известное состояние.

Данные, которые необходимо сохранить, могут быть отправлены в другое место, например, пересылка системного журнала на центральный сервер регистрации при стабильном питании. Или отправка данных в какой-то удаленный API. Или сохранить на локальный раздел данных отдельно от тома с установленным ПО.

Говоря о стабильном питании, источник бесперебойного питания — отличное вложение, если питание ненадежно. Относительно небольшой батареи достаточно, чтобы корректно отключиться при отключении питания.

Что касается нижнего уровня, обновление программного обеспечения — это операция, которая должна быть успешной, чтобы устройство продолжало функционировать. Рассмотрите возможность обновлений на основе изображений, таких как Встроенное средство обновления устройств SWUpdate (или же Обновление образа Ubuntu или же Интернет вещей Fedora, несколько на выбор). Двойной образ с восстановлением стоит изучить, даже если он не реализован для этого проекта.

jfernandz avatar
флаг cn
«Этот raspi-config, по-видимому, имеет более высокое значение для tmpfs, поэтому «да» позволяет избежать износа носителя, но запись будет потеряна при перезагрузке!» Я думаю, что могу справиться с этим из-за характера системы (она не требует большого упорства, просто пара файлов, которые, как вы сказали... их можно хранить в отдельном разделе). Спасибо за пояснение!

Ответить или комментировать

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