Итак, сегодня я узнал, что размер пакета linux-unfree-firmware моего дистрибутива составляет 491 Мб. Я почти уверен, что моему оборудованию не нужны все эти файлы. Следовательно, я думаю, что смогу уменьшить использование этого диска, если буду знать только, какие файлы я могу исключить оттуда.

Есть ли какая-либо официальная документация, в которой точно указано, какие файлы из https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/ нужны для каждой модели устройства/компьютера? Возможно, это будет указано в официальной документации оборудования моего компьютера? Существует веб-страница Linux с нуля, на которой содержится информация о популярном оборудовании, но мне интересно, есть ли где-нибудь более "официальная" информация.

0
Doron Behar 18 Апр 2020 в 11:55

1 ответ

Лучший ответ

К сожалению, нет «официальной» документации для каждого имеющегося оборудования и файлов прошивки, которые для него требуются. Но можно точно узнать, какие файлы прошивки нужны вашему оборудованию, немного взломав систему сборки ядра Linux.

Более того, даже если вы точно узнаете, какие файлы прошивки использует ваше оборудование, в конечном итоге вы получите не слишком короткий список файлов, которые нужно будет часто обновлять - практически после каждого выпуска (тег git) https://git.kernel.org/pub /scm/linux/kernel/git/firmware/linux-firmware.git/. Это означает, что вы не сможете надежно отфильтровать файлы прошивки прямо из списка, который вы скоро научитесь генерировать.

Если вы все еще заинтересованы в этом, выполните следующие действия:

  1. Загрузите последнюю версию ядра с https:/ /git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/.
  2. Выполнить: make localmodconfig. <ул>
  3. Это создаст файл .config, который будет содержать список параметров сборки в соответствии с вашим текущим ядром.
  4. Запустите make. <ул>
  5. При этом будет собрано ядро, поэтому это может занять некоторое время.
  6. Возможно, вам потребуется установить некоторые зависимости, чтобы завершить сборку.
  7. После завершения make у вас будет набор файлов .ko, которые являются файлами модулей ядра.
  8. Запустите эту команду:
find -name '*.ko' -exec modinfo {} \; | awk '$1 == "firmware:" { print $2}'

Последняя команда выводит список файлов прошивки, которые, вероятно, будут находиться в пакете linux-unfree-firmware вашего дистрибутива. Это файлы, которые нужны вашему оборудованию.

Авторы: https://lists.kernelnewbies.org/pipermail/kernelnewbies/ 2020-May/020818.html

0
Doron Behar 16 Май 2020 в 19:46