我尝试在 Linux Debian 安装中安装便携版texlive
(在 SSD 卡上)。它启动正常,安装了一些文件和目录,但随后出现错误消息:
Installing [0001/3701, time/total: ??:??/??:??]: 12many
[376k]
tar: tex/latex/12many/12many.sty: Cannot change
ownership to uid 0, gid 0: Operation not permitted
tar: tlpkg/tlpobj/12many.tlpobj: Cannot change ownership
to uid 0, gid 0: Operation not permitted
tar: Exiting with failure status due to previous errors
我以 的身份执行此操作sudo
,因此权限应该不是问题。此外,12many.sty
已安装,"rw"
我和"r"
其他人的所有权均归其所有。
有什么建议么?
答案1
解释一下原因:tar
我们分发的文件将 uid/gid 设置为 0,这是唯一可以在所有系统上使用的合理 uid/gid。tar
在解包阶段,以 root 身份运行时尝试恢复 uid/gid,但以用户身份运行时则不行。tar
手册页显示:
-p, --preserve-permissions, --same-permissions
extract information about file permissions (default for superuser)
现在,如上所述,如果您尝试在 vfat 系统上执行此操作,则 tar 在以 root 身份运行时将会退出,而以用户身份运行时则会正常。