Насколько устойчива Ubuntu к повторным отключениям при отключении питания?

15

Моя компания рассматривает возможность использования Ubuntu в качестве ОС для использования на аппаратном устройстве.

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

Устройства, которые будут работать с использованием Ubuntu, относятся к типу устройств, которые не будут корректно отключены - кабель питания будет удален, и это все.

Кто-нибудь может дать мне несколько советов о потенциальных проблемах, которые могут возникнуть? Является ли Ubuntu хорошей системой, способной справиться с таким отключением питания и успешно перезагрузиться при следующем запуске?

Я понимаю, что нет ничего не сломанного, но является ли это широко используемой ОС для встроенной установки? Это вызывает проблемы с использованием Ubuntu в такой среде?

mathematician1975
источник
1
Есть ли какой-нибудь способ, которым вы могли бы включить ИБП или резервную батарею в свои устройства? Даже сравнительно небольшой компьютер даст Linux достаточно времени, чтобы элегантно завершить работу. В идеале вы должны сначала сообщить своим приложениям (как только включится ИБП), чтобы они могли отключиться до того, как Linux заставит их сделать это за очень короткое время.
Джо
Интересно, можно ли использовать файловую систему с функцией копирования при записи, например ZFS? Тогда теоретически было бы невозможно получить повреждение, так как при следующей загрузке восстановление будет происходить до последнего известного исправного состояния FS, избегая любых возможных частично записанных данных впоследствии.
Визек

Ответы:

12

Примечание: этот ответ с точки зрения производственной среды, где потеря данных или простои могут привести к потере денег, сбоям клиентов, сбоям промышленного оборудования и т. Д. Если вы просто возитесь с Raspberry Pi дома, я бы сказал, что нет проблема ... :)

Я бы не рекомендовал Ubuntu в его конфигурации по умолчанию и файловой системе ext4 (по умолчанию) для встроенной среды, в которой будут повторяться «изящные» отключения, как вы предлагаете.

Если я прав, вы используете Ubuntu 8.04, которая в лучшем случае поддерживает ext3. В то время как ext3 / ext4 используют журналирование как способ поддержания целостности файла (записи) и помощи в восстановлении, на них не следует полагаться, когда «тянуть за кабель питания» является правилом, а не исключением.

  • Идеальный вариант, при условии, что вашей системе не потребуется динамическая реконфигурация после настройки, - это монтировать свою корневую файловую систему только для чтения и полностью использовать временный раздел в памяти при работе (как это делает LiveCD). В этом случае система будет возвращаться к своей «начальной» конфигурации при каждой загрузке.
  • Чтобы хранить (ограниченный объем) пользовательских данных энергонезависимым способом, вы можете создать дополнительный раздел, возможно, используя файловую систему, оптимизированную для флэш-носителей, таких как JFFS2, в зависимости от внутренней структуры CF-карты. Чтобы уменьшить вероятность повреждения данных, потянув за вилку, вы можете отключить аппаратное кэширование записи для устройства и подключить его в синхронном (синхронном) режиме, отключив ядро ​​в кэшировании записи. Эти параметры могут серьезно повлиять на пропускную способность и производительность даже на высокопроизводительной CF-карте, поэтому вам также необходимо принять во внимание предполагаемое использование.
иш
источник
4
Я должен позвонить в FUD. На журнал ext3 / 4 наверняка можно положиться, чтобы поддерживать файловую систему в рабочем состоянии при извлечении заглушки. Однако он ничего не делает для пользовательских данных, поэтому приложения, пишущие файлы во время сбоя, могут повредить свои данные, если они не будут осторожны. Кроме того, включение синхронизации на флэш-носителе не только резко замедлит процесс, но и приведет к преждевременному износу вспышки. Кроме того, JFFS и YAFFS предназначены для использования на встроенной флэш-памяти прямого NOR; Ext4 лучше работает на устройствах потребительского типа, которые выполняют выравнивание внутреннего износа.
Псуси
1
Насколько я знаю, эти карты действительно хороши - но в настоящее время используется DOS. Устройства должны регулярно записывать данные измерительных приборов. Поскольку эти данные важны для бизнеса, похоже, мне лучше избегать использования Ubuntu. Я просто не могу поверить, что DOS кажется более надежным подходом. В любом случае, большое спасибо за этот отличный ответ !! Насколько я знаю, у карт, которые мы используем, выравнивание внутреннего износа.
mathematician1975
1
Я не уверен, что вы получили, а именно. выравнивание износа и промывка. Моя точка зрения заключалась в том, что синхронизация приводит к большему количеству записей, которые быстрее изнашиваются. Также при использовании журнала ext3 / 4, a fsckНЕ выполняется после сбоя питания; ядро использует журнал для быстрого восстановления при монтировании fs. Избежание долгого времени fsckпосле сбоя - это единственная причина, по которой было добавлено ведение журнала.
psusi
2
@ mathematician1975: если вы хотите использовать Linux для этих целей, вам нужен встроенный дистрибутив в реальном времени, может быть, что-то вроде ucLinux , а не полноценный настольный / серверный дистрибутив, как Ubuntu ... :)
ish
2
@ mathematician1975 - если это «важные для бизнеса данные», то, конечно, вы хотите установить ИБП? Ни одна операционная система на Земле не может гарантировать безошибочную передачу данных, когда вы в любое время отключаете вилку. Как уже упоминалось, поможет сделать все доступное только для чтения, кроме данных, и легкий дистрибутив Linux может безопасно и быстро отключиться по сигналу от ИБП.
Пэдди Ландау
5

Операционная система будет в порядке, пока она настроена только для чтения. LiveCD имеют такую ​​настройку, так что вы можете отключить их в любое время, и ОС не пострадает.

На диске для чтения и записи файловые системы ext4 очень устойчивы. Но независимо от файловой системы, любой диск с возможностью записи будет подвержен повреждению файлов.

Sepero
источник
1

Вы находитесь в аварийном режиме. После входа введите

journalctl -xb

для просмотра системных журналов, systemctl rebootперезагрузки и / systemctl defaultили exitзагрузки в режиме по умолчанию.

Нажмите Enterдля обслуживания (или нажмите CTRL- Dдля продолжения):

Я видел это сообщение каждый раз после сбоя питания, любая ОС Windows гораздо более устойчива к сбоям питания, чем Linux по умолчанию.

У меня в городе летом отключается электросеть два раза в месяц.

Фернандо
источник
-1

Я использую Ubuntu около 18 месяцев, и я экспериментировал со всеми видами программ и загрузок. Мое мнение об Ubuntu - это самая стабильная из доступных операционных систем.

Программы и загрузки, которые могли бы уничтожить ОС Windows, просто отмахиваются от Ubuntu и Kubuntu. Ubuntu действительно прост в использовании, имеет все, что вам может понадобиться, офисные и рабочие приложения превосходны, и никогда не получает вирусов или троянов, таких как Windows.

Кажется, у Kubuntu есть еще несколько игрушек, с которыми труднее справиться, но они так же надежны, как и Ubuntu. Единственным недостатком является то, что вы не можете играть в 3D-игры или смотреть скайго, как вы можете с Windows, но кроме этого не вижу никакой причины использовать что-либо еще.

Darrell W
источник
Тем не менее, это не решает этот вопрос, который конкретно задает вопрос о том, насколько хорошо система Ubuntu выдерживает многочисленные внезапные потери питания.
Элия ​​Каган