我是新来的,我已经使用 Fedora 大约一年了,我的问题是,我已经使用 LVM 在加密硬盘上安装了 Fedora,这是我的卷组
VG #PV #LV #SN Attr VSize VFree
fedora_unix 1 4 0 wz--n- 47.04g 4.00m
我的逻辑卷是
LV VG Attr LSize Pool Origin Data% Meta% Move Log Cpy%Sync Convert
00 fedora_unix -wi-ao---- 5.00g
01 fedora_unix -wi-ao---- 5.00g
02 fedora_unix -wi-ao---- 3.82g
03 fedora_unix -wi-ao---- 33.21g
lsblk 的结果是
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 50G 0 disk
├─sda1 8:1 0 976M 0 part /boot/efi
├─sda2 8:2 0 2G 0 part /boot
└─sda3 8:3 0 47G 0 part
├─fedora_unix-03 253:0 0 33.2G 0 lvm
│ └─luks-62a9d691-240c-49b9-b937-f611ef79b05c 253:2 0 33.2G 0 crypt /
├─fedora_unix-02 253:1 0 3.8G 0 lvm
│ └─luks-79810c34-a63d-43b6-80db-297d7982d66e 253:3 0 3.8G 0 crypt [SWAP]
├─fedora_unix-00 253:4 0 5G 0 lvm
│ └─luks-c49e658c-196a-4d07-8932-24e80fd36d79 253:7 0 5G 0 crypt /home
└─fedora_unix-01 253:5 0 5G 0 lvm
└─luks-9e434ce7-2686-4f3f-9d55-b90224a1c290 253:6 0 5G 0 crypt /var
sr0 11:0 1 55.3M 0 rom
那么如何在 grub > Minimal Bash 中定义根目录?
当我写作时
grub> ls
(hd0) (hd1) (hd1,gpt3) (hd1,gpt2) (hd1,gpt1) (lvm/fedora_unix-03)
(lvm/fedora_unix-02) (lvm/fedora_unix-01) (lvm/fedora_unix-00)
grub> set root=(hd1,gpt2)
grub> linuxefi /vmlinuz-4.17.2-200.fc28.x86_64 root=/dev/mapper/fedora_unix-03
grub> initrdefi /initramfs-4.17.2-200.fc28.x86_64.img
grub> boot
它无法启动,只要求输入密码,之后系统无法切换到真正的根文件系统
事实上我可以引导加密的 Ubuntu ,因为根文件系统定义为
root=/dev/mapper/ubuntu--vg-root
但就我而言,在 Fedora 中,我尝试过
root=/dev/mapper/fedora_unix-root
这是行不通的
我也尝试过
root=/dev/mapper/fedora_unix-03
它也不起作用
答案1
在我的非 luks lvm 设置中使用此模式
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 978.1G 0 disk
├─sda1 8:1 0 260M 0 part /boot/efi
└─sda2 8:2 0 977.9G 0 part
├─vtb-Kali 253:0 0 50G 0 lvm /
├─vtb-Bunsen 253:1 0 10G 0 lvm
├─vtb-Home 253:2 0 200G 0 lvm /home
└─vtb-Work 253:3 0 300G 0 lvm /home/bu5hman/Documents/work
我的 GRUB 启动顺序是在那些欢乐的时刻,当GRUB
发生 splat时
set root=(/lvm/vtb-Kali)
linux /vmlinuz root=/dev/mapper/vtb-Kali
initrd /initrd.img
boot
由此看来您指向了set root
错误的分区。
相信 Fedora 将 root 设置为/
你的 lvm 并让 fstab 来接/boot/efi
我建议你尝试一下
set root=(/lvm/fedora_unix-03)
linuxefi /vmlinuz-4.17.2-200.fc28.x86_64 root=/dev/mapper/fedora_unix-03
initrdefi /initramfs-4.17.2-200.fc28.x86_64.img
boot
如果这不起作用,请尝试不带引导/
的情况set root
set root=(lvm/fedora_unix-03)
编辑:在评论中讨论后
尝试
`set root=` with either of the 2 options in my previous post.
调用 linuxefi 之后使用
root=/dev/mapper/luks-d2c9decd-e486-4ef3-9146-654ca2b4ec0a