你好啊,陌生人!

我的朋友,看起来你是新来的,如果想参与到讨论中,点击下面的按钮!


📈用户数目📈

目前论坛共有2973位seeker

🎉欢迎新用户🎉

NodeSeek
New on NodeSeek? Please read our Community Rules.

一种通过dd便捷地全盘备份kvm机器的方法

-X--X- 楼主 #0
edited 14days ago in 技术

晚上打算在机器A上装些软件,但又担心装完后没成功把之前的软件环境弄乱,因此在一些不怎么用的机器上折腾了下备份还原,总结成本帖。

为了在机器A上备份,需要另一台机器B,不一定要服务器,可以是你本地机器。如果是本地windows机器,建议在git bash上运行命令,git bash可以在这里下载。

首先,为了避免出现数据不一致的问题,备份和还原都要在A机器处于救援模式下,也就是需要先把A机器重启到救援模式,一般商家都提供这个基础功能的。这点麻烦相比重装很多软件来说要小得多,如果你觉得这一步太麻烦,那么可以退出本帖了 ac01 因为我测试开机状态下热备份会随机出现还原时无法开机的情况,如果你有好的解决思路可以留言讨论 ac32

机器A处于救援模式下,判断硬盘

首先,使用 fdisk -l 查看挂载的硬盘,比如 /dev/sda /dev/vda /dev/hdb 等,一般都是最大的那一个,根据容量很容易判断。这里假设是sda,注意不是sda1之类的,带数字的是分区

备份

A机器进救援模式,判断硬盘,在B机器执行命令

# server_ip  替换成机器A的ip
ssh -p 22 [email protected]_ip "dd if=/dev/sda bs=32M status=progress | gzip -1 - " > backup.gz

还原

A机器进救援模式,判断硬盘,在B机器执行命令

# server_ip  替换成机器A的ip
dd if=./backup.gz  bs=32M status=progress | ssh -p 22 [email protected]_ip "gzip -d | dd of=/dev/sda ; reboot"

注意,还原的进度条跑完可能会在最后99%卡一会,很正常这是因为很多0x00字节需要填充到硬盘

dd有风险,在实际进行还原操作前一定要确认命令没问题

Comments

  • 学习了

  • 好帖帮顶

  • 谢谢分享

  • 如何在b机器还原呢?

  • 好文帮顶

  • @captainZ #4 发布于2023/3/17 23:40:33
    如何在b机器还原呢?

    A -> C -> B

  • -X--X- 楼主 #7

    @captainZ #4
    提问的很好,我发现自己写的不够清楚,修改了

    备份和还原命令都是在B机器执行的,B机器可以是本地机器,不需要公网ip

    备份是备份到B机器的,还原是从B机器推到A机器

  • 靓女靓女 交易中介 #8

    好贴 xhj003

  • edited 14days ago
    | gzip -1 - " > backup.gz
    

    这是d到内存保存为文件么?这只有独服大内存或双盘能行,vps撑不下

    nc就不用保存文件

  • 甲骨文怎么进救援模式?
    重启的时候,在VNC中按esc,进入的界面是救援模式吗?

登录 或者 注册 后评论.