6.4. Загрузка отсутствующих микропрограмм

Как описывалось в Раздел 2.2, «Устройства, которым требуются микропрограммы», в некоторые устройства требуется загрузить микропрограмму. В большинстве случаев, устройство вообще не будет работать при отсутствии микропрограммы; иногда в устройстве всё-же работают базовые функции, а микропрограмма нужна только для предоставления дополнительных возможностей.

Если драйвер устройства запрашивает микропрограмму, а она недоступна, то debian-installer выведет окно диалога, предлагающее загрузить отсутствующую микропрограмму. Если ответить утвердительно, то debian-installer просканирует доступные устройства в поисках файлов или пакетов с нужной микропрограммой. Если файлы найдены, то микропрограмма будет скопирована в нужное место (/lib/firmware) и будет предпринята попытка перезагрузки модуля с драйвером.

[Примечание] Примечание

Which devices are scanned and which file systems are supported depends on the architecture, the installation method and the stage of the installation. Especially during the early stages of the installation, loading the firmware is most likely to succeed from a FAT-formatted USB stick. On i386 and amd64 firmware can also be loaded from an MMC or SD card.

Заметим, что можно пропустить загрузку микропрограммы, если вы уверены, что устройство будет работать и без неё, или если устройство не требуется во время установки.

debian-installer запрашивает микропрограммы только к модулям ядра, которые необходимы для загрузки на время установки.Не все драйверы включены в debian-installer, в частности, отсутствует radeon, из чего следует, что возможности некоторых устройств могут не отличаться в конце установки от того, какими они были в начале. Другими словами, возможности некоторых аппаратных компонентов могут использоваться не полностью. Если вы подозреваете, что это ваш случай, или просто из любопытства,проверьте вывод команды dmesg в только что загруженной системе и поищите «микропрограмму».

6.4.1. Подготовка носителя

Official installation images do not include non-free firmware. The most common method to load such firmware is from some removable medium such as a USB stick. Alternatively, unofficial installation images containing non-free firmware can be found at https://cdimage.debian.org/cdimage/unofficial/non-free/cd-including-firmware/. To prepare a USB stick (or other medium like a hard drive partition), the firmware files or packages must be placed in either the root directory or a directory named /firmware of the file system on the medium. The recommended file system to use is FAT as that is most certain to be supported during the early stages of the installation.

Tar-архивы и файлы zip с пакетами наиболее распространённых микропрограмм доступны здесь:

Просто скачайте tar-архив или zip-файл под нужный выпуск и распакуйте его на файловую систему носителя.

Если требуемой микропрограммы нет в tar-архиве, то также вы можете скачать нужные пакеты с микропрограммами из архива (из раздела non-free). Вот список наиболее скачиваемых пакетов микропрограмм, но он может быть не полон и также может содержать пакеты без микропрограмм:

Также, можно копировать на носитель отдельные файлы микропрограммы. Такие микропрограммы можно получить, например, из уже установленной системы или от поставщика оборудования.

6.4.2. Микропрограмма в установленной системе

Все микропрограммы, загруженные во время установки, будут автоматически скопированы в установленную систему. В большинстве случаев это гарантирует, что устройство, которому требуется микропрограмма , будет также работать правильно после перезагрузки компьютера в установленную систему. Однако, если установленная система работает на версии ядра, отличной от использованного в программе установки, есть небольшая вероятность, что микропрограмма не загрузится из-за изменений ядра.

Если микропрограмма загружена из пакета, то debian-installer также установит этот пакет в устанавливаемую систему и автоматически добавит раздел non-free архива пакетов в APT-файл sources.list. Это позволит автоматически обновлять микропрограмму при появлении новой версии.

Если загрузка микропрограммы была пропущена во время установки, то соответствующее устройство, вероятно, не заработает в установленной системе пока микропрограмма (пакет) не будет установлена вручную.

[Примечание] Примечание

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

6.4.3. Completing the Installed System

Depending on how the installation was performed, it might be that the need for some firmware was not detected during installation, that the relevant firmware was not available, or that one chose not to install some firmware at that time. In some cases, a successful installation can still end up in a black screen or a garbled display when rebooting into the installed system. When that happens, the following workarounds can be tried:

  • Pass the nomodeset option on the kernel command line. This might help boot into a «fallback graphics» mode.

  • Use the Ctrl+Alt+F2 key combination to switch to VT2, which might offer a functional login prompt..

Once logged in into the installed system, it is possible to automate the detection of missing firmware, and to perform the required steps to enable them following this procedure:

  1. Install the isenkram-cli package

  2. Run the isenkram-autoinstall-firmware command as the «root» user.

Usually, rebooting is the simplest way to make sure all kernel modules are properly initialized; that's particularly important when one has booted the system with the nomodeset option as an interim measure.

[Примечание] Примечание

Installing firmware packages is very likely to require enabling the non-free section of the package archive. As of Debian GNU/Linux 11.0, running the isenkram-autoinstall-firmware command will do that automatically by creating a dedicated file (/etc/apt/sources.list.d/isenkram-autoinstall-firmware.list), pointing at a generic mirror.