
Вы используете Ubuntu на Raspberry Pi? Если да, то в Ubuntu 25.10 произойдет серьезное изменение загрузки, о котором вы должны знать – но не волнуйтесь, это к лучшему.
Инженер-программист Canonical Дэйв Джонс изложил планы по существенному изменению способа загрузки дистрибутива на Raspberry Pi, назвав текущий подход к загрузке далеко не оптимальным – фактически, он называет его «плохим».
Как так получилось?
Ну, потому что при нынешнем подходе конечным пользователям слишком легко обнаружить, что их Raspberry Pi не загружается после обновления, будь то из-за потери питания/прерывания во время установки или просто некачественного обновления (такое случается).
Резервные файлы существуют, но их сложно найти без специальных команд, и с ними сложно работать, так как, как ни странно, они часто ломаются! Единственное, что хуже отсутствия резервной копии? То, что притворяется резервной копией.
Именно поэтому в грядущем релизе Ubuntu 25.10 все изменится благодаря tryboot – новому подходу, направленному на улучшение восстановления и надежности системы при работе Ubuntu на оборудовании Raspberry Pi.
Что эти изменения означают для меня?
Благодаря этим изменениям восстановление после сбоя обновления станет проще простого.
Мы переходим к системе, которая будет тестировать новые загрузочные ресурсы и автоматически возвращаться к известной хорошей конфигурации в случае неудачи теста
-объясняет Джонс
Цель – повысить надежность Ubuntu и уменьшить проблемы, вызванные сбоями при загрузке.
Новая система будет автоматически возвращаться к последней известной рабочей конфигурации при неудачной попытке загрузки.
Если вы являетесь конечным пользователем, который запускает рабочий стол Ubuntu на Raspberry Pi в качестве обычной ОС, это изменение должно означать, что у вас всегда будет рабочий стол для загрузки при установке обновлений, даже если эти обновления не работают.
Если вы используете Ubuntu Server на Raspberry Pi в качестве сервера, для IoT или других специфических нужд, этот новый подход должен помочь избежать непредвиденных простоев и ручного вмешательства, если что-то пошло не так.
Акцент на «должен», поскольку, как известно, это изменение, а изменения нужно тестировать.
Тестирование TryBoot на сборках Ubuntu Pi
В связи с этим все желающие помочь опробовать новый подход tryboot к загрузке Ubuntu на Raspberry Pi могут это сделать (но просим подавать ошибки на пакет flash-kernel
, помеченный raspi-image
).
Для тестирования загрузите последнюю версию Ubuntu 25.10 daily с предустановленным IMG для Raspberry Pi на SD-карту хорошего качества, загрузите ее на поддерживаемое устройство Pi и настройте его как обычно.
- https://cdimage.ubuntu.com/ubuntu/daily-preinstalled/current (рабочий стол)
- https://cdimage.ubuntu.com/ubuntu-server/daily-preinstalled/current (сервер)
Затем добавьте следующий тестовый PPA (пока что; этот пакет будет доступен в репозиториях questing в ближайшие неделю или две):
sudo add-apt-repository ppa:waveform/flash-kernel
Затем установите следующий новый пакет из PPA:
sudo apt install flash-kernel-piboot
Пакет flash-kernel
будет обновлен во время процесса, чтобы мигрировать содержимое загрузочного раздела (установленного под /boot/firmware
) в новую схему, согласно сообщению в блоге Jones.
Этот макет:
- Загруженные в данный момент известные хорошие загрузочные ресурсы –
/boot/firmware/current
- Непроверенные новые загрузочные ресурсы (т.е. из обновлений) –
/boot/firmware/new
- Предыдущие известные хорошие загрузочные ресурсы –
/boot/firmware/old
Думаете, это займет много места на вашей 32-гигабайтной карте microSD? Не стоит; чтобы уменьшить объем места, занимаемого пакетами, папка old/
удаляется всякий раз, когда активы new/
записываются пакетом flash-kernel
.
Недостаток двойной загрузки
Есть (небольшой) недостаток: двойная загрузка – из-за того, что процессы, связанные с тестированием загрузки и перемещением вещей туда, куда им нужно, сцепляются, как отмечает Джонс:
Каждый раз, когда
flash-kernel
запускается по какой-либо причине (новое ядро, перестройка initramfs и т. д.), следующая загрузка будет двойной. Поначалу это, вероятно, будет немного раздражать людей, а также означает, что загрузка будет занимать примерно в два раза больше времени (очевидно).
Однако, я не вижу способа обойти это, и, честно говоря, это небольшая цена за надежность, которую должен обеспечить этот механизм.
Те, кто не хочет часто сталкиваться с двойной загрузкой, смогут избежать двойных загрузок, выполнив команду sudo piboot-try --reboot
. У этой новой команды будут и другие опции, а также руководство по ее использованию.
В целом, это интересное изменение, которое, хотя и глубоко техническое, прекрасно просто в своей цели: позволить тем, кто использует Ubuntu 25.10 на Raspberry Pi, не просто использовать ее, но быть в состоянии использовать ее благодаря этой почти невидимой системе безопасности.