アーカイブは複数のファイルを1つのファイルにまとめて管理するファイルに変換すること。
アーカイブされたファイルはファイルとしては、そのまま内容を読み出すことができない。
内容を読み出すには、アーカイブ前の元のファイルの状態に戻す作業が必要。
この作業を「解凍」または「展開」と呼ぶ。
ファイルを圧縮しつつアーカイブしたものを元の形に復元するのが「解凍」
圧縮してないアーカイブの場合は「展開」という。
複数のファイルを1つのファイルにまとめる作業は、ファイルサイズを小さくする
「圧縮」という形で行われるが、tarコマンドはアーカイブするだけで圧縮は行わない。
〇圧縮すればファイルの構造が変化
圧縮されたファイルは元のデータとは全く違う形のファイルとなり、稀に正常に圧縮されない場合もある。
後で解凍しようとしても何かの不具合で解凍できないなどのリスクがある。
〇圧縮と解凍したときにコンピュータに負担がかかる
〇はじめから圧縮されているファイルではさらに圧縮する必要がない。
画像ファイルのJPEGやPNGなどは、すでに圧縮されているファイルのため、圧縮しても1ファイルに
まとめるという意味しか持たない場合がある。
ビットマップファイルは無圧縮の画像ファイルなので、圧縮すればかなりファイルサイズを小さくすることができる。
〇圧縮とは
ファイルの内容を数学的に計算して本来のファイル容量よりも小さくする技術
圧縮には2通りあり、可逆性圧縮と不可逆性圧縮がある。
可逆性圧縮は、あとで元の形に再現するように計算し圧縮をしているので、あとから
元のままのデータを取り出すことができる。
不可逆性圧縮は、元ファイルの何かを犠牲にすることでファイル容量を抑える方法。
有名なものだとJPEG画像圧縮は画像の劣化を伴い、元に戻すことができない。
アーカイブで扱われる圧縮は、可逆性圧縮で元のままのファイルに戻すことができる。
〇アーカイブと圧縮の違い
圧縮は若干であるがデメリットがあり、そもそも意味がなかったりする場合がある。
アーカイブのメリットとして、複数あるファイルを1ファイルにまとめる事ができる。
例えば、大量のJPEG画像がある場合、圧縮率はほとんど0なのでメリットが少ない。
クラウドのファイルサーバーやメールで送信する場合、1ファイルごとに送信するのは手間がかかるが、
事前にアーカイブしておけばファイルの指定が1回で済む。
Linuxではファイル名に慣例的に.tarの拡張子を付けて管理する。
なお、tarコマンドを実行した場合、特にオプションを設定しなければ、アーカイブ元のファイルも
消えることなく残る。
元のファイルが不必要な場合はしかるべきオプションにてアーカイブ作成と同時に削除するか、作業後にrmコマンドなどで削除する。
場合によっては安全にアーカイブされたことを確認してから削除しても良いのかも知れない。