sudo tar 将提取的文件所有权更改为未知用户

ras*_*orp 10 users root tar permissions files

我正在运行这个命令:

$ sudo tar xvzf nexus-latest-bundle.tar.gz
Run Code Online (Sandbox Code Playgroud)

提取的文件属于未知 (1001) 用户:

drwxr-xr-x 8     1001     1001      4096 Dec 16 18:37 nexus-2.12.0-01
drwxr-xr-x 3     1001     1001      4096 Dec 16 18:47 sonatype-work
Run Code Online (Sandbox Code Playgroud)

正常配置下不应该是root所有者吗?

我正在处理从 AWS AMI 复制的 linux 安装。

Tho*_*key 16

以 root 身份提取文件时,tar 将使用原始所有权。您可以使用--no-same-owner选项覆盖它(或者,-o)。

您的 tar 文件引用了您提取它的系统上不存在的用户/组。

如果您以自己的身份(非特权用户)提取文件,则只能创建自己拥有的文件。

GNU tar 手册说:

--same-owner
提取存档时,tar 将尝试保留在 tar 存档中指定的所有者,并存在此选项。这是超级用户的默认行为;此选项仅对普通用户有效。请参阅处理文件属性部分。

  • @raspacorp:作为非 root 用户,您无权创建具有除您自己以外的任何所有权的文件。因此,根据需要,文件是由您作为所有者创建的。 (2认同)