V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
ultimate42
V2EX  ›  macOS

macos 使用 tar 归档,到 Linux 上解压时报警告

  •  
  •   ultimate42 · 51 天前 · 1132 次点击
    这是一个创建于 51 天前的主题,其中的信息可能已经有所发展或是发生改变。
    tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance'
    tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance'
    tar: Ignoring unknown extended header keyword 'LIBARCHIVE.xattr.com.apple.provenance'
    

    在 linux 上解压时出现这个提示,解压后目录里也多了很多.开头的隐藏文件,我搜到的解决方法是换成 gnutar

    export PATH="/opt/homebrew/opt/gnu-tar/libexec/gnubin:$PATH"
    

    我现在有一点疑问,将系统的 tar 替换为 gnutar 会不会对系统有影响,还是说在脚本里显式使用 gtar 更合适呢

    SGL
        1
    SGL  
       51 天前
    可以起一个 linux 的容器,在容器里面打。我日常在 x86 的容器里打,放到 x86 的 linux 服务器上没问题。
    julyclyde
        2
    julyclyde  
       50 天前
    @SGL 太重了吧
    为了醋包饺子?憋着屁赶紧穿上裤子再放?
    zengxs
        3
    zengxs  
       50 天前
    Apple 自定义的文件属性,只在 macOS 上有效,这个警告不会影响解压出来的文件内容
    zengxs
        4
    zengxs  
       50 天前
    gnutar 就是标准的 gnu 的 tar 程序,和 linux 的 tar 是一个版本,你要和 linux 完全兼容最好就用这个
    mac 自己的 tar 是一个定制的 bsdtar ,因为它已经占了 tar 这个名字,homebrew 才把 gnu-tar 程序改名为 gtar
    同样有坑的还有类似的 gnu-sed

    只是替换 PATH 的话不会对系统有啥影响,但是最好还是直接调 gtar 吧
    SGL
        5
    SGL  
       50 天前
    @julyclyde 是比较重,只是提一嘴,我是因为需要在 Mac 上模拟那个服务器的编译环境,所以做过这个事儿。
    ultimate42
        6
    ultimate42  
    OP
       50 天前 via Android
    @zengxs 感觉直接用 gtar 的话,如果换成 wsl 或者别人的电脑,去执行这个脚本还得额外安装先一个 gtar 吧
    我现在想到的是先在 shell 里先判断是否安装了 gtar ,如果安装了就设置 alias tar='gtar',这样没有安装 gtar 脚本也能执行下去,不过不管怎么样做,都挺奇怪就是了
    ultimate42
        7
    ultimate42  
    OP
       50 天前 via Android
    @SGL 我之前也是在 mac 上打包镜像的,不过打包和传输镜像都挺耗时间,网不好的时候传镜像到国外的 vps 非常慢,所以 web 项目我就索性直接传压缩包了
    zengxs
        8
    zengxs  
       50 天前
    @ultimate42 可以 uname -s 判断下系统是否是 macOS ,动态选择 tar 命令

    if [ "$(uname -s)" == "Darwin" ]; then
    TAR=gtar
    else
    TAR=tar
    fi

    $TAR .....
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   5667 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 06:11 · PVG 14:11 · LAX 23:11 · JFK 02:11
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.