整个 PVE 系统崩溃后,怎么恢复 PVE 给虚拟机分配的虚拟硬盘中的数据

背景

我有一块 ssd 用于 PVE 系统和 虚拟机 安装,还有一块 HDD 用来存储数据。这个HDD按照 把 PVE 下的机械硬盘(非SSD系统盘)分配给虚拟机使用 进行挂载和配置。主要过程是 PVE中 “数据中信” -> “存储” -> “添加” -> “目录”,新建一个 Nextcloud 目录。

在 debian 虚拟机中,添加硬盘,Bus/Device 选择 SCSI,format=raw,我只实验成功了 raw 格式。下图 大小是 32G。
在这里插入图片描述

Raw 格式的虚拟磁盘文件直接读取

  • 使用一块 ubuntu 系统安装盘,插入服务器,直接进入 Ubuntu U盘启动,选择试用 ubuntu 不选择安装。
  • 首先,查看已连接的磁盘:
lsblk

可以看到下图有个,sda 硬盘,如果没有挂载需要先挂载。参考Ubuntu 挂载硬盘,下图我挂载到 /mnt/share 中。
在这里插入图片描述

  • 打开 ubuntu 文件管理器,找到刚才挂载的文件夹 share,由于前面是挂载整个硬盘,Nextcloud 文件夹在整个硬盘中,所以直接进入 share/Nextcloud 文件夹中找 “*.raw” 文件。如果文件夹右上角有一个“x”,表示没权限,如下图右下角的 root 文件夹,这样需要先改文件权限。sudo chmod -R 777 /mnt/hare/Nextcloud 。记下来这个 vm-200-disk-0.raw 文件所在路径。
    在这里插入图片描述
  • 使用 losetup 挂载 raw 磁盘,使用下面语句,填入 “*.raw”文件路径
sudo losetup -Pf /mnt/share/Nextcloud/200/vm-200-disk-0.raw
  • 查看分区
lsblk

应该可以看到有一个硬盘是 32G,就是上一步创建的虚拟硬盘 vm-200-disk-0.raw。前面图中展示了 lsblk结果是 “loop14” 。

  • 挂载这个虚拟磁盘 loop14
sudo mkdir -p /mnt/nextcloud
sudo mount /dev/loop14 /mnt/nextcloud
  • 打开文件资源管理器,进入文件夹可以看到 samba 上的文件
    在这里插入图片描述

  • 解绑 raw 磁盘(完成后)
    当你读取完数据后,解绑 loop 设备:

sudo umount /mnt/???
sudo losetup -d /dev/loop14

qcow2 格式虚拟磁盘文件读取

类似前面 raw 虚拟磁盘文件处理过程,先把 HDD 挂载到 /mnt/share, 处理好权限问题,找到 “*.qcow2”格式文件,我的虚拟磁盘是 vm-110-disk-0.qcow2,

  • 安装 qemu-utils
sudo apt update
sudo apt install qemu-utils -y
  • 连接 QCOW2 文件到 NBD 设备
sudo modprobe nbd
sudo qemu-nbd --connect=/dev/nbd0 /mnt/share/Samba/images/110/vm-110-disk-0.qcow2
  • 查找 QCOW2 内部分区
lsblk

可以看到,有一个 nbd0的硬盘,容量是 200G,这个就是我放 Samba 共享文件夹的磁盘
在这里插入图片描述

  • 挂载 QCOW2 内的文件系统
sudo mkdir -p /mnt/samba
sudo mount /dev/nbd0 /mnt/samba

打开文件管理器,进入挂载的目录,可以看到 Samba 共享文件夹下的资料了。
在这里插入图片描述

  • 解绑 QCOW2 磁盘(操作完成后)
    当你完成数据读取后,安全卸载:
sudo umount /mnt/???
sudo qemu-nbd --disconnect /dev/nbd0

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/69057.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux: 网络基础

1.协议 为什么要有协议:减少通信成本。所有的网络问题,本质是传输距离变长了。 什么是协议:用计算机语言表达的约定。 2.分层 软件设计方面的优势—低耦合。 一般我们的分层依据:功能比较集中,耦合度比较高的模块层…

Python sider-ai-api库 — 访问Claude、llama、ChatGPT、gemini、o1等大模型API

目前国内少有调用ChatGPT、Claude、Gemini等国外大模型API的库。 Python库sider_ai_api 提供了调用这些大模型的一个完整解决方案, 使得开发者能调用 sider.ai 的API,实现大模型的访问。 Sider是谷歌浏览器和Edge的插件,能调用ChatGPT、Clau…

STM32 串口发送与接收

接线图 代码配置 根据上一章发送的代码配置,在GPIO配置的基础上需要再配置PA10引脚做RX接收,引脚模式可以选择浮空输入或者上拉输入,在USART配置串口模式里加上RX模式。 配置中断 //配置中断 USART_ITConfig(USART1, USART_IT_RXNE, ENABLE…

猫眼前端开发面试题及参考答案

对网络了解吗?说一下 OSI 七层模型 OSI 七层模型是国际标准化组织(ISO)制定的一个用于计算机网络通信的概念模型,从下到上依次为: 物理层:主要负责处理物理介质上的信号传输,包括电缆、光纤、无…

Ubuntu 24.04 安装 Poetry:Python 依赖管理的终极指南

Ubuntu 24.04 安装 Poetry:Python 依赖管理的终极指南 1. 更新系统包列表2. 安装 Poetry方法 1:使用官方安装脚本方法 2:使用 Pipx 安装 3. 配置环境变量4. 验证安装5. 配置 Poetry(可选)设置虚拟环境位置配置镜像源 6…

