linux打包指的是什么

72次阅读
没有评论

共计 3419 个字符,预计需要花费 9 分钟才能阅读完成。

今天丸趣 TV 小编给大家分享一下 linux 打包指的是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。

在 linux 中,打包指的是一个文件或目录的集合,而这个集合被存储在一个文件中;简单来说,打包是指将一大堆文件或目录变成一个总的文件。打包文件没有经过压缩,因此它占用的空间是其中所有文件和目录的总和。

linux 打包是什么意思

打包,也称为归档,指的是一个文件或目录的集合,而这个集合被存储在一个文件中。归档文件没有经过压缩,因此,它占用的空间是其中所有文件和目录的总和。通常,归档总是会和系统(数据)备份联系在一起。

注:打包和压缩不是一个概念。打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。

压缩是指利用算法将文件进行处理,已达到保留最大文件信息,而让文件体积变小的目的。其基本原理为,通过查找文件内的重复字节,建立一个相同字节的词典文件,并用一个代码表示。比如说,在压缩文件中,有不止一处出现了“C 语言中文网”,那么,在压缩文件时,这个词就会用一个代码表示并写入词典文件,这样就可以实现缩小文件体积的目的。

Linux 下,常用归档命令有 2 个,分别是 tar 和 dd(相对而言,tar 的使用更为广泛)。当然,tar 命令也可以作为压缩命令,也很常用。下面就聊聊 tar 打包命令。

Linux tar 打包命令详解

Linux 系统中,最常用的归档(打包)命令就是 tar,该命令可以将许多文件一起保存到一个单独的磁带或磁盘中进行归档。不仅如此,该命令还可以从归档文件中还原所需文件,也就是打包的反过程,称为解打包。
使用 tar 命令归档的包通常称为 tar 包(tar 包文件都是以“.tar”结尾的)。

1、tar 命令做打包操作

当 tar 命令用于打包操作时,该命令的基本格式为:

[root@localhost ~]#tar [选项]  源文件或目录 

此命令常用的选项及各自的含义如表 1 所示。

需要注意的是,在使用 tar 命令指定选项时可以不在选项前面输入“-”。例如,使用“cvf”选项和“-cvf”起到的作用一样。

下面给大家举几个例子,一起看看如何使用 tar 命令打包文件和目录。

【例 1】打包文件和目录。

[root@localhost ~]# tar -cvf anaconda-ks.cfg.tar anaconda-ks.cfg
#把 anacondehks.cfg 打包为  anacondehks.cfg.tar 文件 

选项“-cvf”一般是习惯用法,记住打包时需要指定打包之后的文件名,而且要用“.tar”作为扩展名。打包目录也是如此:

[root@localhost ~]# ll -d test/
drwxr-xr-x 2 root root 4096 6 月  17 21:09 test/
#test 是我们之前的测试目录
[root@localhost ~]# tar -cvf test.tar test/
test/
test/test3
test/test2
test/test1
#把目录打包为 test.tar 文件
tar 命令也可以打包多个文件或目录,只要用空格分开即可。例如:
[root@localhost ~]# tar -cvf ana.tar anaconda-ks.cfg /tmp/
#把 anaconda-ks.cfg 文件和 /tmp 目录打包成 ana.tar 文件包 

【例 2】打包并压缩目录。
首先声明一点,压缩命令不能直接压缩目录,必须先用 tar 命令将目录打包,然后才能用 gzip 命令或 bzip2 命令对打包文件进行压缩。例如:

[root@localhost ~]#ll -d test test.tar
drwxr-xr-x 2 root root 4096 6 月  17 21:09 test
-rw-r--r-- 1 root root 10240 6 月  18 01:06 test.tar
#我们之前已经把 test 目录打包成 test.tar 文件
[root@localhost ~]# gzip test.tar
[root@localhost ~]# ll test.tar.gz
-rw-r--r-- 1 root root 176 6 月  18 01:06 test.tar.gz
#gzip 命令会把 test.tar 压缩成 test.tar.gz

