Linux红帽:RHCSA认证知识讲解(十)使用 tar创建归档和压缩文件

发布于:2025-04-04 ⋅ 阅读:(28) ⋅ 点赞:(0)


前言

  • 在红帽 Linux 系统中, tar 是一个非常强大的工具,用于创建归档文件和进行压缩操作
  • 无论是备份重要数据,还是在系统之间传输文件,掌握 tar 的使用方法都是非常有用的。
  • 本文将从基础概念开始,逐步介绍如何使用 tar 创建归档文件,并结合不同的压缩格式(如 gzip、bzip2 和 xz)进行压缩操作

我的个人主页,欢迎来阅读我的其他文章
https://blog.csdn.net/2402_83322742?spm=1011.2415.3001.5343
我的RHCSA认证知识文章专栏
欢迎来阅读指出不足
https://blog.csdn.net/2402_83322742/category_12901802.html?spm=1001.2014.3001.5482

一、归档与压缩的基本概念

1.1 归档与压缩的区别

在正式开始学习之前,我们有必要先清晰地了解一下归档和压缩之间的区别:

  • 归档归档操作的本质是将多个文件或目录整合合并成一个单独的文件

  • 归档文件常用于数据备份场景,或者是为了让文件的传输过程更加便捷。需要注意的是,归档文件本身并不会使文件的大小减小,它仅仅是将多个分散的文件集中在一起

  • 压缩:压缩则是借助特定的算法,对文件所占用的磁盘空间进行有效减少。

  • 通过压缩,文件的大小能够显著减小,这样不仅可以节省大量的存储空间,还能在文件传输时加快传输速度。

在红帽 Linux 系统中,tar命令不仅可以独立完成归档任务,还能与各种压缩工具配合使用,实现归档与压缩的双重功能,为用户提供更加高效的文件管理方式。

二、使用tar创建归档文件

2.1 tar命令格式

tar命令的基本格式如下所示:

tar + 选项 + 参数

其中,常用的选项有:

  • -c:用于创建一个新的归档文件。
  • -f:指定所创建的归档文件的具体名称。
  • -x:执行解压归档文件的操作。
  • -P:保留文件的原始路径信息,以便在解压时能还原到原来的位置。
  • -C:指定解压归档文件时的目标目录。

2.2 示例操作

  • 创建归档文件
    假设我们希望将/etc目录下的所有文件进行归档,保存为一个单独的文件。此时,可以使用以下命令:
tar -cf /root/beifen.tar /etc

这条命令具体的含义为:
- -c:创建归档文件。
- -f:明确指定归档文件的名称为/root/beifen.tar
- /etc:指定了要进行归档的目标目录。
执行该命令后,/etc目录下的所有文件以及子目录都会被成功归档到/root/beifen.tar文件中。

  • 解压归档文件
    当我们需要对已经创建好的归档文件进行解压时,可以使用以下命令:
tar -xf /root/beifen.tar

在默认情况下,归档文件会在当前所在的目录下进行解压。如果我们想要将文件解压到指定的目录中,可以使用-C选项,命令如下:

tar -xf /root/beifen.tar -C /opt

这条命令会将/root/beifen.tar文件中的内容解压到/opt目录下,实现了指定目录的解压操作。

  • 保留原始路径
    若在归档过程中希望保留文件的原始路径信息,以便在解压时能准确还原到原来的位置,可以在归档命令中加上-P选项,具体命令如下:
tar -cPf /root/beifen03.tar /etc

这样,在后续进行解压操作时,同样需要加上-P选项,以确保文件能够正确还原到原始路径,解压命令为:

tar -xPf /root/beifen03.tar
  • 查看归档文件的大小
    如果我们想要查看归档文件的具体大小,可以使用du命令来实现,命令如下:
du -sh /root/beifen.tar

这条命令会以人类可读的格式(如 KB、MB、GB 等)显示/root/beifen.tar文件的大小,方便我们直观了解文件的占用空间情况。

三、使用tar进行压缩

tar命令本身主要是一个归档工具,但它具有很强的扩展性,可以与多种压缩工具(如 gzip、bzip2 和 xz)紧密结合使用,从而实现强大的压缩功能。

3.2 命令格式

tar命令与压缩工具结合使用时的格式依然为:

tar + 选项 + 参数

其中,常用的压缩选项包括:

  • -z:表示以 gzip 格式对文件进行压缩处理。
  • -j:表示以 bzip2 格式对文件进行压缩处理。
  • -J:表示以 xz 格式对文件进行压缩处理。

3.3 示例操作

  • 使用 gzip 压缩
    假设我们要将/etc目录下的所有文件进行归档,并同时以 gzip 格式进行压缩,可以使用以下命令:
tar -czPf /root/beifen05.tar.gz /etc

这条命令的具体含义为:
- -c:创建归档文件。
- -z:以 gzip 格式进行压缩。
- -P:保留文件的原始路径。
- -f:指定归档文件的名称为/root/beifen05.tar.gz
- /etc:指定要归档的目录。
执行该命令后,/etc目录下的所有文件和子目录都会被成功归档并压缩到/root/beifen05.tar.gz文件中。

  • 使用 bzip2 压缩
    若需要以 bzip2 格式对文件进行压缩,可以使用以下命令:
tar -cjPf /root/beifen06.tar.bz2 /etc

这条命令会将/etc目录下的所有文件进行归档,并以 bzip2 格式进行压缩处理,最终生成/root/beifen06.tar.bz2文件。

  • 使用 xz 压缩
    如果要以 xz 格式进行压缩操作,则可以使用以下命令:
tar -cJPf /root/beifen07.tar.xz /etc

这条命令会将/etc目录下的所有文件进行归档,并以 xz 格式进行压缩,生成/root/beifen07.tar.xz文件。


以上就是这篇博客的全部内容,下一篇我们将继续探索 Redhat 的更多精彩内容。

我的个人主页,欢迎来阅读我的其他文章
https://blog.csdn.net/2402_83322742?spm=1011.2415.3001.5343
我的RHCSA认证知识文章专栏
欢迎来阅读指出不足
https://blog.csdn.net/2402_83322742/category_12901802.html?spm=1001.2014.3001.5482

非常感谢您的阅读,喜欢的话记得三连哦

在这里插入图片描述