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

Linux高效备份:tar与gzip完全指南

🌟 为什么要备份?为什么用 targzip

原文:计算机并不完美,Linux 虽然“几乎完美”,但数据仍可能丢失。最好的预防方式就是备份文件。Linux 提供了两个关键程序:targzip

理解

  • 即使系统稳定,硬件故障、误删、病毒等问题仍可能导致数据丢失。
  • 所以定期备份重要文件非常重要。
  • 在 Linux 中,最常用的组合是:
    • tar:把多个文件打包成一个文件(称为“tarball”或“归档包”)。
    • gzip:对打包后的文件进行压缩,减小体积,节省空间。

📦 第一步:使用 tar 打包文件(创建 tarball)

示例场景:

你有一些笔记文件:

notes_1.txt
notes_2.txt
notes_3.txt
...

它们放在目录 /linux_course 下。你想把它们打包成一个文件用于备份。

命令:

tar -cvf linux_notes.tar notes*.txt

拆解这个命令:

部分含义
tar调用 tar 程序
-ccreate:创建一个新的归档文件
-vverbose:显示详细过程(会列出正在处理的文件名)
-ffile:指定输出文件名(后面紧跟文件名)

⚠️ 注意:-f 必须是最后一个选项,后面直接跟文件名。

🎯 结果
生成一个名为 linux_notes.tar 的文件,里面包含了所有匹配 notes*.txt 的文件。

💡 小技巧:

  • 如果你想打包当前目录下所有文件和子目录,可以用:
    tar -cvf bob_backup.tar *
    
    或者更完整地包括隐藏文件(以点开头的):
    tar -cvf bob_backup.tar ./
    

📌 这一步只是“打包”,没有压缩!所以新文件的大小 ≈ 所有原文件之和,甚至略大一点。


📦➡️📦↓ 第二步:使用 gzip 压缩 tar 文件

命令:

gzip linux_notes.tar

结果:

  • 原始文件 linux_notes.tar 被压缩。
  • 新文件变成:linux_notes.tar.gz
  • 原始 .tar 文件会被自动删除(除非加 -k 保留)。

.tar.gz 是最常见的 Linux 备份格式,也叫 “tarball”。

📌 你可以用 gzip 压缩任何单个文件,但它最常用于压缩 .tar 文件。


🔥 一步到位:打包 + 压缩(推荐做法)

tar 支持直接调用 gzip,一步完成打包和压缩!

命令:

tar -czvf bob_backup.tar.gz *

新增选项说明:

选项含义
-z使用 gzip 压缩(自动调用 gzip)

🎯 这条命令等价于:

  1. 先执行 tar -cvf bob_backup.tar *
  2. 再执行 gzip bob_backup.tar

优点:省时省力,避免中间产生大文件。

📌 文件名建议使用 .tar.gz 扩展名,便于识别。


🔓 如何解包(“untar”)?

当你需要恢复备份时,就要把 .tar.gz 文件解开。

推荐命令(一步解压+解包):

tar -xzvf bob_backup.tar.gz

选项解释:

选项含义
-xextract:提取文件(解包)
-z使用 gzip 解压(先解压再解包)
-v显示过程(verbose)
-f指定文件名

🎯 结果:

  • 所有原始文件被还原到当前目录。
  • 原始的 bob_backup.tar.gz 文件保持不变

📌 你也可以分两步操作:

gzip -d bob_backup.tar.gz    # 解压,得到 bob_backup.tar
tar -xvf bob_backup.tar      # 解包

或者用 gunzip(等同于 gzip -d):

gunzip bob_backup.tar.gz
tar -xvf bob_backup.tar

❓ 解包前要考虑的问题

原文提醒:你在解包前要问自己一个问题:
“我之后有没有修改过这些文件?”

✅ 正确做法建议:

情况建议操作
想查看旧版本文件新目录中解包,避免覆盖现有文件
文件已更新,想恢复旧版先确认是否真的需要旧版,否则应重新做一次新备份
不需要旧数据可以直接覆盖

📌 最佳实践:不要在一个工作目录里随意解包旧备份,容易造成混乱或数据丢失。


🔄 其他压缩工具简介

除了 gzip,Linux 还支持其他压缩方式:

1. zip / unzip

  • 格式:.zip
  • 特点:
    • Windows 原生支持,跨平台兼容性好。
    • 适合分享给 Windows 用户。
  • 示例:
    zip -r archive.zip folder/     # 打包并压缩
    unzip archive.zip              # 解压
    

