After some years of trouble free UEFI use on a PC with a Kaveri APU, I've 
suddenly come across a problem of incorrectly mounted efivarfs.  I realised 
something was amiss when I tried to set up a new kernel I had just copied into 
/boot/EFI/BOOT/

# tree /boot
/boot
├── 42GHz2400MHz.CMO
└── EFI
    └── BOOT
        ├── A88XM-PLUS-ASUS-3004.CAP
        ├── System.map-4.12.5-gentoo
        ├── System.map-4.9.34-gentoo
        ├── bootx64-4.12.5-gentoo.efi
        ├── bootx64-4.9.34-gentoo.efi  <==This one
        ├── config-4.12.5-gentoo
        └── config-4.9.34-gentoo

2 directories, 8 files

The error is generated whenever  I try to create a new boot entry:

# efibootmgr --create --disk /dev/sda --part 1 --label "gentoo-4.12.5-15_Aug" 
--loader "\EFI\BOOT\bootx64-4.12.5-gentoo.efi"
Could not prepare Boot variable: Read-only file system

Hmm ... looking more closely it seems /sys/firmware/efi/efivars was mounted as 
'ro':

# mount | grep efi
efivarfs on /sys/firmware/efi/efivars type efivarfs (ro,relatime)


I can't recall if I did this myself in a moment of security induced 
inspiration.  I doubt I did.  So how did this happen?  What is responsible for 
mounting this fs?

Should I remount it as 'rw' so I can set up the new kernel in the EFI stub, or 
does this problem need further investigation?

-- 
Regards,
Mick

Attachment: signature.asc
Description: This is a digitally signed message part.

Reply via email to