私はSolaris 11.3を使用しており、時々Ebayから購入した中古LTO6テープドライブに複数の大規模なVMとディスクイメージを直接バックアップしたいのですが、Solaris TARに8 GB以上のファイルサイズを許可する「E」フラグがあるにもかかわらず、ではありません。いずれにしても、テープからの読み込み中にメディアエラーが発生すると、TARが中断されることを知っているので、使用したくありません。 CPIOはPAXのようにはっきりと続いていますが、これら2つは8 GBを超えるファイルを処理できず、使用されなくなったため、決してそうしません。
CPIOが実行するすべての作業を実行できるだけでなく、8GBを超えるファイルもバックアップできるCPIOの後続製品はありますか?それとも引き続きTAR代替を使用しますか?私は移植性に興味がないので、タイムスタンプの保持など、適切なアーカイブプログラムが実行する一般的な操作を回復して実行できる限り、どのアーカイブ形式が使用されるかは関係ありません。
私は* nixに比較的最初に触れていて、他のUNIXまたはLinuxのバリアントでこれを行うことができる既製のコマンドラインプログラムが見つからなかったので、これを行うにはAmandaまたはBaculaをインストールする必要があります。世紀が変わってしばらくして、人々はこの問題と以前の2GBの制限について不平を言っていました。
答え1
cpioのサイズの仮定は正確ですが、cpioは単一の形式ではありません。4つあるいは、他の制約のために完全に互換性のない形式もあります。これがcpio
標準でフォーマットが廃止されたと宣言した理由です。 cpio 形式を改善するたびに互換性のない別の形式を作成する必要があるため、cpio は将来の準備はできません。
cpio形式はブロックされないため、読み取りエラーの後に読み取り機を再同期することは難しく、エラーが発生しやすくなります。したがって、アーカイブにはcpioを使用しないことをお勧めします。とにかく、cpioエラー回復に関するあなたの声明はcpio自体ではなく、AT&T実装に関連しているので、GNU実装に注意してください...あなたが引用した機能はSun / AT&T cpioと同様に文書化されていません。問題を起こすことなく実行中のプログラムの代替バイナリとして使用されます。後者はstar -install
ロギング機能で得られるものです。
一方、TARは拡張可能な形式であり(Sun Microsystemsの提案に基づいて2001年に新しい拡張tar形式を標準化したPOSIXのおかげで)、将来の非互換性の問題なしに使用することができます。
テープで読み取りエラーが発生した場合は、カーネルドライバがそれを読み取ることができるかどうか疑問に思われます。しかし、私はSun cpioをチェックしましたが、内部的にはEIOをデータを返さない一種のEOFに変換するようです。ここで最大の問題は、Sun cpioが上位層にそのような問題があることを覚えていないようです。
cpioに似たものを入手するには、次のものを使用することをお勧めします。
sdd if=/dev/rmt/0 bs=126k -noerror try=0 | star -xp -i
126kをテープのブロックサイズに置き換えて、正しいif =パラメーターを使用してください。
さらなる説明:
gtar
バックアップを作成できますが、自分のファイルを復元できないことがよくあります。たとえば、2つの増分バックアップの間にかなりの差がある増分バックアップを使用すると、これが発生する可能性がgtar
あります。
star
opencswは新しいものではありません。次の場所でパッケージの最新バージョンをコンパイルすることをお勧めしますschilytools
。
http://sf.net/projects/schilytools/files/
通常、schilytoolsは2週間ごとに更新されます。
starの現在のマニュアルページは次の場所にあります。
http://schilytools.sourceforge.net/man/man1/star.1.html
また、見ることができます