备份NAS系统,dd命令备份磁盘为镜像
dd命令:
Linux系统中的一个强大工具,主要用于在Unix和类Unix系统上转换和复制文件。它可以从标准输入或文件中读取数据,根据指定的格式转换数据,然后输出到文件、设备或标准输出。dd命令的参数包括输入文件(if)、输出文件(of)、块大小(bs)等,这些参数允许用户精确控制数据的读取、转换和写入过程。
dd命令的应用场景非常广泛,包括但不限于:
● 数据备份和恢复:可以使用dd命令备份硬盘数据到另一个硬盘,或者从备份中恢复数据。
● 磁盘擦除和数据恢复:dd命令可以用于擦除磁盘上的数据,或者在数据丢失后尝试恢复数据。
● 性能基准测试:通过dd命令可以测试磁盘的读写速度,评估系统的I/O性能。
数据转换:dd命令可以在复制过程中处理数据,例如转换字节序或在ASCII与EBCDIC编码间互换。
● 创建特定大小的文件:可以使用dd命令创建一个指定大小且填充了特定数据的文件,如空文件或包含随机数据的文件。
● 文本大小写转换:dd命令还可以用于将文本文件中的小写字母转换为大写字母,或反之。
使用dd命令时,需要注意其强大的功能也伴随着潜在的风险。不正确的使用可能导致数据丢失或系统损坏。因此,在使用dd命令之前,建议详细阅读其手册页(man dd)以了解所有可用选项和参数的含义及用法,并在必要时进行充分的测试。
主要流程目录:
1.下载Ubuntu
2.搭建运行环境
3.挂载备份路径
4.备份磁盘为镜像
1.下载Ubuntu
这里用Ubuntu作为演示,如果官方下载镜像比较慢,可以用清华大学开源软件镜像站速度会快一些。
清华大学开源软件镜像站:
https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases
图片可以点击时间进行排序,这里我下载最新的版本
图片这里我下载的是桌面版
图片2.搭建运行环境
如果是物理机运行要将镜像写入U盘,这里我是用虚拟机来运行的,简单说一下怎么跑起来。
将镜像放到“isos”目录
图片创建虚拟机,参考设置
图片直通需要备份的硬盘
图片VNC打开,选择第一项(自动默认)
图片不用安装,直接关闭这个弹窗
图片快捷键Ctrl+Alt+T,打开一个终端窗口
图片获取root权限,输入下面命令:
3.挂载备份路径
这里演示用SMB进行挂载,生成的镜像会保存到这里。
安装 cifs-utils 软件包,以便支持在Linux系统上挂载SMB共享
创建一个名称为"backup"的文件夹
挂载SMB到backup
mount -t cifs //IP地址/共享文件夹名称 /mnt/backup -o username=SMB账号名,password=SMB密码,uid=your_user_id,gid=your_group_id
图片
查看挂载后的目录列表(可以看到有原来东西就说明没问题了)
4.备份磁盘为镜像
使用dd命令将磁盘备份为一个img镜像文件
列出块设备(包括磁盘)的信息,输入下面命令:
sda是直通需要备份的硬盘
图片将sda磁盘的内容,备份到backup目录的emmc.img文件中
dd if=/dev/sda of=/mnt/backup/emmc.img bs=4M status=progress
图片
查看挂载后的目录列表,可以看到生成的emmc.img
Tip:
可以通过计算md5校验值确保文件完整性,过程要比较久
计算要备份的磁盘的md5
计算镜像的md5
作者声明本文无利益相关,欢迎值友理性交流,和谐讨论~