挑战项目 --- 微服务编程测评系统(在线OJ系统)

一、前言 1.为什么要做项目 面试官要问项目,考察你到底是理论派还是实战派? 1.希望从你的项目中看到你的真实能力和对知识的灵活运用。 2.展示你在面对问题和需求时的思考方式及解决问题的能力。 3.面试官会就你项目提出一些问题,或扩展需求…

SSM聚合项目+Vue3+Element-plus项目生产部署(Ubuntu24.04LTS)

非常刺激的一次部署经历,我相信很多第一次独立部署前后端分离项目的人都遇到过 后端部署 jdk环境 安装jdk,解压后配置环境变量即可 tomcat运行war包 需要在tomcat的conf/sever.xml中配置SSM聚合项目的每一个子项目的服务(标签),这样tomc…

linux 命令笔记

rsyn 文章目录 -1. 查看系统版本1.Linux的文件权限与目录配置1.1 使用者与群组1.2 Linux文件权限概念1.3 Linux目录配置 2.Linux文件与目录管理2.1 目录与路径2.2 文件与目录管理2.3 文件内容查询2.4 文件与目录的默认权限与隐藏权限2.5 指令与文件的搜寻 3.Linux磁盘与文件系统…

暴力破解与验证码安全

目录 前言 暴力破解:简单粗暴的黑客攻击手段 暴力破解的前提条件 暴力破解的定义与原理 常见的暴力破解工具 暴力破解的常见场景 暴力破解的危害 验证码:抵御暴力破解的第一道防线 验证码的定义与作用 验证码的工作原理 验证码的类型 验证码…

Fastdds学习分享_xtpes_发布订阅模式及rpc模式

在之前的博客中我们介绍了dds的大致功能,与组成结构。本篇博文主要介绍的是xtypes.分为理论和实际运用两部分.理论主要用于梳理hzy大佬的知识,对于某些一带而过的部分作出更为详细的阐释,并在之后通过实际案例便于理解。案例分为普通发布订阅…

Three.js 后期处理(Post-Processing)详解

目录 前言 一、什么是后期处理? 二、Three.js 后期处理的工作流程 2.1 创建 EffectComposer 2.2 添加渲染通道(Render Pass) 2.3 应用最终渲染 三、后期处理实现示例 3.1 基础代码 四、常见的后期处理效果 4.1 辉光效果&#xf…

计算机视觉-边缘检测

一、边缘 1.1 边缘的类型 ①实体上的边缘 ②深度上的边缘 ③符号的边缘 ④阴影产生的边缘 不同任务关注的边缘不一样 1.2 提取边缘 突变-求导(求导也是一种卷积) 近似,1(右边的一个值-自己可以用卷积做) 该点f(x,y)…

基于SpringBoot的美食烹饪互动平台的设计与实现(源码+SQL脚本+LW+部署讲解等)

专注于大学生项目实战开发,讲解,毕业答疑辅导,欢迎高校老师/同行前辈交流合作✌。 技术范围:SpringBoot、Vue、SSM、HLMT、小程序、Jsp、PHP、Nodejs、Python、爬虫、数据可视化、安卓app、大数据、物联网、机器学习等设计与开发。 主要内容:…

通信方式、点对点通信、集合通信

文章目录 传统组网互联大模型组网互联:超高带宽、超低延迟、超高可靠性☆☆☆ AI计算集群互联方式:Die间、片间、集群间Die间:SoC架构转向 Chilplet 异构(多Die)、UCIe标准IO Die & Base Die节点内 NPU 间互联&…

将markdown文件和LaTex公式转为word

通义千问等大模型生成的回答多数是markdown类型的,需要将他们转为Word文件 一 pypandoc 介绍 1. 项目介绍 pypandoc 是一个用于 pandoc 的轻量级 Python 包装器。pandoc 是一个通用的文档转换工具,支持多种格式的文档转换,如 Markdown、HTM…

git:恢复纯版本库

初级代码游戏的专栏介绍与文章目录-CSDN博客 我的github:codetoys,所有代码都将会位于ctfc库中。已经放入库中我会指出在库中的位置。 这些代码大部分以Linux为目标但部分代码是纯C的,可以在任何平台上使用。 源码指引:github源…

实现数组的扁平化

文章目录 1 实现数组的扁平化1.1 递归1.2 reduce1.3 扩展运算符1.4 split和toString1.5 flat1.6 正则表达式和JSON 1 实现数组的扁平化 1.1 递归 通过循环递归的方式,遍历数组的每一项,如果该项还是一个数组,那么就继续递归遍历&#xff0c…

npm知识

npm 是什么 npm 为你和你的团队打开了连接整个 JavaScript 天才世界的一扇大门。它是世界上最大的软件注册表,每星期大约有 30 亿次的下载量,包含超过 600000 个包(package)(即,代码模块)。来自…

SQL进阶实战技巧:如何分析浏览到下单各步骤转化率及流失用户数?

目录 0 问题描述 1 数据准备 2 问题分析 3 问题拓展 3.1 跳出率计算

【Java】位图 布隆过滤器

位图 初识位图 位图, 实际上就是将二进制位作为哈希表的一个个哈希桶的数据结构, 由于二进制位只能表示 0 和 1, 因此通常用于表示数据是否存在. 如下图所示, 这个位图就用于标识 0 ~ 14 中有什么数字存在 可以看到, 我们这里相当于是把下标作为了 key-value 的一员. 但是这…