xz圧縮を使用してディレクトリを別のディレクトリにtarすることはできません。

xz圧縮を使用してディレクトリを別のディレクトリにtarすることはできません。

存在しない別のディレクトリに自分のホームディレクトリのtarアーカイブを作成するためにxz圧縮を使用しようとするとエラーが発生します。

tar:空のアーカイブの作成を卑劣に拒否します。

私が実行したコマンドは次のとおりです。

tar cJvf /mnt/1234/a.tar.xz -C ~/

私はDebian 9.5を使用しています。

答え1

アーカイブに入れるファイルを教えてくれませんでした。

あなたはすでに

  • ファイルを作成する場所を示します。
  • どのディレクトリに変更するか教えてください。

しかし、まだ何を入れるかは言っていません。

最も簡単な解決策は次のとおりです。

tar cJvf /mnt/1234/a.tar.xz -C ~/ .

これにより、すべてのファイルが名前で始まるアーカイブに保存されます./。例えば./foo ./bar ./baz

ただし、これらのアーカイブを抽出すると、現在のディレクトリに抽出され、現在のディレクトリの権限の変更を含む既存のファイルが上書きされる可能性があるため、注意してください。

答え2

あなたの命令:

tar cJvf /mnt/1234/a.tar.xz -C ~/

これはGNUに何を保持するかを伝えませんtar。ビット-C ~/はタスクを実行する前に教えてくれましたが、tarまだ何を保持するのか教えていません。cd~/

使いたいかもしれません

tar cJvf /mnt/1234/a.tar.xz -C ~/ .

tarこれは、ディレクトリを変更した後に現在のディレクトリをアーカイブするようにGNU命令を提供します~/

関連情報