2、tar 命令做解打包操作

当 tar 命令用于对 tar 包做解打包操作时,该命令的基本格式如下:

[root@localhost ~]#tar [选项]  压缩包 

当用于解打包时,常用的选项与含义如表 2 所示。

其实解打包和打包相比,只是把打包选项“-cvf”更换为“-xvf”。我们来试试:

[root@localhost ~]# tar -xvf anaconda-ks.cfg. tar
#解打包到当前目录下 

如果使用“-xvf”选项,则会把包中的文件解压到当前目录下。如果想要指定解压位置,则需要使用“-C(大写)”选项。例如:

[root@localhost ~]# tar -xvf test.tar -C /tmp
#把文件包 test.tar 解打包到 /tmp/ 目录下 

如果只想查看文件包中有哪些文件,则可以把解打包选项“-x”更换为测试选项“-t”。例如:

[root@localhost ~]# tar -tvf test.tar
drwxr-xr-x root/root 0 2016-06-17 21:09 test/
-rw-r-r- root/root 0 2016-06-17 17:51 test/test3
-rw-r-r- root/root 0 2016-06-17 17:51 test/test2
-rw-r-r- root/root 0 2016-06-17 17:51 test/test1
#会用长格式显示 test.tar 文件包中文件的详细信息 

3、tar 命令做打包压缩(解压缩解打包)操作

你可能会觉得 Linux 实在太不智能了,一个打包压缩,居然还要先打包成“.tar”格式,再压缩成“.tar.gz”或“.tar.bz2”格式。其实 tar 命令是可以同时打包压缩的,前面的讲解之所打包和压缩分开,是为了让大家了解在 Linux 中打包和压缩的不同。

当 tar 命令同时做打包压缩的操作时,其基本格式如下:

[root@localhost ~]#tar [选项]  压缩包   源文件或目录 

此处常用的选项有以下 2 个,分别是:
-z:压缩和解压缩“.tar.gz”格式;
-j:压缩和解压缩 .tar.bz2 格式。

【例 1】压缩与解压缩 .tar.gz 格式。

[root@localhost ~]# tar -zcvf tmp.tar.gz /tmp/
#把 /temp/ 目录直接打包压缩为 .tar.gz 格式,通过 -z 来识别格式,-cvf 和打包选项一致 

解压缩也只是在解打包选项“-xvf”前面加了一个“-z”选项。

[root@localhost ~]# tar -zxvf tmp.tar.gz
#解压缩与解打包 .tar.gz 格式 

前面讲的选项“-C”用于指定解压位置、“-t”用于查看压缩包内容,在这里同样适用。

【例 2】压缩与解压缩“.tar.bz2”格式。
和 .tar.gz 格式唯一的不同就是 -zcvf 选项换成了“-jcvf”,如下所示:

[root@localhost ~]# tar -jcvf tmp.tar.bz2 /tmp/
#打包压缩为 .tar.bz2 格式,注意压缩包文件名
[root@localhost ~]# tar -jxvf tmp.tar.bz2
#解压缩与解打包 .tar.bz2 格式 

把文件直接压缩成 .tar.gz 和 .tar.bz2 格式,才是 Linux 中最常用的压缩方式,这是大家一定要掌握的压缩和解压缩方法。

tar 命令最初被用来在磁带上创建备份,现在可以在任何设备上创建备份。利用 tar 命令可以把一大堆的文件和目录打包成一个文件,这对于备份文件或是将几个文件组合成为一个文件进行网络传输是非常有用的。

以上就是“linux 打包指的是什么”这篇文章的所有内容,感谢各位的阅读!相信大家阅读完这篇文章都有很大的收获,丸趣 TV 小编每天都会为大家更新不同的知识,如果还想学习更多的知识,请关注丸趣 TV 行业资讯频道。

正文完
 
丸趣
版权声明:本站原创文章,由 丸趣 2023-07-12发表,共计3419字。
转载说明:除特殊说明外本站除技术相关以外文章皆由网络搜集发布,转载请注明出处。
评论(没有评论)