Ho cercato su Google il messaggio di errore e sembra un tar BSD rispetto a GNU tar
problema.
Installa GNU tar
se puoi su Mac OS e usalo per creare il tar
.
Se stai usando Mavericks o versioni successive, gnutar non è più incluso per impostazione predefinita.
La soluzione, se usi homebrew, è eseguire quanto segue:
brew install gnu-tar
È quindi possibile utilizzare il comando gtar
per la compatibilità con Linux.
Se vuoi sostituire tar
con gtar
, sostituisci semplicemente il collegamento simbolico
tar --version
ll `which tar`
sudo unlink `which tar`
sudo ln -s `which gtar` /usr/bin/tar
tar --version
Per ripristinare il tar originale fornito con Mac Os X, esegui i comandi precedenti ma sostituisci which gtar
con which bsdtar
Fonte:
https://github.com/jordansissel/fpm/issues/576
Al tar GNU non piacciono alcune delle informazioni opzionali incluse nel tar OSX BSD predefinito.
GNU tar ti permetterà di sopprimere quegli avvertimenti con l'opzione:
--warning=no-unknown-keyword
Vedi:https://www.gnu.org/software/tar/manual/html_section/tar_27.html
Nota che tar BSD non supporta quel flag, quindi se hai bisogno di eseguire lo stesso codice di decompressione su tutte le piattaforme puoi usare qualcosa come:
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