fwupd failed to update history database

JoshoSAI

New Member
Dec 21, 2023
6
1
1
Hi Team
I'm running a new PVE cluster of 3 nodes in a test. Hardware is running on identical Lenovo P3 Ultras
  • Intel 13th gen i9-13900 CPU
  • 128Gb DDR5 ECC memory
  • 1 x 256Gb NVME (/boot/efi and /root)
  • 2 x 4Tb Gen4 NVMe 990 Pro Samsung drives.
  • The system hosts a 1GbE and 2.5GbE onboard NICs
  • PCIe card: Intel X550-T2 (dual) 10GbE NIC.
Proxmox running kernel is 6.8.12-1-pve

Lenovo & Intel have recently released various updates. I have added the below packages to the PVE nodes as other firmware updates were available previously and have been applied.
Code:
proxmox-secure-boot-support
fwupd
udisks2
udisks2-bcache
udisks2-zram
udisks2-lvm2
udisks2-btrfs
intel-microcode

I've updated the /etc/fwupd/daemon.conf changing the below line
from
EspLocation=
to
EspLocation=/boot/efi
(the path is correct and the /boot/efi is mounted on /dev/nvme0n1p2)

The system has been online and stable for a few weeks. All is good with my Proxmox cluster. All previous firmware updates for the system, which have been a few, have applied without error.

Lenovo has very recently released a new BIOS update for the MoBo which fwupdmgr refresh is showing as needed. Lenovo's website shows this update as Critical also.

This new BIOS version updates the Intel Microcode to 0x129 os it's quite important!

My Problem:

Code:
fwupd.service - Firmware update daemon
     Loaded: loaded (/lib/systemd/system/fwupd.service; static)
     Active: active (running) since Thu 2024-09-12 09:38:02 AWST; 10s ago
       Docs: https://fwupd.org/
   Main PID: 21657 (fwupd)
      Tasks: 6 (limit: 154034)
     Memory: 26.9M
        CPU: 577ms
     CGroup: /system.slice/fwupd.service
             └─21657 /usr/libexec/fwupd/fwupd

Sep 12 09:37:57 pve03 systemd[1]: Starting fwupd.service - Firmware update daemon...
Sep 12 09:38:02 pve03 fwupd[21657]: 01:38:02.096 FuEngine  failed to update history database: Error opening file /sys/firmware/efi/efivars/CapsuleLast-39b68c46-f7fb-441b-b6ec-16b0f69821f3: No such file or directory
Sep 12 09:38:02 pve03 systemd[1]: Started fwupd.service - Firmware update daemon.

ls /sys/firmware/efi/efivars | grep Capsule returns the below 1 file only
Code:
BiosGuardCapsuleVariable-368b3153-563d-4610-8d94-47a9fa8c4c16
which is zero bytes in size.

I've executed a fwupdmgr get-upgrades which shows the new BIOS is there.
Applying the fwupdmgr update returns the below

Code:
Devices with no available firmware updates:
 • SSD 990 PRO 4TB
 • SSD 990 PRO 4TB
 • UEFI Device Firmware
 • UEFI Device Firmware
 • UEFI Device Firmware
 • UEFI Device Firmware
 • WD PC SN740 SDDQNQD-256G-1201
Devices with the latest available firmware version:
 • Embedded Controller
╔══════════════════════════════════════════════════════════════════════════════╗
║ Upgrade System Firmware from 1.27 to 1.40?                                   ║
╠══════════════════════════════════════════════════════════════════════════════╣
║ This stable release fixes the following issues:                              ║
║                                                                              ║
║ • Base BIOS 27A.                                                             ║
║                                                                              ║
║ 30HACTO1WW must remain plugged into a power source for the duration of the   ║
║ update to avoid damage.                                                      ║
╚══════════════════════════════════════════════════════════════════════════════╝
Perform operation? [Y|n]:
Selecting Y to the above downloads the update and I then restart the system

System POST completes as normal, with Lenovo splash on-screen,
"Welcome to GRUB" flashes up for a microsecond (caught via screencast capture) and GRUB loads as normal

The BIOS update hasn't been applied and running fwupdmgr update shows the same pending update.

Can someone please point me in the right direction on this?
 
Last edited:
additional info:
Lenovo BIOS settings does not host a "lock the boot order" os similar, except for
Secure Rollback Prevention: [No]
Configuraion Change Detection: [Disabled]
First Boot Device : [Boot Order]

UEFI Boot Options (the boot order)
  1. PCIe Drive 1 [proxmox]
  2. PCIe Drive 1 [UEFI OS]
  3. USB HDD [None]
  4. USB CDROM [None]
  5. then the PXE boot options from the onboard NIC's
I can't see anything related to inhibiting the firmware from being applied in the BIOS settings.

