As I was wrapping up the usual batch of updates / upgrades on my systems before the holidays, I encountered a seemingly critical problem with my pair of ROC-RK-3328-CC (Renegade) boards. I ran apt-get update as usual and then apt-get upgrade on them both. The upgrade command warned me that the updated kernel was being held back, which it always does, but I allowed it to continue as I usually upgrade the kernel standalone after the other packages. When the upgrade process ran, on both systems, I received the following output:
Setting up grub-efi-arm64 (2.06-3~deb11u5) …
Installing for arm64-efi platform.
grub-install: warning: Cannot set EFI variable Boot0000.
grub-install: warning: efivarfs_set_variable: failed to create /sys/firmware/efi/efivars/Boot0000-8be4df61-93ca-11d2-aa0d-00e098032b8c for writing: Read-only file system.
grub-install: warning: _efi_set_variable_mode: ops->set_variable() failed: Read-only file system.
grub-install: error: failed to register the EFI boot entry: Read-only file system.
Failed: grub-install --target=arm64-efi
WARNING: Bootloader is not properly installed, system may not be bootable
Generating grub configuration file …
The output was identical on both systems so I googled it and found some documentation from 2021 here:
That thread halfway seems to indicate that this might not actually be a true problem I am seeing but when you look at the /sys/firmware/efi/efivars/ filesystem it is indeed mounted ro and the Boot0000-… file is absent and as is mentioned in the thread that could keep the system from booting. After poking around google a little more I proceeded with my normal pattern of running apt autoremove (to remove the outdated 6.0.11 kernel) and then apt-get upgrade --with-new-pkgs (to install 6.0.15) and those 2 procedures completed with no errors being reported.
So for the moment I am leaving the pair sitting just as they are since they are running just fine, but I won’t try a reboot until I can get some clarification as to whether this is indeed a possible boot-preventing problem or if it is just overzealous background noise. I did session capture the entire process on both nodes so I can paste it over here if that would help, but I didn’t see a point at this stage as everything else ran nominally.