blackantt 发表于 2023-7-9 09:51:57

想用 dd 把 /dev/mmcblk0p2 分区上的树莓派系统 热备份到 /dev/mm

本帖最后由 blackantt 于 2023-7-9 10:04 编辑

树莓派linux只有一个SD卡,64G,
想用 dd 把 /dev/mmcblk0p2 分区上的树莓派系统 热备份到 /dev/mmcblk0p5 分区(挂载点是 /media/pi/bak),然后如果系统乱了,再用dd 热恢复到/dev/mmcblk0p2 分区 。 可以吗?
1. 要先 要在分区 umount 状态下执行 dd吗?
2. 命令分别是啥呢?

dolly_yos2 发表于 2023-7-9 10:21:00

可行,甚至不需要专门准备一个分区,在文件系统里分配文件就可以了(把磁盘镜像为一个文件)
建议在 umount 的状态下备份和恢复,避免在过程中分区被其他进程写而导致状态不同步
指令可以很简单,我会选择dd if=<源> of=<目标> conv=noerror,sync status=progress
https://www.gnu.org/software/coreutils/manual/html_node/dd-invocation.html
https://man7.org/linux/man-pages/man1/dd.1.html

blackantt 发表于 2023-7-9 10:37:04

dolly_yos2 发表于 2023-7-9 10:21
可行,甚至不需要专门准备一个分区,在文件系统里分配文件就可以了(把磁盘镜像为一个文件)
建议在 umoun ...

把系统所在的分区 umount 了,系统本身还能运行吗? 过后是否还要再mount回来?

dolly_yos2 发表于 2023-7-9 10:59:08

blackantt 发表于 2023-7-9 10:37
把系统所在的分区 umount 了,系统本身还能运行吗? 过后是否还要再mount回来?

有意思的问题,直接 umount 很可能会出现问题,简单的解决方案是从其他分区启动(比如类似一个 live CD),但也许不适用于您的情况。
另一种方案临时将根分区迁移到 ramfs 上后 umount 原根分区,这里有资料可能会有帮助,但我没尝试过这个方法,且这篇文章的时间较为久远了。
https://www.ivarch.com/blogs/oss/2007/01/resize-a-live-root-fs-a-howto.shtml

blackantt 发表于 2023-7-9 11:15:32

dolly_yos2 发表于 2023-7-9 10:59
有意思的问题,直接 umount 很可能会出现问题,简单的解决方案是从其他分区启动(比如类似一个 live CD) ...

windows 下有傲梅等软件可以热备,或者在重启时热备/恢复 系统分区。 linux下估计也有,我再找找。
谢谢

人造人 发表于 2023-7-9 12:30:22

blackantt 发表于 2023-7-9 11:15
windows 下有傲梅等软件可以热备,或者在重启时热备/恢复 系统分区。 linux下估计也有,我再找找。
谢谢

热备份,就是说不关机,不卸载文件系统,进行备份是吧
这需要文件系统本身支持
例如btrfs文件系统
使用btrfs文件系统创建个快照,然后对这个快照进行备份,备份完了再把这个快照删除,这样可以保证数据的一致性

blackantt 发表于 2023-7-9 13:28:07

人造人 发表于 2023-7-9 12:30
热备份,就是说不关机,不卸载文件系统,进行备份是吧
这需要文件系统本身支持
例如btrfs文件系统


谢谢。 正是我想要的功能。 不知道 btrfs 是不是针对某种盘的, ssd, hd, tf 卡。
让我试试

一点迁移资料
https://cloud.tencent.com/developer/article/1940271
页: [1]
查看完整版本: 想用 dd 把 /dev/mmcblk0p2 分区上的树莓派系统 热备份到 /dev/mm