で説明されています。tar
という名前は、ほとんどのアカウントでtape archiveの略です。 問題の”テープ”は、1950年代に人気があったすべての磁気ストレージドライブです。
これは、tar
tar
ツールが少し古く、その素数を過ぎている可能性があります。
これは、tar
しかし、真実は、すべての年の間、そしてITの世界へのすべての地震の変化を通して、tar
その力と価値のどれも失っていないというここの記事では、Linux in Action bookのコンテンツに基づいて、tarアーカイブの作成、圧縮、および復元の基本を紹介します。 最初から始めましょう。
この例では、現在の作業ディレクトリ内およびその下のすべてのファイルとディレクトリを取得し、archivename.tar
という巧みな名前を付けたアー
ここでは、tarコマンドの後に3つの引数を使用します: p>
c
新しいアーカイブを作成するようにtarに指示し、v
画面出力をverboseに設定して更新を取得し、f
アーカイブを
*
tar
にすべてのファイルとローカルディレクトリを再帰的に含めるように指示します。
$ tar cvf archivename.tar *file1file2file3directory1directory1/morestuffdirectory1/morestuff/file100directory1/morestuff/file101
tarコマンドは、あなたがそれを供給する元のディレクトリやファイルのいずれかを移動または削除することはありません–それはアー
また、ドット(。)前のコマンドのアスタリスク(*)の代わりに、隠しファイル(ファイル名がドットで始まる)もアーカイブに含まれます。
自分のコンピュータをフォローしている場合(間違いなくそうする必要があります)、archivenameという名前の新しいファイルが表示されます。タール ザ.tarファイル名の拡張子は必要ありませんが、できるだけ多くの方法でファイルの目的を明確に伝えることは常に良い考えです。
ファイルを復元するためにアーカイブを抽出するのは簡単です: cvf
xvf
を使用するだけです。 これにより、この例では、元のファイルとディレクトリの新しいコピーが現在の場所に保存されます。
$ tar xvf archivename.tarfile1file2file3directory1directory1/morestuffdirectory1/morestuff/file100directory1/morestuff/file101
もちろん、-C
引数の後にターゲットの場所を使用して、抽出したファイルをtarで他の場所に送信することもできます。
$ tar xvf archivename.tar -C /home/mydata/oldfiles/
アーカイブ内のディレクトリツリー内のすべてのファイルを常に含めるとは限りません。
いくつかのビデオを制作したとしますが、現在はすべての種類のグラフィック、オーディオ、テキストファイル(メモを含む)とともにディレクトリに保 バックアップする必要があるファイルは、.mp4ファイル名拡張子を使用した最終的なビデオクリップのみです。 これを行う方法は次のとおりです。
$ tar cvf archivename.tar *.mp4
それは素晴らしいことです。 しかし、これらのビデオファイルは巨大です。 圧縮を使用してそのアーカイブを少し小さくするのはいいことではないでしょうか?
もう言いません!
もう言いません! 前のコマンドをz
(zip)引数で実行するだけです。 これにより、gzipプログラムにアーカイブを圧縮するように指示されます。 規約に従いたい場合は、すでに存在する.tar
.gz
拡張子を追加することもできます。 覚えておいてください:明快さ。
これがどのように再生されるかです:
$ tar czvf archivename.tar.gz *.mp4
独自の.mp4ファイルでこれを試してから、新しいアーカイブを含むディレクトリでls-lを実行すると、.tar.gz
.tar
.mp4
ファイル形式自体は圧縮されているので、gzipがその作業を行う余地ははるかに少なくなります。
tarはLinux環境を完全に認識しているため、現在の作業ディレクトリの外にあるファイルやディレクトリを選択するために使用できます。 この例では、すべての.mp4
/home/myuser/Videos/
ディレクトリに追加します:
$ tar czvf archivename.tar.gz /home/myuser/Videos/*.mp4
アーカイブファイルは大きくなる可能性があるため、複数の小さなファイルに分割し、新しいホームに転送してから、もう一方の端に元のフ 分割ツールは、この目的のために作られています。この例では、-b
はLinuxにアーカイブ名を分割するように指示します。タールGZファイルを1GBサイズの部品に変換します。 次に、操作は各パーツにarchivenameという名前を付けます。タールgz。partaa、アーカイブ名。タールgz。partab、アーカイブ名。タールgz。partacなど:p>
$ split -b 1G archivename.tar.gz "archivename.tar.gz.part"
反対側では、各パーツを順番に読み込んでアーカイブを再作成します(cat archivename.タールgz。その後、archivenameという名前の新しいファイルに出力をリダイレクトします。タールgz:
$ cat archivename.tar.gz.part* > archivename.tar.gz
ストリーミングファイルシステムアーカイブ
良いものが始まる場所です。 私は作業Linuxインストールのアーカイブイメージを作成し、リモートストレージの場所にストリーミングする方法をお見せするつもりです—すべての単一のコマン ここにコマンドがあります:すぐにすべてを説明しようとするのではなく、小さな例を使用して一度に1つずつ探索します。
本当に重要なものでいっぱいのimportantstuffというディレクトリの内容のアーカイブを作成しましょう。
$ tar czvf - importantstuff/ | ssh [email protected] "cat > /home/username/myfiles.tar.gz"importantstuff/filename1importantstuff/[email protected]'s password:
その例を説明しましょう。 コマンド引数の直後にアーカイブ名を入力するのではなく(今までのやり方で)、ダッシュ(czvf-)を使用しました。 dashはデータを標準出力に出力します。
ダッシュはデータを標準出力に出力します。 これにより、アーカイブファイル名の詳細をコマンドの最後に戻すことができ、tarに代わりにアーカイブのソースコンテンツを期待するように指示します。 次に、名前のない圧縮されたアーカイブを、パスワードを求められたリモートサーバー上のsshログインにパイプ(|)しました。
引用符で囲まれたコマンドは、アーカイブデータストリームに対してcatを実行し、ストリームの内容をmyfilesというファイルに書き込みました。タールリモートホスト上の私のホームディレクトリ内のgz。
この方法でアーカイブを生成する利点の一つは、中間ステップのオーバーヘッドを避けることです。 アーカイブのコピーをローカルマシンに一時的に保存する必要はありません。 110GBの空き容量のうち128GBを満たすインストールをバックアップするとします。 アーカイブはどこに行くのでしょうか?
それは単なるファイルのディレクトリでした。 アクティブなLinux OSをUSBドライブにバックアップして、別のマシンに移動してそのマシンのメインドライブにドロップできるようにする必要があ
2番目のマシンに同じLinuxバージョンの新規インストールが既にあると仮定すると、次のコピー/貼り付け操作で最初のものの正確なレプリカが生成され
注意:これは、Linuxファイルシステムがまだインストールされていないターゲットドライブでは機能しません。 そのような状況を処理するには、
dd
次の例では、/dev/sdc1
として知られているUSBドライブ上に圧縮されたアーカイブを作成します。 p>
--one-file-system
/sys/
/dev/
/usr/
/var/
--exclude
引数を使用して、現在のファイルシステムからデータを除外できます。
# tar czvf /dev/sdc1/workstation-backup-Apr-10.tar.gz \ --one-file-system \ / /usr /var \ --exclude=/home/andy/
次に、フルサービスのコマンド例に戻 すでに学んだことを使用して、ファイルシステムのすべての重要なディレクトリをアーカイブし、USBドライブにアーカイブファイルをコピーします。 それは今あなたに意味をなさないはずです:p>
# tar czvf - --one-file-system / /usr /var \ --exclude=/home/andy/ | ssh [email protected] \ "cat > /home/username/workstation-backup-Apr-10.tar.gz"
私の本、コース、記事の形ではるかに多くの管理の良さがありますbootstrap-it.com.