当内核变量 CONFIG_EFIVAR_FS 和 CONFIG_EFI_VARS 都为 =y 时,UEFI 变量存储(删除 /sys/firmware/efi 转储文件),如 Ubuntu 20.04 中一样

当内核变量 CONFIG_EFIVAR_FS 和 CONFIG_EFI_VARS 都为 =y 时,UEFI 变量存储(删除 /sys/firmware/efi 转储文件),如 Ubuntu 20.04 中一样

在里面建筑维基我看到两个内核变量CONFIG_EFIVAR_FS&CONFIG_EFI_VARS应该分别设置=y为 和=n。Arch 说,“应禁用此选项以防止在启用 efivarfs 和 sysfs-efivars 时出现任何潜在问题。”在 Ubuntu 20.04 中,它们都设置为=y。如果我理解正确的话,结果似乎是dump-*中的文件/sys/firmware/efi/efivarsdump-*中的目录/sys/firmware/efi/vars

$ ls -l efivars/dump*
-rw-r--r-- 1 root root 644 Feb 27 00:12 efivars/dump-type0-10-1-1645912016-C-cfc8fc79-be2e-4ddc-97f0-9f98bfe298a0
[& etc.]

$ ls -l vars/dump*
vars/dump-type0-10-1-1645912016-C-cfc8fc79-be2e-4ddc-97f0-9f98bfe298a0:
total 0
-r-------- 1 root root 4096 Feb 27 00:48 attributes
-r-------- 1 root root 4096 Feb 27 00:48 data
-r-------- 1 root root 4096 Feb 27 00:48 guid
-rw------- 1 root root 4096 Feb 27 00:48 raw_var
-r-------- 1 root root 4096 Feb 27 00:48 size
[& etc.]

由于我的 NVRAM 已被这些填满(请参阅这里这里对于由于包装而导致的麻烦acpi-call,特别是在老化的 Thinkpad 中 - 我的是 W530),我想知道我的理解是否正确,因此我需要删除文件和目录及其内容?

编辑1:按照 user1686 的回答,我尝试删除../efivars/dump*。即使重新启动后,../vars/dump*目录仍然存在。更糟糕的是,../efivars/dump*文件又回来了!

编辑2:../efivars/dump*第二次删除了它们,重启后它们和../vars/dump*目录都消失了。

答案1

两个位置代表同一件事——它们是同一个 EFI“变量”存储的不同视图,并且底层只有一个该变量的副本。

因此,无论您先删除哪一个,内核都会要求 EFI 运行时服务删除完全相同的 EFI 变量,并且该条目应同时从两个位置消失。

(如果它没有从两个位置消失,不要尝试从另一个位置删除它,而是重新启动。)

相关内容