df-h /boot/efi output below
Code:
Filesystem      Size  Used Avail Use% Mounted on
/dev/nvme2n1p2 1022M  259M  764M  26% /boot/efi


The below is fwupdmgr update --verbose results

Code:
fwupdmgr update --verbose
(fwupdmgr:9428): GLib-DEBUG: 12:20:18.379: setenv()/putenv() are not thread-safe and should not be used after threads are created
(fwupdmgr:9428): GLib-GIO-DEBUG: 12:20:18.379: _g_io_module_get_default: Found default implementation dummy (GDummyProxyResolver) for ‘gio-proxy-resolver’
(fwupdmgr:9428): GLib-GIO-DEBUG: 12:20:18.380: Using cross-namespace EXTERNAL authentication (this will deadlock if server is GDBus < 2.73.3)
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:22.872: Emitting ::status-changed() [idle]
Devices with no available firmware updates:
 • SSD 990 PRO 4TB
 • SSD 990 PRO 4TB
 • UEFI Device Firmware
 • UEFI Device Firmware
 • UEFI Device Firmware
 • UEFI Device Firmware
 • WD PC SN740 SDDQNQD-256G-1201
Devices with the latest available firmware version:
 • Embedded Controller
(fwupdmgr:9428): FuMain-DEBUG: 12:20:22.877: current version is 1.17: 1.17=same
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:22.882: downloading https://fwupd.org/downloads/9467caf97c66be51bd2d9ce90599c7084bac5ec4be57c8572e37879397d1a42e-Lenovo-ThinkStation-P3Ultra-System-Firmware-S0JKT28A.cab
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:22.882: Emitting ::status-changed() [downloading]

*** section truncated ***

(fwupdmgr:9428): Fwupd-DEBUG: 12:20:22.916: Emitting ::status-changed() [idle]
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:22.916: status-code was 200
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:22.958: Emitting ::status-changed() [decompressing]
Decompressing…           [***************************************](fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.179: Emitting ::device-changed(a45df35ac0e948ee180fe216a5f703f32dda163f)
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.179: Emitting ::status-changed() [waiting-for-auth]
Authenticating…          [***************************************](fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.196: Emitting ::status-changed() [device-busy]
Waiting…                 [***************************************](fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.196: Emitting ::device-changed(a45df35ac0e948ee180fe216a5f703f32dda163f)
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.196: Emitting ::device-changed(a45df35ac0e948ee180fe216a5f703f32dda163f)
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.197: Emitting ::device-changed(a45df35ac0e948ee180fe216a5f703f32dda163f)
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.197: Emitting ::device-changed(a45df35ac0e948ee180fe216a5f703f32dda163f)
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.210: Emitting ::status-changed() [device-write]
Writing…                 [                                       ](fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.210: Emitting ::status-changed() [device-restart]
Restarting device…       [                                       ](fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.210: Emitting ::status-changed() [device-write]
Writing…                 [                                       ](fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.210: Emitting ::status-changed() [scheduling]
Scheduling…              [                                       ](fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.210: Emitting ::status-changed() [decompressing]
Decompressing…           [                                       ](fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.257: Emitting ::device-request(org.freedesktop.fwupd.request.remove-replug)
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.258: Emitting ::device-changed(a45df35ac0e948ee180fe216a5f703f32dda163f)
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.258: Emitting ::status-changed() [device-restart]
Restarting device…       [************************************** ](fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.258: Emitting ::status-changed() [device-busy]
Waiting…                 [************************************** ](fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.258: Emitting ::device-changed(a45df35ac0e948ee180fe216a5f703f32dda163f)
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.258: Emitting ::device-changed(a45df35ac0e948ee180fe216a5f703f32dda163f)
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.258: Emitting ::device-changed(a45df35ac0e948ee180fe216a5f703f32dda163f)
Waiting…                 [***************************************](fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.258: Emitting ::device-changed(a45df35ac0e948ee180fe216a5f703f32dda163f)
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.259: Emitting ::device-changed(a45df35ac0e948ee180fe216a5f703f32dda163f)
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.259: Emitting ::status-changed() [unknown]

Successfully installed firmware
Do not turn off your computer or remove the AC adapter while the update is in progress.
(fwupdmgr:9428): Fwupd-DEBUG: 12:20:23.259: Emitting ::status-changed() [idle]
An update requires a reboot to complete. Restart now? [y|N]:

But the BIOS update is still not applied at restart
 
Last edited:

About

The Proxmox community has been around for many years and offers help and support for Proxmox VE, Proxmox Backup Server, and Proxmox Mail Gateway.
We think our community is one of the best thanks to people like you!

Get your subscription!

The Proxmox team works very hard to make sure you are running the best software and getting stable updates and security enhancements, as well as quick enterprise support. Tens of thousands of happy customers have a Proxmox subscription. Get yours easily in our online shop.

Buy now!