我已经安装了 Google Drive,想为我的树莓派制作一个实时备份映像。这个命令能用吗?
sudo dd status=progress if=/dev/mmcblk0 bs=10M conv=sync,noerror | gzip -9 - | dd of=~/mnt/gdrive/RPI/"home server"/backups/$(date +%Y%m%d).gz
我不确定这是否是复制到已安装驱动器的问题,我不知道它是否会因为已安装而开始递归备份?
答案1
是的,它可以工作,挂载的存储不会有问题,但在备份期间更改的文件将被损坏,为了进行测试,我使用了装有 Centos 7 的测试虚拟机的启动分区
在第二个会话中对文件进行更改的简单脚本是:
while :;
do
let i++
echo "test$i" >> /boot/testfile
sleep 0.5s
done
您可以运行更改脚本,然后运行命令
root@testkvm ~ $ dd status=progress if=/dev/sda1 bs=10M conv=sync,noerror | gzip -9 - | dd of=/tmp/testfile.gz
545259520 bytes (545 MB) copied, 27.401949 s, 19.9 MB/s
51+1 records in
52+0 records out
545259520 bytes (545 MB) copied, 27.4028 s, 19.9 MB/s
206820+1 records in
206820+1 records out
105892004 bytes (106 MB) copied, 27.4112 s, 3.9 MB/s
root@testkvm /tmp $ gunzip /tmp/testfile.gz
root@testkvm /tmp $ mount /tmp/testfile /mnt
root@testkvm /tmp $ cat /mnt/testfile
▒+▒.▒▒▒▒dI▒(i▒-▒)mCa▒▒J!▒إ'[▒▒▒f▒▒;▒)i▒ٳ:g▒▒▒澿▒▒▒▒O▒▒z▒=o▒)�]▒}koy{▒g▒▒s>l▒▒▒▒?U▒lޛ▒▒kλl▒'ۯ▒▒,▒▒▒5▒▒▒o[{▒sw▒▒j▒▒▒)▒▒▒▒▒▒▒▒M|u▒▒▒>׳;▒▒Ҏ▒=▒+?▒▒?N▒▒▒[+▒ol▒▒o▒▒▒ܜ▒?T\▒w▒▒▒▒[▒R▒X▒▒▒n▒▒[▒^▒^▒\▒▒Go▒▒▒▒▒▒ꀻ{ٲ﮺▒▒C7▒\▒▒▒▒O2▒w▒mNE▒4▒▒w▒▒▒▒V▒▒
▒EV>▒▒8▒▒▒▒w▒
▒V▒▒▒▒▒k:▒NO▒▒▒▒V▒pp▒Y▒mg▒μ0▒▒▒▒▒▒L▒▒▒▒▒▒▒▒p▒'▒.▒tÁ▒e▒▒{>▒▒▒▒▒▒▒▒c▒▒{▒{6>:'▒▒▒▒▒{▒▒▒/▒▒>▒▒S▒▒[_▒▒▒▒Zǯ▒W՟:ޝtƿ▒84}▒+▒▒▒▒y▒u▒;▒㍉▒
如你所见,数据不正确
备份完成时的源文件如下所示:
root@testkvm ~ $ cat /boot/testfile
test1
test2
test3
...
test72
因此,只有当您确定备份期间不会发生任何更改时,才可以使用此命令进行备份