ライブUSBから別のドライブにGRUBをインストールしようとしています。grub-install
正常に動作している間grub-mkconfig -o /mnt/boot/grub/grub.cfg
(/mnt
マウントしようとしているドライブのマウントポイントへ)、エラーが返されます。
/usr/bin/grub-probe: error: failed to get canonical path of `/'.
オンラインで見つけたアドバイスは、update-grub
chrootで実行すると役に立つと提案しましたが、同じエラーが発生しました。
私の質問は2つあります。
- このエラーをどのように解決できますか?心から、きちんと働かせなければなりません。
- (もっと重要なこと)なぜこのソリューションで問題は解決しますか?
2番目の部分は重要です。ここで誰かがこの問題を引き起こすメカニズムを説明すると、デバッグに便利で、よく知られているソリューションが機能しない場合、より意味のあるデバッグが可能になるためです。
私の質問に合うと、私がインストールしたシステムはVoid MuslのライブISOであり、インストールしたいシステムは/
Void Muslが暗号化され、LUKSを使用して暗号化されます/boot
。
答え1
Voidのchrootはchroot内のブロックデバイスを認識しないことがわかりました。明らかに、Voidにはxbps-uchroot
それを正しく処理するための別々のコマンドがあります。解決策はxbps-uchroot
プレーンの代わりに使用することですchroot
。