Eliminar archivos innecesarios de /lib/firmware

Eliminar archivos innecesarios de /lib/firmware

Estoy intentando liberar espacio en mi partición raíz y /lib/firmware está ocupando mucho espacio. Hay muchos archivos para dispositivos que sé que no tengo, pero también hay muchos archivos para dispositivos que no reconozco, por lo que no sé si necesito el firmware o no.

¿Existe tal vez alguna forma de ver qué archivos de firmware se han cargado realmente?

Respuesta1

Morderé aquí: estoy de acuerdo en que potencialmente hay muchos archivos que /lib/firmwarequizás no necesites y, como tal, debería ser posible eliminar algunos de ellos.

Sin embargo, en cualquier caso, esto debe hacerse con precaución y debe estar preparado para recuperar los archivos de firmware faltantes mediante un arranque USB en vivo o un método similar.

He hecho la siguiente lista de los pliegues /lib/firmwareque tienen más de 5 MB, solo para empezar:(He eliminado intely intel-ucode, ya que lo más probable es que no deberías eliminarlos)

/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

Entonces le sugiero que ejecute sudo lshwy revise detenidamente la lista. Si está 100% seguro de que no tiene hardware de un proveedor específico, diría que podríamoveresa carpeta de firmware. Tenga en cuenta que le sugeriríamoveren lugar de quitarlo al principio, para que puedas volver a colocarlo en caso de cualquier problema.

Por ejemplo, creo que las tarjetas de video son un buen ejemplo. Si sólo tienes una tarjeta de vídeo NVidia, probablemente puedas eliminar el firmware de la GPU AMD y viceversa. De manera similar, para los adaptadores de red inalámbrica, si los tiene de un proveedor, lo más probable es que no los tenga de ninguno de los otros proveedores.

Sólo tenga en cuenta que si más adelante decide cambiar su hardware, es posible que de repente se pierda algunos de los archivos de firmware. Y es por eso que (nuevamente) sugeriría que no elimine nada, sino que lo mueva a otra ubicación.

Y finalmente tenga en cuenta que, cuando se ejecuta sudo apt upgrade, es posible que se instalen nuevos archivos en su interior /lib/firmware. Por lo tanto, probablemente deberías buscar periódicamente carpetas que estés absolutamente seguro de que no necesitas.

¿Es esta una solución elegante?No.¿Es muy complicado?Sí.Sin embargo, todavía diría que hay algunos casos en los que los archivos pueden eliminarse sin consecuencia alguna. Ciertamente no es problema eliminar el firmware de AMD y Nvidia si estás ejecutando Ubuntu Server con sólo un adaptador de gráficos integrado. Y probablemente existan otros escenarios similares.

Sólo tenga cuidado y prepárese para restaurar archivos en cualquier caso.

NB: Actualmente estoy investigando una forma de averiguar de manera confiable a qué archivos de firmware se ha accedido desde el último reinicio. Informaré sobre esto en un par de días...

Respuesta2

Puede verificar el firmware que se utiliza para su sistema en el registro del kernel.

grep firmware /var/log/kernel.log

le dará una buena lista del firmware que se cargó desde la última rotación de registros (podrían pasar varios días)

Sin embargo, desde que publiqué esto por primera vez, aprendí que la mayor parte del firmware será cargado por initrd y que generalmente no genera un archivo de registro de lo que está haciendo.

información relacionada