use*_*941 7 linux arch-linux modprobe uefi
我正在尝试在我的新 Vaio Pro 上安装 Linux,这本身就是一次冒险。我正在尝试使用 UEFI 安装 Arch Linux。我正在学习本教程(尽管我使用的是较新的 2013.11 Arch Linux 安装介质)。
问题是当我尝试运行 modprobe -r efivars 或 modprobe efivars 时,它告诉我:
致命:未找到模块 efivars。
我无法在互联网上的任何地方找到解决方案。当我运行 modprobe efivarfs 时,我没有收到任何错误,但是当我尝试安装 Grub 时,它仍然显示:此系统不支持 EFI 变量。
在 UEFI 系统上安装 Archlinux 的教程中有一些小故障,但是您可以像这样解决这个特定的挂起问题:
您可能尝试从目标系统的 chroot 内部运行该 modprobe 命令。那不会让你去任何地方;您需要在主机系统的内核中加载功能。事实上,我对 2013.11 安装媒体的经验是您根本不需要加载模块;它已经加载了。问题是sysfs它使用的目录不能从 chroot 内部访问,所以这是您需要解决的问题。
将终端对 chroot 保持打开状态,但切换到新控制台 ( Alt+ F2)
检查/sys/firmware/efi/efivars目录是否存在。如果没有,那么modprobe efivars,但我怀疑你会发现它有。
将目录绑定挂载到您的 choot 中(如果您不使用,请调整/mnt)
mount --bind /sys/firmware/efi/efivars /mnt/sys/firmware/efi/efivars
Run Code Online (Sandbox Code Playgroud)切换回您的第一个终端 ( Alt+ F1) 并再次尝试您的下一个命令。根据您在安装过程中所处的位置,您的下一步可能是这样的:(假设您/boot/efi在 chroot 内安装了 FAT32 格式的 BIOS 分区)
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=grub --recheck
grub-mkconfig -o /boot/grub/grub.cfg
Run Code Online (Sandbox Code Playgroud)如果由于某种原因您在第 3 步中遇到问题,例如您挂载到的目录不存在,那么您没有正确遵循第 1 步。重要的是使用该arch-chroot命令初始化目标系统文件空间,然后才使用另一个控制台运行绑定挂载。原因是arch-chroot其他几个绑定安装的脚本集,包括用于/proc和的脚本集/sys,必须先到位,然后才能添加 efi-vars 缺少的那个。上面的说明让您打开第二个控制台来专门执行此操作,这样您在添加这个时就不会丢失其他绑定安装。
| 归档时间: |
|
| 查看次数: |
20662 次 |
| 最近记录: |