Недавно было объявлено выпуск fwupd 2.0, инструмента с открытым исходным кодом используется для управления и обновления прошивки различных устройств в Linux. Его цель — облегчить установку и обновление прошивки на оборудовании без необходимости доступа к инструментам производителя или перезагрузки в другую операционную систему.
fwupd использует службу обновления прошивки LVFS (Служба прошивки поставщиков Linux), куда производители загружают обновления своей прошивки. На данный момент в каталоге LVFS представлены прошивки для более чем 1,600 устройств от 160 производителей.
Использование El Этот централизованный каталог избавляет производителей от необходимости создавать отдельные пакеты для каждого дистрибутива., что позволяет им передавать прошивку в файле «.cab», который включает дополнительные метаданные, аналогично тому, что делается при публикации прошивки для Windows.
Пользователи могут загружать и устанавливать эти обновления непосредственно из своего дистрибутива. Linux, облегчающий большое количество процессов, поскольку поддерживает как режим автоматического обновления прошивки, так и возможность выполнения операции после подтверждения.
Среди основных особенностей которые отличаются от fwupd, мы можем найти следующее:
- Поддержка широкого спектра устройств (UEFI, USB, Thunderbolt, дисплеи и т. д.).
- Установка и обновление прошивки без перезагрузки и выхода из рабочей среды.
- Интеграция с менеджером пакетов и обновлениями системы.
- Совместим со многими дистрибутивами Linux.
- Это удобное и безопасное решение для обновления прошивки.
- Он совместим с программным обеспечением GNOME и менеджерами приложений KDE Discover.
- Он подходит не только для настольных систем, но и для обновления прошивки на таких устройствах, как смартфоны, планшеты, серверы и устройства Интернета вещей.
Что нового в fwupd 2.0?
В этой новой версии fwupd 2.0 фоновый процесс переключился с использования перехватчика GObject из GUsb на прямой доступ к libusb и sysfs. Это изменение позволило перенести эмуляцию устройства в библиотеку libfwupdplugin и реализовать эмуляцию обновлений прошивки на фиктивных устройствах hidraw и nvme, аналогично эмуляции, выполняемой с фиктивными USB-устройствами. Благодаря этой функции мы смогли провести дополнительные тесты, выявляющие проблемы с обновлениями, которые могут возникнуть после внесения определенных изменений в fwupd.
также библиотека ГУдева, который обеспечивает привязки GObject к libudev, был удален из помещения. Вместо этого процесс fwupd теперь создает сокет netlink. для анализа передаваемых через него событий udev. Это изменение привело к значительному снижению потребления памяти и нагрузки на процессор. как при запуске, так и во время работы, помимо упрощения включения поддержки ueventd, что в будущем позволит fwupd быть совместимым с платформой Android.
Оптимизации были сделаны для уменьшения потребления памяти. при переносе прошивки из файлов на устройства; Вместо копирования прошивки в память теперь используется передача через файловый дескриптор. Также Добавлена поддержка множества новых устройств.
Кроме того, Поддержка устаревших форматов метаданных и проверки встроенного ПО прекращена. и ранее устаревшие утилиты командной строки были удалены. Также добавлен API для загрузки отчетов в gnome-прошивку и система сборки теперь включает поддержку платформы Darwin.
Наконец, мы добавили возможность отображать список файлов ESP в формате JSON (с помощью команды fwupdtool esp-list –json) и добавили возможность указывать в конфигурации эмулируемые устройства.
Наконец, если вы заинтересованы в том, чтобы узнать больше об этом, вы можете ознакомиться с подробностями в по следующей ссылке.
Как установить fwupd в Linux?
Тем, кто заинтересован в возможности установки fwupd, следует знать, что в большинстве дистрибутивов он уже предустановлен. Однако, если он у вас не установлен, вы можете сделать это с помощью следующей команды в зависимости от вашего дистрибутива:
Ubuntu и производные:
sudo apt install fwupd
Fedora:
sudo dnf install fwupd
Arch Linux и основанные на нем:
sudo pacman -S fwupd
Как использовать fwupd?
Способ использования fwupd довольно прост и основан на выполнении команд и правильный способ сделать это — всегда обновлять базу данных доступной прошивки, прежде чем приступить к обновлению прошивки устройства. Мы можем сделать это, набрав:
sudo fwupdmgr refresh
к посмотреть, какие устройства поддерживают fwupd, а также их текущий статус, и если у них есть доступные обновления, они могут сделать это с помощью следующей команды:
fwupdmgr get-devices
После того как вы перечислите устройства, они смогут проверьте наличие обновлений прошивки доступен, запустив:
fwupdmgr get-updates
Если доступны обновления прошивки, вы можете применить их, запустив:
sudo fwupdmgr update
к отобразить список установленных обновлений прошивки через fwupd это можно сделать следующей командой:
fwupdmgr history