nixos-install
building the configuration in /mnt/etc/nixos/configuration.nix...
copying channel...
installing the boot loader...
setting up /etc...
updating GRUB 2 menu...
mktemp: failed to create directory via template ‘/tmp/os-prober.XXXXXX’: No such file or directory
grub-probe: error: cannot find a GRUB drive for /dev/sdb1. Check your device.map.
installing the GRUB 2 EFI boot loader into /boot/efi...
Installing for x86_64-efi platform.
/nix/store/j5fn7ksaaxxjq5ljzaa2kirjnygfrd2d-grub-2.02/sbin/grub-install: error: failed to get canonical path of `/boot/efi'.
/nix/store/bj5abk7dpchvp9ajrmcy0px7zip9qpib-install-grub.pl: installation of GRUB EFI into /boot/efi failed
次のような起動設定があります。
# Use the GRUB 2 boot loader.
boot.loader.grub.enable = true;
boot.loader.grub.useOSProber = true;
boot.loader.grub.version = 2;
boot.loader.grub.efiSupport = true;
boot.loader.grub.efiInstallAsRemovable = true;
boot.loader.efi.efiSysMountPoint = "/boot/efi";
# Define on which hard drive you want to install Grub.
boot.loader.grub.device = "nodev"; # or "nodev" for efi only
boot.loader.systemd-boot.enable = true;
#boot.extraModprobeConfig = "options nouveau noaccel=1 runpm=0 nofbaccel=1 modeset=1";
#boot.kernelPackages = pkgs.linuxPackages_latest;
この問題の原因は何ですか? 「標準」パスとは何ですか?
答え1
/boot
ブートパーティションを...代わりにマウントする必要があります/mnt/boot
。
答え2
ESPパーティションの指定されたマウントポイントは次のとおりです/boot/efi
。
boot.loader.efi.efiSysMountPoint = "/boot/efi";
/mnt
つまり、/mnt/boot/efi
実行時にnixos-install
(と同じ)下にインストールする必要がありますnixos-rebuild
。このエラーはfailed to get canonical path of '/boot/efi'
そうでないことを示します。
よくある間違いはESPをにインストールすることです/mnt/boot
。 ESPをインストールする/boot
のも間違ったアプローチです。