我刚刚更新了系统,重新启动后我发现自己处于紧急模式。这是一个dm-crypt+LUKS
EFI
使用gummiboot
.无法安装的journalctl -xb
报告。/boot
按照此线,我尝试将内核降级为3.18.2
using pacman -U
,虽然确实降级了,但我仍然无法正常启动。
认为内核升级过程只是遇到了一个小故障,我尝试重新更新我的内核(从 )/var/cache/pacman/pkg/
,但这并没有影响下次启动。mkinitcpio
给出了启动分区未安装的警告。
我当前的行/etc/fstab
是:
LABEL=EFI /boot vfat rw,relatime,fmask=0022,dmask=0022,code page=437,iocharset=iso8859-1,short name=mixed,errors=remount-ro 0 2
uname -r
告诉我紧急模式正在使用 Linux 内核3.18.2
而不是3.18.6
我更新到的内核。pacman -Q
Linux 说3.18.6-1
。
Journalctl -xb | grep -I failed | less
显示 systemd 无法加载显示管理器并且无法启动加载内核模块。根据 ,有两个单位失败systemctl --state=failed
。
当我启动并尝试使用 netctl 连接到互联网时,我收到错误codepage cp437
并再次提示我输入 root 密码。进一步调查表明,这是为我的 EFI 分区指定的 MS-DOS/FAT 扩展 ASCII 编码/etc/fstab
。如果这只是/boot
和之间的错位/
,我怎样才能将它们重新同步过去pacman -U
?
我真的很感激有关恢复我的系统的建议。提前致谢。
答案1
jasonwryan
为我指明了正确的方向。
我执行了以下步骤:
1)下载最新的安装介质并制作可启动USB
2) 未加密我的 LUKS LVM 卷
/mnt/arch
3) 将我的卷安装到我创建的目录中的实时 USB 文件系统(包括/mnt/arch/boot
、 和/mnt/arch/home
)
4)连接到互联网wifi-menu
5)用于arch-chroot
更改root
6)用pacman更新
7)重新启动