LINUX.ORG.RU

Автоматическая установка обновлений с флешки.

 ,


0

1

Доброго времени суток.

Есть устройство. Устройство иногда нужно обновлять (точнее его прошивку). Внутри устройства, внезапно, лежит linux. Обновляться он будет с внешнего носителя (например с флешки, на которой лежит архив с новой версией программы и т.п.).

Собственно мой вопрос, как сделать чтобы программа на устройстве распознавала что на вставленной флешке есть ее обновления, проверяла версию обновлений (что они новее, чем сама программа) и, самое главное, проверяла их подлинность (что бы никто не смог умышленно или не умышленно поставить левую программу) и целостность?

Из условий - программа не имеет связи с внешним миром (кроме как через эту флешку), так что вариант сервера с md5 или что-то аналогичное этому варианту не катят.

★★★★

Последнее исправление: RiseOfDeath (всего исправлений: 2)

программа сама себя обновляет или через пакетный менеджер? Можно правило udev написать, в котором при появлении флешки будет запускаться обновление

Harald ★★★★★
()

проверяла их подлинность (что бы никто не смог умышленно или не умышленно поставить левую программу) и целостность

Храним список доверенных ключей на компьютере, сравниваем подписи и контрольные суммы данных на флешке с ними.

vurdalak ★★★★★
()

не надо изобретать пакетный менеджер, надо пользовать готовый...

slapin ★★★★★
()

Очевидное решение - устанавливать программу с флешки, создав на ней предварительно репозиторий, соответствующий формату репозиториев ОС, которая работает на устройстве. При вставке флешки запускаем пакетный менеджер с параметром update (или apt-get update && apt-get upgrade), и он автоматически устанавливает новые пакеты из флешечного репозитория.

Kiborg ★★★
()
Ответ на: комментарий от Harald

Сама себя. Вопрос чисто в проверке подлинности и актуальности новой версии.

RiseOfDeath ★★★★
() автор топика
Ответ на: комментарий от RiseOfDeath

Ну, rpm можно подписать, а ключ заранее импортировать в систему. Собственно, репозитории openSUSE так работают.

Kiborg ★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.