linux

Linux文件系统如何备份与恢复

小樊
43
2025-09-06 09:48:18
栏目: 智能运维

备份方法

  1. 工具备份
    • tar命令:打包压缩文件/目录,支持增量备份(结合find命令筛选新文件)。
      # 备份目录  
      tar -czvf backup.tar.gz /path/to/dir  
      # 恢复  
      tar -xzvf backup.tar.gz -C /restore/path  
      
    • rsync命令:同步文件,支持增量备份(通过--link-dest保留硬链接)。
      # 本地备份  
      rsync -avz /source/ /backup/  
      # 远程备份  
      rsync -avz /source/ user@remote:/backup/  
      
    • dd命令:备份整个磁盘或分区(低级操作,需谨慎)。
      # 备份分区  
      dd if=/dev/sda1 of=/path/backup.img bs=4M  
      # 恢复  
      dd if=/path/backup.img of=/dev/sda1 bs=4M  
      
  2. 文件系统工具
    • dump/restore:针对文件系统的备份与恢复(支持完全/增量备份)。
      # 完全备份  
      dump -0uf /backup/dumpfile /  
      # 恢复  
      restore -rf /backup/dumpfile  
      
    • LVM快照:基于逻辑卷管理创建快照,快速恢复数据。
      # 创建快照  
      lvcreate -s -n snap -L 10G /dev/vg0/lv0  
      # 恢复(需挂载快照)  
      mount /dev/vg0/snap /mnt/snapshot  
      

恢复方法

  1. 误删文件恢复
    • extundelete(ext3/ext4文件系统):
      sudo extundelete /dev/sda1 --restore-file /path/to/file  
      
    • photorec:通过文件签名恢复多种格式文件(如照片、文档)。
      sudo photorec /dev/sda1  
      
  2. 系统级恢复
    • TestDisk:修复分区表、引导扇区或恢复误删分区。
      sudo testdisk  
      # 选择分区→Analyze→Recover  
      
    • ddrescue:从损坏磁盘恢复数据(需配合日志文件)。
      sudo ddrescue /dev/sda /backup/image.img /backup/logfile.log  
      

注意事项

0
看了该问题的人还看了