Я разрабатываю устройство на основе Linux, используя alix 2d13.
Я разработал сценарий, который заботится о создании файла образа, создании разделов, установке загрузчика (syslinux), ядра и initrd, а также об установке файлов корневой файловой системы в нужный раздел.
Файлы конфигурации находятся в файловой системе tmpfs и создаются при запуске системы программным обеспечением, считывающим файл XML, который находится в собственном разделе.
Я ищу способ обновить файловую систему, и я рассмотрел два решения:
- обновление прошивки представляет собой сжатый файл, который может содержать разделы ядра, initrd и / или rootfs, поэтому при перезагрузке initrd позаботится о том, чтобы dd образ rootfs попал в правильный раздел;
- обновление прошивки представляет собой сжатый файл, который может содержать два архива tar: один для загрузки и один для корневой файловой системы.
Каждое решение имеет свои преимущества:
- образ файловой системы позволит мне удалить любые неиспользуемые файлы, но требует много времени и быстро уничтожит компактную флэш-память;
- архив меньше, ему нужно меньше времени для обновления, но у меня будут проблемы с корневой файловой системой в скором времени.
Альтернативное решение может заключаться в том, чтобы поместить список файлов и поместить сценарий предварительного / последующего обновления в архив tar, поэтому любой файл, который не находится в списке файлов, будет удален.
Что вы думаете?