реклама на сайте
подробности

 
 
> Sysupgrade / switch root to ram
vgovseychuk
сообщение Mar 11 2016, 13:45
Сообщение #1


Участник
*

Группа: Участник
Сообщений: 48
Регистрация: 16-03-14
Пользователь №: 80 955



Привет, Электроникс!

Пытаюсь обновиться из-под линукса.
В sysupgrade нет поддержки UBI, так что пытаюсь сделать обновление вручную.
При попытке переписать в лоб - ошибка (хотя mtd write работает):
Код
root@TestTest:/# ubiupdatevol dev/ubi0_0 /tmp/rootfs.img
[ 2885.328555] UBI error: ubi_open_volume: cannot open device 0, volume 0, error -16
ubiupdatevol: can't open 'dev/ubi0_0': Device or resource busy

Посмотрел, как это делает sysupgrade:
Сначала копирует необходимые бинарники, а затем переключается на работу из оперативки.
У меня переключение рута в tmp/root не удалось (не понял принципа, ибо нуб)

В общем интересуют 2 вопроса:
1. Как переключаться на работу из оперативки, освобождая тем самым /dev/ubi0_0?
2. Если есть более удобный способ обновления системы с UBI?

P.S. разделы у меня такие:
Код
-----------------------------------------------------------------
      |bootloader|boot_env|  fdt  |  kernel  |       root       |
MTD   |    3M    |  256k  |  128k |    5M    |        -         |
-----------------------------------------------------------------
                                             |rootfs|rootfs_data|
UBI                                          |  40M |     -     |
-----------------------------------------------------------------

Части системы (fdt, kernel, rootfs) пишу в пямять по отдельности.
Go to the top of the page
 
+Quote Post
 
Start new topic
Ответов
alx2
сообщение Mar 17 2016, 04:56
Сообщение #2


Местный
***

Группа: Участник
Сообщений: 340
Регистрация: 25-10-05
Из: Пермь, Россия
Пользователь №: 10 091



Цитата(vgovseychuk @ Mar 11 2016, 19:45) *
В sysupgrade нет поддержки UBI, так что пытаюсь сделать обновление вручную.

Поскольку никто Вам не отвечает, решил вставить реплику.
Сразу скажу, что ответов на ваши конкретные вопросы у меня нет. Но есть другая мысль.
Насколько я понял (после гугленья sysupgrade), Вы планируете делать апгрейд следующим образом: нужные файлы (например конфиги) сохраняются на другой FS, корневая FS полностью стирается и переписывается новым образом, после чего сохраненные файлы возвращаются на место. Суть моей реплики - нафига Вам переписывать всю файловую систему целиком? Почему бы не воспользоваться системой пакетов и каким-либо пакетным менеджером? Описанной проблемы тогда у Вас не будет в принципе, в процессе обновления будут переписываться только реально обновляемые файлы... Может Вы и ответа не получаете именно потому, что выбранным Вами путем мало кто идет?

Еще несколько преимуществ использования пакетов:
- Не надо заново выкачивать и перезаписывать образ всей файловой системы ради крошечного обновления (к примеру, чтобы обновить SSL-сертификат), достаточно одного малюсенького пакетика.
- Перерыв в работе системы отсутствует совсем или минимален - после обновления требуется перезапуск только реально обновившихся компонентов.
- Гибкость - на разных системах может быть разный набор пакетов.

Сообщение отредактировал alx2 - Mar 17 2016, 05:09


--------------------
Всего наилучшего,
Alex Mogilnikov
Go to the top of the page
 
+Quote Post



Reply to this topicStart new topic
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 


RSS Текстовая версия Сейчас: 21st July 2025 - 22:51
Рейтинг@Mail.ru


Страница сгенерированна за 0.01363 секунд с 7
ELECTRONIX ©2004-2016