Linux では、パッケージ化とはファイルまたはディレクトリのコレクションを指し、このコレクションはファイルに保存されます。簡単に言うと、パッケージ化とは、多数のファイルまたはディレクトリを 1 つのドキュメントに変換することを指します。パックされたファイルは圧縮されていないため、必要なスペースはその中のすべてのファイルとディレクトリの合計になります。
#このチュートリアルの動作環境: linux7.3 システム、Dell G3 コンピューター。
Linux パッケージングの意味
パッケージング (アーカイブとも呼ばれる) は、ファイルまたはディレクトリのコレクションを指し、このコレクションは次の場所に保存されます。ファイル。アーカイブは圧縮されていないため、アーカイブが占めるスペースは、アーカイブ内のすべてのファイルとディレクトリの合計になります。通常、アーカイブは常にシステム (データ) バックアップと関連付けられます。
注: パッケージ化と圧縮は同じ概念ではありません。パッケージ化とは、多数のファイルまたはディレクトリを 1 つのファイルに変換することを指します。圧縮とは、いくつかの圧縮アルゴリズムを通じて大きなファイルを小さなファイルに変換することを意味します。
圧縮とは、ファイル情報を最大限に保持し、ファイル サイズを削減するという目的を達成するために、アルゴリズムを使用してファイルを処理することを指します。基本原理は、ファイル内で繰り返されるバイトを検索して同じバイトの辞書ファイルを作成し、それをコードで表すことです。たとえば、圧縮ファイル内に「C 言語中国語ネットワーク」という文字が複数個所出現する場合、ファイルを圧縮する際にこの単語をコードで表現して辞書ファイルに書き込むことで、ファイルサイズを小さくすることができます。目的。
Linux では、tar と dd という 2 つの一般的に使用されるアーカイブ コマンドがあります (比較的、tar の方が広く使用されています)。もちろん、tar コマンドは圧縮コマンドとしても使用でき、非常によく使用されます。 tar パッケージング コマンドについて話しましょう。
Linux tar パッケージング コマンドの詳細説明
Linux システムで最も一般的に使用されるアーカイブ (パッケージ化) コマンドは tar です。多くのファイルを 1 つのテープまたはディスクにまとめて保存し、アーカイブできます。それだけでなく、このコマンドはアーカイブから必要なファイルを復元することもできます。これは、アンパックと呼ばれる、パッケージ化の逆のプロセスです。
tar コマンドを使用してアーカイブされたパッケージは、通常、tar パッケージと呼ばれます (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 も同様であると思われるかもしれません。 unintelligent さて、パッケージと圧縮のプロセスは、実際には、最初に「.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视频教程》
以上がLinuxのパッケージングとは何を意味しますか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。