当前位置: 首页 > news >正文

《CentOS.5系统管理》14章--备份与恢复---Linux常用目录及备份

/etc 所有系统配置
/home 所有用户数据
/root 管理员配置
/var 网站、日志、数据库
/usr/local 手动安装软件
/opt 第三方程序

tar 命令恢复文件 完整解析

tar 是 Linux/Unix 下归档 / 压缩 + 恢复的核心命令,恢复文件就是把 .tar/.tar.gz/.tar.bz2 等备份包,解压还原到指定目录。
tar [选项] 备份文件.tar.gz

最常用恢复选项(必记)

 
表格
 
选项作用
-x extract:提取 / 恢复文件(核心)
-v verbose:显示恢复过程(可选)
-f file:指定备份文件(必须放最后)
-C 指定恢复到哪个目录(默认当前目录)
-z 处理 .tar.gz 格式
-j 处理 .tar.bz2 格式
-t 只查看包里有什么文件,不恢复(安全)

 

四、命令组合记忆口诀

tar -zxvf 包名 -C 目标目录
  • z = gz 格式
  • x = 恢复
  • v = 看过程
  • f = 指定文件
  • C = 恢复到哪里

 

五、常见错误与解决

  1. -f 必须放最后
    错误:tar -zfxv
    正确:tar -zxvf
  1. 恢复时提示覆盖文件
    -w 会提示是否覆盖
     
  2. 权限不足
    sudo 提权:
    bash
    运行
    sudo tar -zxvf backup.tar.gz

总结

  • 恢复文件固定用 -x
  • gz 格式加 -z,bz2 加 -j
  • 指定目录用 -C
  • -t 查看再恢复,更安全

 

 

image

 这里的 -C / 其实是指定了根目录 / 作为恢复的目标位置,不是 “没写”,而是写了一个特殊的目录 /

一、-C / 是什么意思?

-C 选项的作用是切换到指定目录后,再执行解压操作。
  • -C / 表示:先切换到 根目录 /,然后把包里面的文件按原来的路径结构解压进去。
  • 比如包里有个文件是 etc/passwd,加上 -C / 后,就会解压成 /etc/passwd,正好覆盖系统原来的路径,这正是 “全盘恢复” 需要的效果。

二、逐条解析图中的命令

1. 从磁盘文件恢复全部文件

bash
运行
tar -zxvpf /backups/full-backup_2008-01-29.tar.gz -C /
  • -z:处理 .tar.gz 压缩包(gzip 格式)
  • -x:提取 / 恢复文件
  • -v:显示恢复过程
  • -p:保留文件的权限、属主、时间戳(全盘恢复必须用,否则系统权限会乱)
  • -f:指定备份文件路径 /backups/full-backup_2008-01-29.tar.gz
  • -C /:解压到系统根目录 /,实现 “全盘覆盖恢复”

2. 从磁带中恢复全部文件

bash
运行
tar -xvpf /dev/st0 -C /
  • 磁带设备 /dev/st0 本身通常是未压缩的,所以不需要 -z
  • 其他参数含义和上面一样,同样是恢复到根目录 /

三、补充说明:如果不写 -C / 会怎样?

如果去掉 -C /,直接执行:
bash
运行
tar -zxvpf /backups/full-backup_2008-01-29.tar.gz
  • 默认会解压到当前工作目录,而不是根目录。
  • 比如你当前在 /root 目录执行,就会在 /root 下生成 etc/home/ 等目录,变成 /root/etc/passwd,而不是 /etc/passwd,这就达不到全盘恢复的目的了。

四、一个小坑提醒

-C 后面必须跟一个合法的目录路径,这里的 / 是完全合法的,代表根目录。
  • 如果你想恢复到其他目录,比如 /tmp/restore,就写:
    bash
    运行
    tar -zxvpf /backups/full-backup_2008-01-29.tar.gz -C /tmp/restore
    这样文件就会解压到 /tmp/restore/etc//tmp/restore/home/ 等路径下。

 

image

一、从磁盘文件恢复指定文件
bash运行

tar -zxvpf /backups/full-backup_2008-01-29.tar.gz -C / \
etc/passwd etc/shadow

