
Я пытаюсь очистить место на моем корневом разделе, и /lib/firmware занимает много места. Там много файлов для устройств, которых, как я знаю, у меня нет, но также много файлов для устройств, которые я не узнаю, поэтому я не знаю, нужна ли мне прошивка.
Есть ли способ увидеть, какие файлы прошивки на самом деле были загружены?
решение1
Я позволю себе поспорить: я согласен, что потенциально там много файлов, /lib/firmware
которые вам могут не понадобиться, и поэтому часть из них можно удалить.
Однако в любом случае это следует делать с осторожностью, и вы должны быть готовы восстановить отсутствующие файлы прошивки с помощью загрузки с USB-накопителя или аналогичным способом.
Я составил следующий список папок, /lib/firmware
размер которых превышает 5 МБ, просто для начала:(Я удалил intel
и intel-ucode
, так как вам, скорее всего, не следует их удалять)
/lib/firmware/netronome : NIC firmware implementation for Agilio SmartNICs /lib/firmware/amdgpu : AMD GPU firmware /lib/firmware/mellanox : Mellanox Ethernet and InfiniBand NIC firmware /lib/firmware/qcom : Qualcomm device firmware /lib/firmware/mrvl : Marvell device firmware /lib/firmware/ath11k : Firmware for Qualcomm IEEE 802.11ax devices /lib/firmware/i915 : Firmware for i915 Intel GFX Driver /lib/firmware/liquidio : NIC firmware implementation for Marvell Liquidio SmartNICs /lib/firmware/qed : Firmware for QLogic Everest FastLinQ Linux Driver /lib/firmware/mediatek : MediaTak device firmware /lib/firmware/dpaa2 : Firmware for DPAA2 (Data Path Acceleration Architecture Gen2) /lib/firmware/ath10k : Firmware for Qualcomm IEEE 802.11ac devices /lib/firmware/brcm : Broadcom device firmware /lib/firmware/radeon : Firmware for AMD Radeon GPU adapters /lib/firmware/rtw89 : Firmware for Realtek rtw89 devices /lib/firmware/cypress : Cypress device firmware /lib/firmware/ti-connectivity : Texas Instruments device firmware
Я бы тогда предложил вам запустить sudo lshw
, и тщательно просмотреть список. Если вы на 100% уверены, что у вас нет оборудования от определенного поставщика, я бы сказал, что вы могли быдвигатьсяэта папка прошивки. Обратите внимание, что я бы посоветовал вамдвигатьсявместо того, чтобы сразу его удалить, чтобы можно было вернуть его на место в случае возникновения каких-либо проблем.
Например, я считаю, что видеокарты являются хорошим примером. Если у вас есть только видеокарта NVidia, вы, вероятно, можете удалить прошивку AMD GPU - и наоборот. Аналогично, для беспроводных сетевых адаптеров, если у вас есть от одного поставщика, у вас, скорее всего, нет ни от одного из других поставщиков.
Просто имейте в виду, что если вы позже решите сменить оборудование, вы можете внезапно потерять некоторые файлы прошивки. И вот почему я (снова) предлагаю вам ничего не удалять, а вместо этого переместить в другое место.
И, наконец, имейте в виду, что при запуске sudo apt upgrade
, потенциально могут быть установлены новые файлы внутри /lib/firmware
. Так что вам, вероятно, следует периодически проверять папки, которые, как вы абсолютно уверены, вам не нужны.
Это элегантное решение?Нет.Это чертовски круто?Да.Однако я бы все же утверждал, что есть некоторые случаи, когда файлы можно удалить без каких-либо последствий. Безусловно, не проблема удалить прошивку AMD и Nvidia, если вы используете Ubuntu Server только с встроенным графическим адаптером. И, вероятно, есть и другие подобные сценарии.
Просто будьте осторожны и будьте готовы восстановить файлы в любом случае.
Примечание: в настоящее время я ищу способ надежного определения того, к каким файлам прошивки был осуществлен доступ с момента последней перезагрузки. Я сообщу об этом через пару дней...
решение2
Вы можете проверить прошивку, используемую в вашей системе, в журнале ядра.
grep firmware /var/log/kernel.log
выдаст вам хороший список прошивок, которые были загружены с момента последней ротации журнала (может пройти несколько дней)
Однако с тех пор, как я впервые опубликовал это, я узнал, что большая часть прошивки загружается initrd и обычно не создает файл журнала своих действий.