On Mac OS X there is a tool called nvram to get and set EFI properties. As I am now deploying GNU/Linux on Apple hardware, I'd like to have a similar tool that is able to talk to Apple's EFI implementation.
Are there tools to achieve this?
The tools available are going to vary between Linux distributions, but with a Ubuntu 16.04 LTS live ISO booted from a USB stick on a 2011 MacBook Pro, nvram variables are readable in the filesystem:
ubuntu@ubuntu:~$ cd /sys/firmware/efi/efivars/ ubuntu@ubuntu:/sys/firmware/efi/efivars$ ls AAPL,PathProperties0000-4d1ede05-38c7-4a6a-9cc6-4bcca8b38c14 AcpiGlobalVariable-af9ffd67-ec10-488a-9dfc-6cbf5ee22c2e [...] ThorUpdateResult-7c436110-ab2a-4bbb-a880-fe41995c9f82 Timeout-8be4df61-93ca-11d2-aa0d-00e098032b8c ubuntu@ubuntu:/sys/firmware/efi/efivars$ hexdump -C Lang-* 00000000 07 00 00 00 65 6e 67 |....eng| 00000007
To modify variables, install the
efivar tool with