PVE 下虚拟机 Ubuntu 无法进入恢复模式的解决方案——提取原有系统文件

问题说明

某天重启虚拟机 Ubuntu,发现虚拟机只有容器IP,桥接的接口在虚拟机显示状态为 DOWN:

想重启进入恢复模式,却发现恢复模式一直花屏,无法使用:

没有办法了,只能想办法提取原有系统内原有文件。

解决方案

  1. 定位虚拟机编号:
  1. 找到虚拟机主硬盘:

    SSH 登录宿主机,执行以下命令

    复制代码
    ls -al /dev/mapper/

    通常使用默认的 BIOS 启动类型,只会有一个硬盘,此处我使用 UEFI 启动类型,0号硬盘是 EFI 分区,所以是1号硬盘。

  2. 先将硬盘转为 qcow2 格式

    复制代码
    qemu-img convert -p -O qcow2 -c /dev/mapper/pve-vm--101-disk--0 ubuntu.qcow2

    其中,-c 选项为压缩,仅支持 qcow2 格式, 这样生成的文件大小会比较小。

  3. 再将 qcow2 格式硬盘转为 img 格式

    复制代码
    qemu-img convert -p -f qcow2 -O raw ubuntu.qcow2 ubuntu.img
  4. 挂载 img 镜像文件

    使用 fdisk -lu ubuntu.img 查看镜像内情况:

    可以看到第一个分区是 EFI 分区,跳过不处理;需要挂载第二个分区;

    可以得知第二个分区的起始位置是在整个磁盘的第 2203648 扇区(从0计数),而每一个扇区大小是 512 字节,所以,第二个分区的偏移量是 2203648 * 512 = 1128267776。

    为了挂载第二个分区,使用以下命令:

    复制代码
    mkdir ubuntu
    mount -o loop,offset=1128267776 ubuntu.img ubuntu
  5. 挂载结束,进入文件夹查看镜像文件

    复制代码
    cd ubuntu
    ls

    挂载成功,教程结束。

相关推荐
奋斗的小青年I1 个月前
虚拟化平台横评:Proxmox vs XCP-ng vs OpenStack vs Nutanix
网络·vmware·虚拟化·pve·超融合、
奋斗的小青年I1 个月前
Proxmox 性能调优全攻略
windows·vmware·pve·超融合
深色風信子1 个月前
VMware 安装 Proxmox
pve·proxmox
fleaxin2 个月前
大华海光GPU服务器安装PVE和统信系统虚拟机
服务器·nvidia·pve·uos·统信
奋斗的小青年I2 个月前
Proxmox VE Ceph 超融合集群落地实战
windows·ceph·vmware·pve·超融合·proxmox
奋斗的小青年I2 个月前
VMware 迁移到 Proxmox VE - 详细操作手册
vmware·虚拟化·pve·云桌面
枕书3 个月前
Oracle 19c RAC 双机高可用底座部署手册(PVE 架构版)
数据库·oracle·pve
阿杜杜不是阿木木3 个月前
authentik开源身份认证与管理平台-与 Proxmox VE 集成(2)
开源·pve·proxmox·authing·pbs·authentik
supersolon3 个月前
PVE通过命令删除爱快虚拟机
服务器·虚拟机·pve·ikuai·爱快
supersolon3 个月前
PVE 部署 iStoreOS 软路由完整教程(避坑版)
虚拟机·pve·openwrt·软路由·istoreos