]> git.proxmox.com Git - pve-docs.git/blame - firmware-updates.adoc
fix #2920: add cifs options parameter
[pve-docs.git] / firmware-updates.adoc
CommitLineData
16b31cc9
AZ
1[[chapter_firmware_updates]]
2Firmware Updates
3----------------
4ifdef::wiki[]
5:pve-toplevel:
6endif::wiki[]
7
8Firmware updates from this chapter should be applied when running {pve} on a
9bare-metal server. Whether configuring firmware updates is appropriate within
10guests, e.g. when using device pass-through, depends strongly on your setup and
11is therefore out of scope.
12
13Regular firmware updates for devices are just as important for proper operation
14as regular software updates. There are several ways to obtain and apply those
15updates. The methods listed in this chapter can also be combined to minimize the
16chance of missing an important update.
17
18TIP: When a firmware was updated, a system reboot is the safest way to apply the
19new version.
20
21
22[[sysadmin_firmware_persistent]]
23Persistent Firmware
24~~~~~~~~~~~~~~~~~~~
25The following methods write the new firmware permanently to the respective
26device. The firmware therefore remains up to date regardless of the booted
27operating system.
28
29TIP: When using a user space application or 'fwupd', the hardware must usually
30have been manufactured after 2014, the system must have been booted with UEFI
31and the EFI partition manually mounted.
32
33CAUTION: When updating the BIOS/UEFI itself, its settings are usually reset. Be
34prepared to reconfigure them afterwards.
35
36
37[[sysadmin_firmware_persistent_vendor_specific]]
38Vendor-specific
39^^^^^^^^^^^^^^^
40Firmware updates are usually available from the vendor directly. Please check
41with your vendor what options are available.
42
43Depending on the platform and vendor, there are convenient methods available.
44For servers, for example, Dell's Lifecycle Manager or Service Packs from HPE.
45Sometimes there are Linux utilities available as well. Examples are
46https://network.nvidia.com/support/firmware/mlxup-mft/['mlxup'] for NVIDIA
47ConnectX or
48https://techdocs.broadcom.com/us/en/storage-and-ethernet-connectivity/ethernet-nic-controllers/bcm957xxx/adapters/software-installation/updating-the-firmware/manually-updating-the-adapter-firmware-on-linuxesx.html['bnxtnvm'/'niccli']
49for Broadcom network cards.
50
51
52[[sysadmin_firmware_persistent_lvfs_fwupd]]
53Linux Vendor Firmware Service (LVFS) via fwupd
54^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
55On https://fwupd.org['LVFS'], vendors can make their firmware updates available
56in a standardized way to a wide range of Linux hosts. Here is the growing list
57of participating https://fwupd.org/lvfs/vendors/[vendors] and their currently
58supported https://fwupd.org/lvfs/devices/[devices].
59
60To use 'fwupd', manually mount your
61https://pve.proxmox.com/pve-docs/pve-admin-guide.html#sysboot_installer_part_scheme[EFI System Partition]
62(ESP) you booted from on `/boot/`. After installing the package 'fwupd', update
63firmware with the following commands:
64----
65# fwupdmgr refresh
66# fwupdmgr get-updates
67# fwupdmgr update
68# reboot
69----
70
71
72[[sysadmin_firmware_runtime_files]]
73Runtime Firmware Files
74~~~~~~~~~~~~~~~~~~~~~~
75The following methods keep the firmware files available at the {pve} host and do
76not persist it on the device itself. Whenever a device is initialized, usually
77during the boot process, the corresponding firmware is loaded into the RAM of
78the respective device. These methods do not provide and can not update firmware
79that is used in the very early boot process (e.g. BIOS/UEFI, hard disks).
80
81In {pve} the package `pve-firmware` is already installed by default. Therefore,
82with the normal system updates (APT), the included firmware of common hardware
83is automatically kept up to date. Be aware that CPU microcode updates are
84located in a separate Debian repository component, which is not configured by
85default.
86
87
88[[sysadmin_firmware_runtime_files_debian_repo]]
89Debian Firmware Repository
90^^^^^^^^^^^^^^^^^^^^^^^^^^
91Starting with Debian Bookworm ({pve} 8) non-free firmware (as defined by
92https://www.debian.org/social_contract#guidelines[DFSG]) has been moved to the
93newly created Debian repository component `non-free-firmware`. It contains
94firmware for CPUs (called microcode) as well as other firmware. In the past,
95CPUs repeatedly had security vulnerabilities beside other issues. Using this
96update method (additional) to apply microcode updates is convenient, safe and
97fast.
98
99To be able to install microcode updates or other firmware from the
100`non-free-firmware` component, edit the file `/etc/apt/sources.list`, append
101`non-free-firmware` to the end of each of the three Debian repository lines and
102run `apt-get update`.
103
104To keep the CPU microcode up to date, depending on the vendor, install the
105package `intel-microcode` or `amd64-microcode` and reboot your {pve} host
106afterwards.