您尚未登录。

#1 2018-09-19 00:40:08

2419
会员
所在地: 127.0.0.1
注册时间: 2016-08-09
帖子: 5

[已解决]根分区LUKS,启动时无法找到根分区

遇到的问题:

ERROR: device *UUID of /dev/mapper/mycryroot not found. Skipping fsck.
ERROR: unable to find root device *UUID of /dev/mapper/mycryroot
You are being dropped into recovery shell

大致进行的步骤如下:

UEFI+GPT引导

加密:

cryptsetup -v --cipher aes-xts-plain64 --key-size 512 --hash sha512 --iter-time 2000 --use-urandom --verify-passphrase luksFormat /dev/sda2

创建分区:

cryptsetup open /dev/sda2 mycryroot

格式化:

mkfs.ext4 /dev/mapper/mycryroot

boot分区:

mkfs.vfat -F32 /dev/sda1 

挂载:

mount /dev/mapper/mycryroot /mnt
mount /dev/sda1 /mnt/boot
sda          8:0    0 xxxxG  0 disk  
├─sda1       8:1    0  xxxxM  0 part  /boot
└─sda2       8:2    0 xxxG  0 part  
  └─mycryroot 254:0    0 xxxG  0 crypt /

arch-chroot进入/mnt

复制本机的分区到新硬盘:

sudo rsync -aAX -H --info=progress2 --one-file-system --exclude={"/dev/*","/proc/*","/sys/*","/tmp/*","/run/*","/mnt/*","/media/*","/lost+found","/swapfile","/home"} / /mnt/

复制家目录到新硬盘

修改mkinitcpio.conf

MODULES=(vfat ext4)
HOOKS=(base udev autodetect keyboard keymap modconf block encrypt filesystems fsck)

修改/etc/default/grub

GRUB_CMDLINE_LINUX_DEFAULT="root=/dev/mapper/mycryroot"
GRUB_CMDLINE_LINUX="cryptdevices=/dev/sda2:mycryroot"

ESP分区是/boot

重新

mkinitcpio -p linux ; grub-mkconfig -o /boot/grub/grub.cfg

重新启动,总是显示:

waiting 10 minutes for  xxx
ERROR: device *UUID of /dev/mapper/mycryroot not found. Skipping fsck.
You are being dropped into recovery shell


已解决:

grub默认设置里“cryptdevice”选项误写为“cryptdevices”

最近编辑记录 2419 (2018-09-19 23:44:43)

离线

#2 2018-09-19 11:33:40

依云
会员
所在地: a.k.a. 百合仙子
注册时间: 2011-08-21
帖子: 8,384
个人网站

Re: [已解决]根分区LUKS,启动时无法找到根分区

使用 fallback 启动项进入呢?

离线

#3 2018-09-19 17:24:33

2419
会员
所在地: 127.0.0.1
注册时间: 2016-08-09
帖子: 5

Re: [已解决]根分区LUKS,启动时无法找到根分区

依云 说:

使用 fallback 启动项进入呢?

试了fallback的,还是找不到,进到rootfs了

离线

页脚