首页 > 系统相关 >使用 `dd` 备份Ubuntu系统盘

使用 `dd` 备份Ubuntu系统盘

时间:2024-08-13 12:48:45浏览次数:14  
标签:dd dev 备份文件 系统盘 sda Ubuntu 磁盘 备份

1. 方案概述

dd 是一个低级别的数据复制工具,能够直接将磁盘或分区的内容逐位复制到另一个设备或文件中。使用 dd 备份系统盘可以获得整个系统的精确副本,包括操作系统、配置文件、已安装的软件、以及所有用户数据。

2. 前提条件

  • 源设备:包含系统的磁盘(如 /dev/sda
  • 目标设备或文件:可以是另一个磁盘(如 /dev/sdb),或者一个备份文件(如 /mnt/backup/system_backup.img),本次采用备份为img文件的方式测试备份。
  • 备用存储设备:用于存储备份数据,其容量应等于或大于源设备的容量。
  • 可启动的LiveCD/LiveUSB:用于停机时备份。

3. 备份前的准备工作

  1. 准备LiveCD/LiveUSB

    • 下载Ubuntu ISO镜像文件并制作LiveCD或LiveUSB。
    • 从LiveCD/LiveUSB启动系统,以避免备份过程中文件系统的变动。
  2. 确认设备名称

    • 使用 lsblk 命令确认系统盘(源设备)和目标盘(或备份位置)的名称。
    • 示例:
      lsblk
      
  3. 检查磁盘使用情况

    • 确保目标设备的容量足够大,可以容纳源设备的数据。
  4. 环境介绍

    • 本次使用测试环境环境进行测试,系统分区如下,需要备份区域为整个sda磁盘:
      alt text
    • LiveUSB启动系统后系统分区如下:
      alt text
      /dev/sda   # 目标备份盘
      /dev/sdb   # 备份存储盘
      /dev/sdc   # LiveUSB启动盘
      

4. 备份过程

  1. 使用 dd 创建备份

    • 如果目标是另一个磁盘:
      sudo dd if=/dev/sda of=/dev/sdb bs=4M status=progress
      # 速率由500MB/s降至250MB/s趋于稳定 花费时间在6000s左右,具体速率与存储介质有关
      
    • 如果目标是备份文件:
      sudo dd if=/dev/sda of=/mnt/ubuntu_2.0.img bs=4M status=progress
      # 速率由500MB/s降至250MB/s趋于稳定 花费时间在6000s左右,具体速率与存储介质有关
      
  2. 使用压缩减少备份文件大小(可选):

    • 适用于目标设备空间不足的情况,通过压缩备份文件以节省存储空间。
      sudo dd if=/dev/sda bs=4M | gzip > /mnt/backup/system_backup.img.gz
       # 该项未进行测试
      

5. 恢复过程

  1. 从备份文件恢复到磁盘

    • 从备份文件恢复:
      sudo mount /dev/sdb1 /mnt # 挂载备份存储盘
      sudo dd if=/mnt/ubuntu_2.0.img of=/dev/sda bs=4M status=progress
      
      alt text
    • 如果备份文件被压缩:
      gunzip -c /mnt/backup/system_backup.img.gz | sudo dd of=/dev/sda bs=4M status=progress  #未测试
      
  2. 从备份磁盘恢复到原始磁盘

    sudo dd if=/dev/sdb of=/dev/sda bs=4M status=progress
    # 该项未测试,直接将启动盘设置为/dev/sdb 后系统可以正常启动。(遇到不能识别磁盘时,在BIOS中将硬盘做RAID后可以正常识别启动)
    

6. 可行性分析

  • 优点

    • dd 是一种简单而直接的备份方法,能够完整地备份整个系统盘,包括引导扇区、文件系统、分区表等。
    • 适用于需要将系统恢复到与原始硬件完全相同的情况。
  • 缺点

    • 备份时间较长,特别是在磁盘容量较大的情况下。
    • 备份文件大小与磁盘大小相同,除非使用压缩,否则备份文件会非常大。
    • 恢复到不同硬件时可能需要额外的配置调整,如修复GRUB引导加载器、调整网络接口名称等。
  • 适用场景

    • 系统迁移:将整个操作系统迁移到新的磁盘或硬件设备。
    • 系统恢复:在系统崩溃或硬件故障时,快速恢复到备份时的状态。
    • 环境复制:复制相同配置的多个系统环境。

7. 注意事项

  • 备份和恢复过程中,确保不对源设备进行写操作,以防数据不一致。
  • 如果目标设备容量小于源设备,无法使用 dd 进行完整备份。
  • 使用LiveCD/LiveUSB时,建议在挂载目标设备时确保其已被正确识别且无数据损坏。

8. 方案总结

使用 dd 备份Ubuntu系统盘是一种可靠的方法,适用于完整系统的复制和恢复操作。通过压缩和合理的磁盘管理,可以克服备份文件过大的问题,并确保系统能够在需要时恢复到工作状态。

标签:dd,dev,备份文件,系统盘,sda,Ubuntu,磁盘,备份
From: https://www.cnblogs.com/daikaiqiang/p/18356650

相关文章

  • 这就是为什么你学不会DDD
    本文书接上回《为了给Javaer落地DDD,我们不得不写开源组件》,欢迎关注公众号(老肖想当外语大佬),获取最新文章更新和DDD框架源码,视频和直播在B站。https://mp.weixin.qq.com/s/Nsc3hwl4u9je7DaXsC05mg  背景我们在《这是DDD建模最难的部分(其实很简单)》一文中介绍了一个关于......
  • VMware ubuntu虚拟机与主机共享文件夹
    1安装VMware-tools更新最新VMware-tools组件编辑->首选项->更新->立即下载所有组件2安装VMware-tools虚拟机->安装VMware-tools安装后ubuntu会加载一个虚拟光驱,解压文件,在解压的文件目录下执行以下命令进行安装sudovmware-install.pl安装过程中输入“yes”即可。在......
  • 神经网络之卷积篇:详解Padding
    详解Padding为了构建深度神经网络,需要学会使用的一个基本的卷积操作就是padding,让来看看它是如何工作的。如果用一个3×3的过滤器卷积一个6×6的图像,最后会得到一个4×4的输出,也就是一个4×4矩阵。那是因为3×3过滤器在6×6矩阵中,只可能有4×4种可能的位置。这背后的数学解释是......
  • VMware虚拟机下安装Ubuntu22.04以及汉化配置保姆级教程
    一.VMware和Ubuntu下载VMware下载官方链接: VMwareWorkstation16Player下载EnterpriseOpenSourceandLinux|UbuntuUbuntu下载官方链接EnterpriseOpenSourceandLinux|Ubuntu或者直接私信博主,获取Ubuntu镜像包(18,22版本)注意事项:将Ubuntu镜相包放在一个自定义......
  • Ubuntu22 安装和恢复 Hexo,解决nodejs默认版本较低的问题。
    因为Ubuntu自带的nodejs版本和我之前搭建好的hexo环境不符合,从github上面拉取之后不能够直接使用hexo配置,要重新下载和配置nodejs的版本。安装nvm安装步骤sudoaptinstallcurlcurlhttps://raw.githubusercontent.com/creationix/nvm/master/install.sh|bash出现问题......
  • SeaTunnel 2.3.6 在Ubuntu环境的安装
    SeaTunnel2.3.6在Ubuntu环境的安装目录SeaTunnel2.3.6在Ubuntu环境的安装环境变量下载软件下载连接器连接器下载配置下载连接器插件下载连接器加速测试SeaTunnel示例批任务测试Mysql-CDC到Postgresql创建测试表编辑任务配置文件下载数据库驱动启动集群模式启动任务环境说......
  • HashSet底层add方法去重例题 day14
    测试类packagecom.shujia.day14;importjava.util.HashSet;/*使用Set集合存储自定义对象,当对象的姓名和年龄都一样的时候,将这两个对象认为是重复了,进行去重HashSet:底层数据结构是哈希表*/publicclassSetDemo2{publicstaticvoidmain(String[]ar......
  • 遇到安装的Ubuntu系统无法与主机共享剪切板
    Ubuntu遇到的问题遇到安装的Ubuntu系统无法与主机共享剪切板方法一:首先,‌通过运行命令sudoapt-getautoremoveopen-vm-tools卸载旧版本的open-vm-tools,‌然后更新软件源sudoapt-getupdate。‌接着,‌安装open-vm-tools和其桌面组件sudoapt-getinstallopen-vm-tools和sudo......
  • 虚拟机搭建区块链(Ubuntu系统)
    虚拟机搭建区块链搭建区块链网络搭建单群组联盟链第一步安装依赖sudoaptinstall-yopensslcurl第二步.创建操作目录,下载安装脚本##创建操作目录cd~&&mkdir-pfisco&&cdfisco##下载脚本curl-#LOhttps://github.com/FISCO-BCOS/FISCO-BCOS/releases/do......
  • Ubuntu卸载软件
    Ubuntu使用过程中,常常会遇到内存不够用的情况,除了清理数据,也想要卸载一些软件包以尽量释放空间。1.卸载通过apt-get命令安装的软件包apt-get,APT(AdvancedPackagingTool)包处理实用程序,一个命令行接口。用于从经过身份验证的源中检索软件包和相关软件包的信息,以及安装、升级......