一开始就出错,无法启动
我不得不对我的电脑进行硬重启,但在启动时(我认为是 initramfs)出现了错误:
mount: mounting /dev/mapper/ubuntu--vg-root on /root failed: Invalid argument
mount: mounting /dev on /root/dev failed: No such file or directory
mount: mounting /sys on /root/sys failed: No such file or directory
mount: mounting /proc on /root/proc failed: No such file or directory
Target filesystem doesn't have requested /sbin/init.
No init found. Try passing init= bootarg.
尝试从 Live-CD 挂载
我有非常非常重要的数据,因此我不会尝试修复启动系统(或无论我应该怎么称呼它),而是只想安装它并将重要文件复制到 USB 记忆棒上。
我试过几个指南,但都没有成功。最直接的似乎是从命令行挂载加密卷?。以下是我所做的:
ubuntu@ubuntu:~$ sudo cryptsetup luksOpen /dev/sda3 myvolume
Enter passphrase for /dev/sda3:
ubuntu@ubuntu:~$ mkdir mountpoint
ubuntu@ubuntu:~$ sudo mount /dev/mapper/myvolume m
mount: unknown filesystem type 'LVM2_member'
ubuntu@ubuntu:~$ sudo mount -t ext4 /dev/mapper/myvolume mountpoint
mount: /dev/mapper/myvolume already mounted or mountpoint busy
挂载点文件夹不忙,它是一个空文件夹,我可以根据需要删除它。我认为/dev/mapper/myvolume
它没有挂载,因为我没有这样做,而且下面的内容什么也没有返回ubuntu@ubuntu:~$ mount -l | grep myvolume
。
我不知道哪些信息与这个问题相关。经过一番努力,我学会了几十个新命令的名称,如果要发布所有命令的信息,文字太多了。所以请告诉我哪些其他信息是相关的。
blkid 的输出
/dev/loop0: TYPE="squashfs"
/dev/sda1: UUID="04BD-5CB0" TYPE="vfat"
/dev/sda2: UUID="4b4af9b9-1290-431a-bfcb-3b8e24d52c54" TYPE="ext2"
/dev/sda3: UUID="09e172eb-1080-4f68-80fb-1386ac0491b6" TYPE="crypto_LUKS"
/dev/sdb1: UUID="369D-508C" TYPE="vfat"
/dev/mapper/myvolume: UUID="0DkUPe-3S13-zNOA-5wi0-uzPb-CCB8-9m14C1" TYPE="LVM2_member"
/dev/mapper/ubuntu--vg-swap_1: UUID="44b26e6d-cb85-4949-b0e8-9421ab515d03" TYPE="swap"
Ubuntu Boot-Repair 的完整摘要
我没有尝试恢复任何东西,我只是使用该工具打印了相关信息的摘要。使用的工具:https://help.ubuntu.com/community/Boot-Repair
答案1
尝试这个:
您需要启动到 Live DVD/USB 环境并打开终端窗口:
按Applications
- - - Accessories
-Terminal
使用以下命令安装所需的包:
sudo apt-get update
sudo apt-get install lvm2 cryptsetup
使用以下命令探测所需模块:
sudo modprobe dm-crypt
您可以使用以下命令找出它是哪个驱动器:
sudo fdisk -l
您必须挂载 /dev/sda3 myvolume ,您需要使用 cryptsetup:
sudo cryptsetup luksOpen /dev/sde3 myvolume
现在可以通过 /dev/mapper/myvolume 访问该设备
扫描 LVM 卷并选择您要查找的正确卷组名称:
sudo vgscan
假设是system
,激活该卷:
sudo vgchange -ay system
要找出您的根卷,请使用以下命令:
sudo lvs
假设root system
您可以使用以下命令挂载它:
sudo mount /dev/system/root /mnt/
要批量操作,请使用以下命令
sudo mount --bind /dev /mnt/dev
sudo mount --bind /dev/pts /mnt/dev/pts
sudo mount --bind /proc /mnt/proc
sudo mount --bind /sys /mnt/sys
sudo chroot /mnt
答案2
LUKS 容器内有 LVM 卷。您应该让系统知道它们。
跑步
sudo vgscan
sudo vgchange -a y
进而
mount /dev/mapper/ubuntu--vg-root /mnt/whateveryoulike