![由于我无法加载未签名或自签名的模块,因此必须更改哪些重新编译的内核参数?](https://linux22.com/image/997235/%E7%94%B1%E4%BA%8E%E6%88%91%E6%97%A0%E6%B3%95%E5%8A%A0%E8%BD%BD%E6%9C%AA%E7%AD%BE%E5%90%8D%E6%88%96%E8%87%AA%E7%AD%BE%E5%90%8D%E7%9A%84%E6%A8%A1%E5%9D%97%EF%BC%8C%E5%9B%A0%E6%AD%A4%E5%BF%85%E9%A1%BB%E6%9B%B4%E6%94%B9%E5%93%AA%E4%BA%9B%E9%87%8D%E6%96%B0%E7%BC%96%E8%AF%91%E7%9A%84%E5%86%85%E6%A0%B8%E5%8F%82%E6%95%B0%EF%BC%9F.png)
我使用的是 Ubuntu 16.04.1 LTS/32 位(非 uefi),内核为 4.4.0-59-generic,主板为非 uefi(普通 bios)。我想重新编译内核,因为我无法加载未签名或自签名的模块(这是 Ubuntu 的一个错误)。罗德·史密斯建议重新编译内核。我必须更改哪个内核参数?我要更改的参数列表y
如下n
:
CONFIG_MODULE_SIG=y
CONFIG_MODULE_SIG_ALL=y
CONFIG_MODULE_SIG_UEFI=y
CONFIG_MODULES_USE_ELF_REL=y
这些内核参数的改变是否合理,我是否需要更多的参数?
============== 更新 ====================================================
我已禁用以下 26 个参数:
CONFIG_SYSTEM_DATA_VERIFICATION=y
CONFIG_MODULE_SIG=y
CONFIG_MODULE_SIG_ALL=y
CONFIG_MODULE_SIG_UEFI=y
CONFIG_MODULE_SIG_SHA512=y
CONFIG_MODULE_SIG_HASH="sha512"
CONFIG_EFI=y
CONFIG_EFI_STUB=y
CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE=y
CONFIG_ACPI_BGRT=y
CONFIG_FB_EFI=y
CONFIG_EFI_VARS=y
CONFIG_EFI_ESRT=y
CONFIG_EFI_VARS_PSTORE=m
CONFIG_EFI_RUNTIME_MAP=y
CONFIG_EFI_RUNTIME_WRAPPERS=y
CONFIG_EFI_TEST=m
CONFIG_EFIVAR_FS=y
CONFIG_EARLY_PRINTK_EFI=y
CONFIG_TRUSTED_KEYS=y
CONFIG_SIGNED_PE_FILE_VERIFICATION=y
CONFIG_EFI_SIGNATURE_LIST_PARSER=y
CONFIG_MODULE_SIG_KEY="certs/signing_key.pem"
CONFIG_SYSTEM_EXTRA_CERTIFICATE=y
CONFIG_SYSTEM_EXTRA_CERTIFICATE_SIZE=4096
CONFIG_UCS2_STRING=y
答案1
这个
CONFIG_EFI_SECURE_BOOT_SIG_ENFORCE=n
足以加载未签名的内核或未签名的模块。