In Linux, packaging refers to a collection of files or directories, and this collection is stored in a file; simply put, packaging refers to turning a large number of files or directories into a total document. The packed file is not compressed, so the space it takes up is the sum of all files and directories in it.
#The operating environment of this tutorial: linux7.3 system, Dell G3 computer.
What does Linux packaging mean
Packaging, also called archive, refers to a collection of files or directories, and this collection is Stored in a file. The archive is not compressed, so the space it takes up is the sum of all files and directories in it. Usually, archiving is always associated with system (data) backup.
Note: Packaging and compression are not the same concept. Packaging refers to turning a large number of files or directories into a total file; compression means turning a large file into a small file through some compression algorithms.
Compression refers to the use of algorithms to process files to achieve the purpose of retaining the maximum file information and reducing the file size. The basic principle is to create a dictionary file of the same bytes by searching for repeated bytes in the file, and represent it with a code. For example, in a compressed file, "C Language Chinese Network" appears in more than one place. Then, when the file is compressed, this word will be represented by a code and written into the dictionary file, so that the file size can be reduced. Purpose.
Under Linux, there are two commonly used archiving commands, namely tar and dd (relatively speaking, tar is more widely used). Of course, the tar command can also be used as a compression command and is also very commonly used. Let’s talk about the tar packaging command.
Linux tar packaging command detailed explanation
In the Linux system, the most commonly used archiving (packaging) command is tar, which can Save many files together to a single tape or disk for archiving. Not only that, this command can also restore the required files from the archive, which is the reverse process of packaging, called unpacking.
Packages archived using the tar command are usually called tar packages (tar package files all end with ".tar").
1. tar command for packaging operation
When the tar command is used for packaging operation, the basic format of the command is:
[root@localhost ~]#tar [选项] 源文件或目录
The commonly used options of this command and their respective meanings are shown in Table 1.
#It should be noted that when using the tar command to specify options, you do not need to enter "-" in front of the options. For example, using the "cvf" option has the same effect as "-cvf".
Here are a few examples to show you how to use the tar command to package files and directories.
[Example 1] Package files and directories.
[root@localhost ~]# tar -cvf anaconda-ks.cfg.tar anaconda-ks.cfg #把anacondehks.cfg打包为 anacondehks.cfg.tar文件
The option "-cvf" is generally used. Remember that you need to specify the file name after packaging when packaging, and use ".tar" as the extension. The same is true for packaging directories:
[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文件包
[Example 2] Pack and compress the directory.
First of all, let me state that the compression command cannot directly compress the directory. You must first use the tar command to package the directory, and then use the gzip command or bzip2 command to compress the packaged file. For example:
[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 command for unpacking operation
When the tar command is used to unpack the tar package, the The basic format of the command is as follows:
[root@localhost ~]#tar [选项] 压缩包
When used to unpack, the commonly used options and meanings are shown in Table 2.
In fact, compared with packaging, unpacking only replaces the packaging option "-cvf" with "-xvf". Let’s try:
[root@localhost ~]# tar -xvf anaconda-ks.cfg. tar #解打包到当前目录下
If you use the “-xvf” option, the files in the package will be extracted to the current directory. If you want to specify the decompression location, you need to use the "-C (uppercase)" option. For example:
[root@localhost ~]# tar -xvf test.tar -C /tmp #把文件包test.tar解打包到/tmp/目录下
If you only want to see which files are in the file package, you can replace the unpacking option "-x" with the testing option "-t". For example:
[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. The tar command performs packaging and compression (decompression and unpacking) operations
You may think that Linux is too unintelligent Well, a package and compression process actually has to be packaged into ".tar" format first, and then compressed into ".tar.gz" or ".tar.bz2" format. In fact, the tar command can package and compress at the same time. The previous explanation separates packaging and compression to let everyone understand the difference between packaging and compression in Linux.
When the tar command performs packaging and compression operations at the same time, its basic format is as follows:
[root@localhost ~]#tar [选项] 压缩包 源文件或目录
There are two commonly used options here, namely:
-z: compression and decompression Compress ".tar.gz" format;
-j: Compress and decompress ".tar.bz2" format.
[Example 1] Compress and decompress ".tar.gz" format.
[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视频教程》
The above is the detailed content of What does linux packaging mean?. For more information, please follow other related articles on the PHP Chinese website!