2. bzip2

  • 格式:.tar.bz2.bz2
  • 特点:
    • 压缩率比 gzip 更高(文件更小)。
    • 速度稍慢,但适合长期存储。
    • Linux 内核源码常用此格式。
  • 示例:
    tar -cjvf archive.tar.bz2 *    # 打包+用 bzip2 压缩
    tar -xjvf archive.tar.bz2      # 解包
    

    注意:-j 表示使用 bzip2

📌 小结:

工具扩展名用途
gzip.tar.gz最常用,平衡速度与压缩率
bzip2.tar.bz2更高压缩率,适合大文件
zip.zip跨平台共享,Windows 友好

✅ 总结:核心命令速查表

目的命令
打包不压缩tar -cvf archive.tar files/
打包+gzip压缩tar -czvf archive.tar.gz files/
打包+bzip2压缩tar -cjvf archive.tar.bz2 files/
解压+解包 .tar.gztar -xzvf archive.tar.gz
解压+解包 .tar.bz2tar -xjvf archive.tar.bz2
仅解压 .gz 文件gzip -d file.gzgunzip file.gz
查看 tar 包内容tar -tzvf archive.tar.gz(加 -t 列表)

💡 提示与建议

  1. 养成备份习惯:重要文档、配置文件、项目代码都要定期打包备份。
  2. 命名规范:如 backup_2025-11-03.tar.gz,方便管理。
  3. 存储位置:可保存到 U盘、外部硬盘、云存储、NAS 等。
  4. 测试备份:偶尔解包检查一下,确保能正常恢复。
  5. 自动化:可以用脚本 + cron 实现自动备份。

🧠 最后一句话总结

tar 是“打包箱”,把一堆文件装进一个箱子;
gzip 是“压缩机”,把这个箱子压小一点;
合起来 tar -czvf 就是“打包+压缩”一条龙服务!

📦 + 🔽 = 💾 安全备份!


如果你有具体的使用场景(比如“我想备份我的家目录”或“怎么解压别人发给我的 .tar.gz 文件”),欢迎继续提问,我可以给出具体命令示例。

http://www.dtcms.com/a/564544.html

相关文章:

  • Java中的File类
  • 四、Linux设备驱动介绍
  • 视频生成模型发展历程:从GAN到Sora的技术革命之路
  • SQL之表的查改(下)
  • CV论文速递: 覆盖医学影像分析、视频理解与生成、3D场景理解与定位等方向! (10.27-10.31)
  • Redis(四):缓存击穿及其解决方案(SpringBoot+mybatis-plus)
  • 突破局域网限制,Websocket 服务远程访问cpolar新方案
  • 科普网站建设方案网站容易被百度收录
  • 深圳营销网站建设服务wordpress 语言选择器
  • 广西建设厅关公网站中国能建电子商务平台
  • 9.OpenStack管理(三)
  • 大模型应用02 || 检索增强生成Retrieval-Augmented Generation || RAG概念、应用以及现有挑战
  • 【春秋云镜】CVE-2018-19518
  • [手机AI开发sdk] 安卓上的Linux环境
  • Pandas-之时间序列处理
  • 用 Spark Shell 做交互式数据分析从入门到自包含应用
  • WindowsXP Window7等老系统和Linux Ubuntu等系统在VM虚拟机中安装VM Toools工具实现宿主机虚拟机共用粘贴板
  • 第十二章:终极叩问:我是谁,我往何方?(3)
  • 校园网站建设的缺陷怎么做考试资料网站
  • 【Android Studio】webview 组件在android TV中进行加载,始终是客户端网页的方式进行加载,解决?
  • 应对不规则负载的异步ML模型服务AWS架构设计
  • Docker、Kubernetes与AWS中控机是什么?
  • AWS Bedrock + DeepSeek-R1:开启企业级 AI 开发的新篇章
  • C++ 类似pytorch的库,工具包,或者机器学习的生态
  • 关于手表的网站精品课程网站的建设
  • 正点原子【第四期】Linux之驱动开发学习笔记-10.1 Linux 内核定时器实验
  • Go语言设计模式:命令模式详解
  • Dropout提升模型泛化能力【动手学深度学习:PyTorch版 4.6 暂退法】
  • 网站开发用什么软件有哪些安徽安庆
  • 能够沟通业务的网站彩票网站开发 违法