インストール
デフォルトでは以下のものがインストールされています。
- Linux: GNU Tar
- macOS: BSD Tar
LinuxでBSD Tarを使いたい場合(DockerでBSD Tarのテストとか)は、 以下のパッケージを入れます。コマンドは’bsdtar’です。
- Debian GNU/Linux: libarchive-tools
- CentOS 7: bsdtar
macOSでGNU Tarを使いたい場合は、brew install gnu-tar
でインストールできます。
コマンドは’gtar’です。
owner/groupの変更
- GNU tar
- オーナーの変更:
--owner=NAME
- グループの変更:
--group=NAME
- オーナー・グループを数値(UID/GID)に変更:
--numeric-owner
- オーナーの変更:
アーカイブからファイルを削除する方法
- このオプションはGNU Tarのみ対応です。BSD Tar(macOSなど)では未対応です。
tar --delete -f archive.tar path/to/exclude
圧縮されたtarアーカイブはこの方法が使えない。 以下のエラーが出る。
tar: Cannot update compressed archives
この場合は、一旦圧縮を解除してからやるとよい。 以下のような方法もある。