🔍 参数拆解
表格
参数 作用
-z 表示备份包是 .tar.gz 格式(gzip 压缩)
-x 核心动作:提取 / 恢复文件
-v verbose:显示恢复过程(可选,方便看进度)
-p preserve:保留文件的权限、属主、时间戳(恢复系统关键文件时必须)
-f 指定备份文件路径:/backups/full-backup_2008-01-29.tar.gz
-C / 切换到根目录 /,再解压文件(文件会按原路径还原到 /etc/ 下)
\ 换行符,表示命令还没写完,下一行继续
etc/passwd etc/shadow 指定只恢复这两个文件(路径必须和备份包内的路径完全一致)
✅ 效果
只会从备份包里提取 etc/passwd 和 etc/shadow 这两个文件
加上 -C / 后,它们会被恢复成 /etc/passwd 和 /etc/shadow,正好覆盖系统原文件
其他文件都不会被触碰,适合修复单个损坏的关键文件
二、从磁带中恢复指定文件
bash
运行
tar -xvpf /dev/st0 -C / etc/passwd etc/shadow
🔍 参数拆解
/dev/st0:Linux 下的标准磁带设备,通常是未压缩的,所以不需要 -z
其他参数和上一条完全一致:
-xvpf:提取、显示过程、保留权限、指定设备
-C /:恢复到根目录
etc/passwd etc/shadow:指定要恢复的文件
💡 关键知识点补充
文件路径必须和包内一致必须用 tar -tvf 备份包 先查看包内的文件路径,比如包内是 etc/passwd,就不能写成 /etc/passwd,否则会找不到文件。
为什么要加 -C /?如果不写 -C /,文件会被恢复到当前目录下,比如你在 /root 目录执行,就会生成 /root/etc/passwd,而不是系统真正的 /etc/passwd,达不到修复的目的。
passwd 和 shadow 是什么文件?
/etc/passwd:存储系统用户信息
/etc/shadow:存储用户密码哈希,是系统的关键文件,一旦损坏会导致用户无法登录,所以恢复时必须保留权限(-p)。
⚠️ 实操注意事项
恢复前一定要先备份原文件:
bash
运行
cp -a /etc/passwd /etc/passwd.bak
cp -a /etc/shadow /etc/shadow.bak
恢复完成后,检查文件权限是否正确:
bash运行
ls -l /etc/passwd /etc/shadow
正常情况下:
/etc/passwd 权限是 -rw-r--r--
/etc/shadow 权限是 -rw-------

http://www.jsqmd.com/news/721346/

相关文章:

  • dateparse CLI工具实战:命令行快速测试日期格式
  • 手把手教你用DSPF28335的ePWM模块驱动无刷电机(附完整代码)
  • PCIe Gen3物理层避坑指南:如何正确处理同步头、有序集和数据流
  • 极值寻找控制(ESC)的新的最大功率点跟踪(MPPT)方法,并测试了该算法在找到光伏板的峰值功率点方面的能力(Simulink仿真实现)
  • AI降本工具哪个好?率零3.2元承诺型最低单价加1000字免费试入门! - 我要发一区
  • 高效论文降重方案:TOP10平台功能对比与选择建议!
  • STM32的USB CDC和硬件串口Serial,我该用哪个?Arduino代码移植避坑指南
  • Awesome Free Software与开源软件的区别:为什么自由软件更重要
  • 3分钟搞定Axure汉化:中文语言包完整安装指南
  • ARM调试寄存器DLR与DSPSR深度解析
  • Harness 平台实战: 用 DeerFlow 构建 一个企业自己的 Manus 平台( 企业长任务智能体平台)
  • 字节校招 C++ 考试题到底怎么考?别把它准备成“腾讯平替版”
  • 视频结构化技术:多模态融合与智能章节生成
  • PHP Swoole集成大模型服务的长连接架构设计(2024生产环境已验证的5层容错模型)
  • Beer CSS 性能优化技巧:让你的网站加载速度提升 300%
  • PyTorch训练中遇到Double和Float类型不匹配?别慌,这3种方法帮你快速定位和修复
  • 突破视野限制:Graphite全景拼接技术解析与实战指南
  • 【最新指南】2026年OpenClaw/Hermes Agent腾讯云简易集成步骤
  • 基于SpringBoot的人事管理系统源码
  • 云测试平台的下一站:智能化与场景化的融合演进
  • 前端开发避坑指南:用Node.js代理轻松解决本地联调跨域问题(附http-proxy-middleware配置)
  • Educational Codeforces Round 189 题解
  • 如何在Mac上快速搭建Android手机USB网络共享:3种高效方法全解析
  • 2026年怎么集成OpenClaw/Hermes?腾讯云搭建及token Plan配置全流程
  • UltraISO:Windows 10/11 安装与使用全流程指南【详细图文教程】
  • dateparse在企业项目中的应用:日志解析、数据导入等实战案例
  • 告别环境变量配置烦恼:在openKylin 2.0上,用apt命令一键安装Java 11(附版本切换指南)
  • 抖音无水印下载器:3分钟掌握免费批量下载神器
  • SSO 单点登录超深度架构
  • 终极Android应用清理指南:Universal Android Debloater让你的手机飞起来![特殊字符]