温馨提示×

CentOS dropped后如何备份数据

小樊
41
2026-01-08 03:26:43
栏目: 智能运维

CentOS 无法启动时的数据备份指南

一、先判断可用路径

  • 若能进系统或单用户:优先在原系统内用常规工具备份,速度最快、风险最低。
  • 若系统无法进入:用安装介质进入救援模式挂载原系统分区后备份;若仅个别文件被误删,先做只读取证再恢复,避免二次破坏。

二、在原系统内快速备份(系统还能进或能进单用户)

  • 文件级全量/增量
    • 全量打包(示例):tar -cvpzf /backup/full_$(date +%F).tar.gz --exclude=/backup /。可按需排除 /proc、/sys、/mnt、/media 等虚拟或临时挂载点。
    • 增量同步(示例):rsync -avz --delete /data/ user@backup:/backup/data/。适合日常持续备份与快速回滚。
  • 数据库
    • MariaDB/MySQL:mysqldump -u root -p --single-transaction --databases your_db > /backup/db_$(date +%F).sql
    • PostgreSQL:pg_dump -U postgres -F c -f /backup/pg_$(date +%F).dump your_db
  • 块级镜像(仅在确认无写入且空间充足时)
    • dd if=/dev/sda of=/backup/disk.img bs=4M status=progress(目标盘或文件需足够大;操作前务必核对 if/of,避免覆写)。

三、无法进入系统时的救援模式备份(安装ISO进入)

  • 启动到救援环境
    • 用 CentOS 安装 ISO 启动 → 选择 TroubleshootingRescue a CentOS system;进入后一般会挂载原系统到 /mnt/sysimage,必要时执行 chroot /mnt/sysimage 进入原系统环境。
  • 识别磁盘与挂载分区
    • lsblk、blkid 查看磁盘与文件系统;LVM 场景先激活卷组:vgchange -ay;按需挂载原分区到临时目录(如 /oldroot、/oldopt)。
  • 配置网络与远程拷贝
    • 临时配 IP:ip addr add 192.168.1.100/24 dev eth0;ip route add default via 192.168.1.1
    • 允许 root 登录并拷贝:sed -i ‘s/^#PermitRootLogin./PermitRootLogin yes/’ /etc/ssh/sshd_config && systemctl restart sshd
    • 远程备份:scp -r /oldopt/data user@backup:/backup/
  • U 盘/移动硬盘拷贝
    • 识别设备:lsblk;挂载示例:mount /dev/sdb1 /upan(FAT32 用 -t vfat;NTFS 需安装 ntfs-3g 后 mount -t ntfs-3g /dev/sdb1 /upan)
  • 仅配置/少量目录时的轻量拷贝
    • 在救援或 chroot 环境中:cp -a /etc /var /mnt/backup/(按需精简)。

四、仅误删文件的恢复思路

  • 立即停止写入,优先做只读镜像(如 dd 到镜像文件),再在镜像上尝试恢复,避免在原盘继续分配新块。
  • 文件系统为 ext* 时可用 extundelete;分区/分区表丢失用 TestDisk 做分区与引导结构恢复。
  • 恢复前准备充足空间,按文件类型与时间点分批验证,重要业务数据建议并行做多方案交叉验证。

五、备份完成后的善后

  • 校验与留存:对比校验和(如 sha256sum)、抽样打开关键文件/数据库导入验证;按“3-2-1”策略(3 份副本、2 种介质、1 份异地/离线)保存,定期恢复演练。
  • 云上场景:若有云快照/备份,先快照或整机备份后再做变更;重装或快照回滚会清除现有数据,务必先完成备份与导出。

0