为什么会sudo grub-probe --target=cryptodisk_uuid -d /dev/sdaX
失败?我试过 /dev/sda。我试过在 Ubuntu 16.04 和 18.04 上。这个命令从来都不起作用。
这确实有效:
sudo grub-probe -v --target=cryptodisk_uuid -d /dev/mapper/sda5_crypt
但这似乎没什么用。我的意思是,如果我必须从 /dev/mapper 指定驱动器,那么它已经被解锁了,这只有在我知道哪个驱动器被加密的情况下才有可能。在解锁任何驱动器之前,Grub 难道不应该在启动期间寻找加密驱动器吗?
hercules@NB2000:~$ lsblk -pf
NAME FSTYPE LABEL UUID MOUNTPOINT
/dev/sda
├─/dev/sda1 ext4 ab5ce54d-4864-45df-9bf5-9fa6d31f452e /boot
├─/dev/sda2
└─/dev/sda5 crypto_LUKS 6a09182f-d71a-48d9-adc0-d1555cda819d
└─/dev/mapper/sda5_crypt LVM2_member GF6wWp-VBmY-yZL5-o2QB-QDR9-5H3d-GF6wWo
├─/dev/mapper/ubuntu--mate--vg-root ext4 4428cf56-5be1-4a51-8918-954ab0628cf5 /
└─/dev/mapper/ubuntu--mate--vg-swap_1
谢谢
答案1
事实上,verbose
命令中缺少,所以没有output
明确说明,但实际上并非如此failed
。让我们检查一下这个事实:
$ sudo grub-probe --target=cryptodisk_uuid -d /dev/sda
$ echo $?
0
因此,输出echo $?
确认命令成功,但由于verbose
缺少选项,因此没有显示输出。
因此,您必须运行带有选项的命令verbose
才能显示如下输出:
$ sudo grub-probe --verbose --target=cryptodisk_uuid -d /dev/sda
(or)
$ sudo grub-probe -v --target=cryptodisk_uuid -d /dev/sda
这就对了!