Перезапись корня linux (только для чтения) из работающей системы

это кажется мне очень общей проблемой. У меня есть встроенная система, работающая под управлением Linux с root только для чтения. Существует демон обновления, который устанавливает новые образы программного обеспечения, когда они доступны путем перезаписи целых разделов. Мой вопрос: Каков наилучший подход для этого из работающей системы?

  1. ДД обновлен раздел /dev/sdX, который в настоящее время
    (только для чтения) смонтированный root?
  2. переместить текущую root с помощью pivot_root к tmpfs, как обсуждалось здесь?
  3. использовать 2 корневых раздела и переключать "активный" один после каждого обновления?

минусов 2 и 3, что мне нужно много оперативной памяти (по 2) или на диске (по 3). Есть ли безопасный способ перезаписать корневой раздел только для чтения из работающей системы и перезагрузиться в обновленную систему?

21
задан Toby Speight
05.05.2023 3:21 Количество просмотров материала 3173
Распечатать страницу

1 ответ

Итак, что я сделал, я пошел с 1. подход и столкнулся с большой проблемой, когда система больше не была стабильной из-за проблемы с файловой системой. Я думаю, перезапись смонтированного раздела не является хорошей идеей (не удивительно, хотя). Чтобы исправить это, я попробовал 2. идея (pivot_root), которая работает, но имеет некоторые недостатки. Первый: вы должны остановить большинство запущенных процессов и / или перезагрузиться как можно скорее после завершения обновления. Finnaly, я попробовал 3. идея и единственный минус-это " отходы" дискового пространства. Все остальное работает очень хорошо.

0
отвечен Florian 2023-05-06 11:09

Постоянная ссылка на данную страницу: [ Скопировать ссылку | Сгенерировать QR-код ]

Ваш ответ

Опубликуйте как Гость или авторизуйтесь

Имя
Вверх