Tarは独立したボリュームに分割されます。

Tarは独立したボリュームに分割されます。

100 GBを超えるデータを含むいくつかのディレクトリがあります。小さいボリューム(たとえば、それぞれ10 Gb)で保存しようとしています。独立/独立

問題は、tar+を使用すると、split独立していない複数のtar部分が生成されることです。まず、すべてを1つの大きなファイルにマージしない限り、部品の1つからのみファイルを抽出することはできません。

また、分割ボリュームを試してみましたが、tar -c -L1000M ...それも機能せず、長いファイル名が切り捨てられるという問題があります。

また、試してみましたが、starボリュームが独立しておらず、7zipがUNIXで権限を保持していないようです。

別々の分割アーカイブが必要なのは、セキュリティの目的です。パーティションファイルの1つが破損していても、他のアーカイブからデータを取得できます。すべてのアーカイブを1つの大きなボリュームに再マージせずに特定のファイル/フォルダのみを抽出したい場合でも、はるかに高速です。

どうすればこれを最良に達成できますか?ありがとうございます。


解決策を探す

@Haxielの答えで提案されているように、tarを使用して解決策を見つけました。答えは以下に掲示されています。

ファイルがボリュームの境界を超えて使用可能な次のボリュームがない場合、1つまたは2つのファイルがまだ失われる可能性がありますが、他の部分が失われても少なくとも個々のボリュームは独立して抽出できます。

ベストアンサー1

@Haxielの答えで提案されているように、tarを使用して解決策を見つけました。使用されるコマンドは次のとおりです。

tar -c -L1G -H posix -f /backup/somearchive.tar -F '/usr/bin/tar-volume.sh' somefolder

-エル:アーカイブサイズ制限(例:1GB)の定義

-時間:Posix形式を使用する必要があります。それ以外の場合は、長いファイル名が切り捨てられます。

-F:tar の連続アーカイブファイル名を生成するには、ボリュームスクリプトが必要です。

このコマンドは、次の形式でマルチボリュームアーカイブを生成します。somearchive.tar、somearchive.tar-2、somearchive.tar-3...

以下は私です。tar-volume.sh、これから適応地図時間

#!/bin/bash

echo Preparing volume $TAR_VOLUME of $TAR_ARCHIVE
name=`expr $TAR_ARCHIVE : '\(.*\)\(-[0-9]*\)$'`

case $TAR_SUBCOMMAND in
-c)       ;;
-d|-x|-t) test -r ${name:-$TAR_ARCHIVE}-$TAR_VOLUME || exit 1
          ;;
*)        exit 1
esac

echo ${name:-$TAR_ARCHIVE}-$TAR_VOLUME >&$TAR_FD

3番目のアーカイブボリュームの内容を一覧表示するには:

tar -tf /backup/somearchive.tar-3

特定のアーカイブボリュームを抽出するには:

tar -xf /backup/somearchive.tar-3

1つのボリュームのみを抽出する場合は、アーカイブの先頭または末尾から別のボリュームに分割された不完全なファイルがある可能性があります。 Tarは次のサブフォルダを作成します。GNUFileParts.xxxx/ファイル名不完全なファイルが含まれています。

Unixからボリュームセット全体を抽出するには、ボリュームスクリプトを使用して再度実行する必要があります。

tar -xf /backup/somearchive.tar -F '/usr/bin/tar-volume.sh'

Windowsから抽出する場合、tarコマンドはbashシェルを必要とするため、ボリュームスクリプトを正しく実行しません。まず、次のコマンドを実行し、コマンドラインにボリュームファイル名を手動で入力する必要があります。

tar -xf somearchive.tar -M

-中マルチボリュームアーカイブであることを示します。 tarが最初のボリュームの抽出を完了すると、すべてのボリュームが抽出されるまで、次のボリュームの名前を入力するように求められます。

ボリュームが多い場合は、最初にすべてのボリューム名シーケンスを入力し、最初のボリュームを抽出してからバッチ全体をコピーして、tarのコマンドラインプロンプトに貼り付けることができます。

n somearchive.tar-2
n somearchive.tar-3
n somearchive.tar-4

参考にしてくださいN上記はtarコマンドで、次のパラメータが新しいボリュームファイル名であることを示しています。

ファイルがボリュームの境界を超えて使用可能な次のボリュームがない場合でも、1つまたは2つのファイルが失われる可能性がありますが、他の部分が失われても少なくとも個々のボリュームは独立して抽出できます。

詳細については、次を参照してください。タール文書。時間

おすすめ記事