Linux Dopra:如何进行备份与恢复
小樊
40
2025-12-18 08:22:17
Linux 环境下 Dopra 的备份与恢复
名称澄清与适用范围
“Dopra”并非标准的 Linux 发行版或通用软件名称 ,更常见的是某个应用/项目/内部代号 ,或与其他词(如“Dropper”“Dopamine”)混淆。若你指的是某个具体产品或组件,请补充完整名称、版本、安装路径 以便给出针对性方案。以下先给出在 Linux 上通用的备份与恢复 做法,适用于绝大多数发行版与场景。
通用备份策略与工具
备份类型
全量备份 :每次覆盖全部选定数据,恢复简单,适合关键数据或变化不频繁的场景。
增量备份 :仅备份自上次备份后变更的数据,节省空间与时间,适合高频备份。
差异备份 :基于最近一次全量,备份与全量之间的差异,恢复时比增量少一步。
常用工具与场景
tar :目录/文件系统打包与压缩,便于归档与迁移。
rsync :目录同步与增量复制,适合持续增量与远程备份。
mysqldump/pg_dump :关系型数据库逻辑备份与恢复。
dump/restore :面向 ext2/3/4 的分区级 备份与恢复,支持0–9 级增量 (注意:对“目录”不支持增量)。
存储与保留
建议采用本地+异地/云端 的双地策略,并按业务重要性设定保留周期(如 7/30/90 天)与 定期校验 。
备份与恢复操作示例
全量打包备份与恢复(tar)
备份:tar -czvf backup_$(date +%F).tar.gz /path/to/source
恢复:tar -xzvf backup_YYYY-MM-DD.tar.gz -C /path/to/restore
目录同步与增量(rsync)
本地/远程增量:rsync -avz --delete /src/ /dst/
远程到本地:rsync -avz user@remote:/src/ /dst/
数据库备份与恢复
MySQL:mysqldump -u user -p db > db.sql;恢复:mysql -u user -p db < db.sql
PostgreSQL:pg_dump -U user -d db -f db.sql;恢复:psql -U user -d db -f db.sql
分区级备份与恢复(dump/restore,ext2/3/4)
0 级全量:dump -0uj -f /opt/boot.bak0.bz2 /boot
1 级增量:dump -1uj -f /opt/boot.bak1.bz2 /boot
查看/校验:restore -t -f /opt/boot.bak0.bz2;对比:restore -C -f /opt/boot.bak1.bz2
恢复顺序:先 0 级后 1 级(restore -r -f …),当前目录为挂载点根。
误删文件与系统无法启动的恢复
误删文件的应急
若文件仍被进程占用:用 lsof | grep deleted 找到进程,从 /proc//fd/ 复制回原路径或新位置。
已停止写入:立即卸载分区或停止相关服务 ,必要时先对分区做只读镜像(如 dd),再用 extundelete 恢复:
查看:extundelete /dev/sdX --inode 2
全量恢复:extundelete /dev/sdX --restore-all
指定目录:extundelete /dev/sdX --restore-directory
系统无法启动
使用安装介质进入救援/单用户模式 ,修复 GRUB (重装引导、编辑启动项),必要时检查并修复文件系统(如 fsck/e2fsck ),再重启验证。
自动化与验证建议
定时任务(cron)
例:每日 01:00 打包备份 /data
0 1 * * * tar -czf /backup/data_$(date +%F).tar.gz /data
备份校验与演练
定期执行恢复演练/抽样校验 (如校验文件列表、抽样解压、数据库导入测试),确保可用。
对关键备份做异地/云端 副本与保留策略 管理,避免单点故障。