Vyhledal jsem chybovou zprávu na Googlu a vypadá to jako BSD tar vs. GNU tar
problém.
Nainstalujte GNU tar
pokud můžete na Mac OS a použijte to k vytvoření tar
.
Pokud používáte Mavericks nebo novější, pak gnutar již není ve výchozím nastavení zahrnut.
Řešením, pokud používáte homebrew, je provést následující:
brew install gnu-tar
Poté můžete použít příkaz gtar
pro linuxovou kompatibilitu.
Pokud chcete nahradit tar
s gtar
, jednoduše nahraďte symbolický odkaz
tar --version
ll `which tar`
sudo unlink `which tar`
sudo ln -s `which gtar` /usr/bin/tar
tar --version
Chcete-li obnovit původní tar poskytovaný s Mac OS X, spusťte výše uvedené příkazy, ale nahraďte which gtar
s which bsdtar
Zdroj:
https://github.com/jordansissel/fpm/issues/576
GNU tar nemá rád některé volitelné informace, které výchozí OSX BSD tar obsahuje.
GNU tar vám umožní potlačit tato varování volbou:
--warning=no-unknown-keyword
Viz:https://www.gnu.org/software/tar/manual/html_section/tar_27.html
Všimněte si, že BSD tar nepodporuje tento příznak, takže pokud potřebujete spustit stejný kód pro rozbalení na všech platformách, můžete použít něco jako:
isGnuTar=$(tar --version | grep -q 'gnu')
if [ $? -eq 0 ]
then
echo "Detected GNU tar"
tar --warning=no-unknown-keyword -zxf my.tar.gz
else
tar -zxf my.tar.gz
fi