症状

Mac で 固めた tarファイルを Linux で展開したとき、こんなメッセージが出ました。

1tar: Ignoring unknown extended header keyword `SCHILY.dev'
2tar: Ignoring unknown extended header keyword `SCHILY.ino'
3tar: Ignoring unknown extended header keyword `SCHILY.nlink'

原因

圧縮と展開で使っている gar の種類が異なるため。

つまり、どういうことだってばよ

Mac の tar は bsdtar です。

1$ tar --version
2bsdtar 2.8.3 - libarchive 2.8.3

Linux サーバ側は GNU tar です。

1$ tar --version
2tar (GNU tar) 1.26
3Copyright (C) 2011 Free Software Foundation, Inc.
4License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>.
5This is free software: you are free to change and redistribute it.
6There is NO WARRANTY, to the extent permitted by law.
7
8Written by John Gilmore and Jay Fenlason.

同じライブラリを使えば問題ない感じですね。

対処

Mac に GNU tar をインストールし、 これを使って書庫を作る。


過去の Mac には最初から GNU tar が入っていたバージョンもあったようですね。

Mojave には見当たらないようなので、 brew でインストールしましょう。

brew が使える状態なら次コマンドでインストールできます。

1brew install gnu-tar

gtar というコマンド名で インストールされるようですね。

 1$ which gtar
 2/usr/local/bin/gtar
 3
 4$ gtar --version
 5tar (GNU tar) 1.30
 6Copyright (C) 2017 Free Software Foundation, Inc.
 7License GPLv3+: GNU GPL version 3 or later <https://gnu.org/licenses/gpl.html>.
 8This is free software: you are free to change and redistribute it.
 9There is NO WARRANTY, to the extent permitted by law.
10
11Written by John Gilmore and Jay Fenlason.

ちょっとしたことですが、いろいろ歴史があるものです。


スマブラも、20 年という歴史があるんですね。