Linux中的restore
在Linux系统中,"restore"通常指数据恢复或系统还原操作。以下是主要场景和方法:
1. 文件系统恢复(ext2/ext3/ext4)
使用restore
命令处理dump
备份:
# 交互式恢复(浏览备份内容)
restore -i -f /backup/file.dump# 全量恢复至当前目录
restore -r -f /backup/file.dump
参数说明:
-i
:交互模式-r
:恢复整个文件系统-f
:指定备份文件
2. 误删文件恢复
使用extundelete
工具:
# 安装工具
sudo apt install extundelete# 恢复指定文件
extundelete /dev/sda1 --restore-file /path/to/file# 恢复整个目录
extundelete /dev/sda1 --restore-directory /home/user
3. 系统快照恢复
LVM逻辑卷管理:
# 列出快照
lvdisplay# 恢复快照
lvconvert --merge /dev/vg0/snap-volume
Btrfs文件系统:
# 列出快照
btrfs subvolume list /# 恢复快照
btrfs subvolume snapshot /snapshots/@backup /mnt/restored
4. 软件包恢复
APT包管理:
# 恢复错误配置
sudo dpkg --configure -a# 恢复损坏包
sudo apt install --reinstall package_name
RPM包管理:
sudo rpm --restore package.rpm
5. 数据库恢复
MySQL/MariaDB:
mysql -u user -p dbname < backup.sql
PostgreSQL:
pg_restore -d dbname backup.dump
注意事项
- 立即停止写入:数据丢失后,立即卸载分区或设为只读
sudo mount -o remount,ro /dev/sda1
- 备份验证:恢复前用
-t
参数测试备份完整性restore -t -f backup.dump
- 权限问题:恢复后检查文件权限
sudo chown -R user:group /restored/path
⚠️ 关键建议:定期验证备份可用性,重要数据采用3-2-1原则(3份副本、2种介质、1份异地)。