如何恢复/home目录的备份?
美国、香港服务器
如何恢复/home目录的备份?
05-29 来源:
一、先校验备份包(恢复前必做)
确认压缩包完好、无损坏:
bash
运行
# 查看包内文件列表,仅查看不解压
tar -ztvf /data/backup/home_backup_20260529.tar.gz
能正常列出 /home 下所有文件,说明备份正常;报错则备份损坏,不要恢复。
二、方式 1:测试恢复(推荐先执行,不破坏原数据)
把数据解压到临时目录,核对文件、大小、权限是否正常。
bash
运行
# 1. 创建临时目录
mkdir -p /tmp/restore_home
# 2. 解压到临时目录
tar -xzvf /data/backup/home_backup_20260529.tar.gz -C /tmp/restore_home
# 3. 核对数据
ls /tmp/restore_home/home/
du -sh /tmp/restore_home/home/
核对无误后,再执行正式恢复。
三、方式 2:正式恢复(覆盖原 /home,分两种场景)
场景 A:单纯误删文件,/home 仍正常挂载
适合小范围恢复,无需卸载分区:
bash
运行
# 直接解压还原到系统根目录,覆盖 /home
tar -xzvf /data/backup/home_backup_20260529.tar.gz -C /
场景 B:你拆分 LVM、重建分区后(重点适配你的硬盘操作)
重建完分区、格式化、挂载新 /home 后使用,步骤如下:
确保 /home 已正常挂载
bash
运行
df -h /home
清空新分区无用内容(可选)
bash
运行
rm -rf /home/*
执行恢复
bash
运行
tar -xzvf /data/backup/home_backup_20260529.tar.gz -C /
四、如果是 .tar.xz 格式备份(高压缩包)
把参数 -z 换成 -J 即可:
bash
运行
# 校验
tar -Jtvf /data/backup/home_backup_20260529.tar.xz
# 测试恢复
tar -Jxvf /data/backup/home_backup_20260529.tar.xz -C /tmp/restore_home
# 正式恢复
tar -Jxvf /data/backup/home_backup_20260529.tar.xz -C /
五、关键补充操作 & 排错
1. 恢复后修复权限(异常时执行)
若出现文件无法访问、权限错乱:
bash
运行
# 递归恢复属主属组(根据你的业务用户调整,示例为普通用户)
chown -R 用户名:用户组 /home/
2. 恢复后验证
bash
运行
# 查看目录大小
du -sh /home
# 进入目录检查文件
cd /home && ls
3. 报错:设备忙 device is busy
原因:有进程占用 /home(用户登录、程序读写)
解决:
bash
运行
# 查看占用进程
fuser -m /home
# 临时切换根目录,卸载(重建分区场景用)
cd /
umount /home
# 结束占用进程后重新挂载、恢复
三二互联专业提供香港VPS,美国VPS主机,香港云服务器租用等业务香港美国到大陆CN2 GIA速度最快