編集:削除を要求しましたが閉じました。
chroot BTRFS システム (/mnt/arch(/@)) の GRUB 構成を編集したいと思います。次のコマンドを実行しました。
> sudo chroot /mnt/arch/@/
> grub-mkconfig -o /boot/grub/grub.cfg
しかし、次のエラーが発生しました。/usr/bin/grub-probe: error: cannot find a device for / (is /dev mounted?).
この問題をどのように解決できますか?
答え1
chrootにインストールされていることを/dev
/proc
確認してください。/sys
最後の2つは必要ないかもしれませんが、もし備えて常にインストールしてください。
以下を実行してこれを行うことができます(外部chroot)このコマンドは次のとおりです。
for i in /dev /proc /sys; do sudo mount -o bind $i /path/to/chroot${i}; done
私の記憶が正しい場合、Arch Linuxにはこれを自動的に実行する特別なコマンドがありますが、名前は覚えていません。
答え2
chroot
ディストリビューションの代わりにarch-chroot
ラッパー/dev
固有の一般的なコマンドを使用する場合(例:need。/proc
/sys
最も合理的な最新のLinuxで回復する必要があるルートファイルシステムがマウントされている場合は、/mnt/arch/@/
次のコマンドが機能します。
sudo mount -o rbind /dev /mnt/arch/@/dev
sudo mount -t proc none /mnt/arch/@/proc
sudo mount -t sysfs none /mnt/arch/@/sys
sudo chroot /mnt/arch/@
準備をキャンセルするには:
exit # = come back out of the chroot
sudo umount /mnt/arch/@/sys
sudo umount /mnt/arch/@/proc
sudo umount /mnt/arch/@/dev
答え3
arch-chroot
.
arch-chroot -a
アーチパーティションを自動的に検出してマウントします。手動
arch-chroot /dev/<device name>