这是我的拓扑:
My laptop ==> Ubuntu Desktop
| | |
User: root & saeed
My server ==> Ubuntu 20.04
| | |
Users: root & ubuntu (I deleted it as I explain below)
步骤:
- 我
tar zvcf back.tar.gz .
在笔记本电脑上运行用户saeed
并创建文件。 root
我通过使用路径示例/home/test
中的用户(不是任何用户的主目录)通过 SFTP 将此文件上传到我的服务器。- 我提取
back.tar.gz
但/home/test
我看到所有文件和目录的所有者都是ubuntu:ubuntu
. - 我删除
ubuntu
了用户并尝试了第三步,但得到了相同的结果。 - 我在我的笔记本电脑中提取
back.tar.gz
了另一个路径,但所有文件的所有者都是saeed:saeed
.
为什么会这样?
以 root 身份提取时,
tar
默认情况下会保留原始所有者 ID。用户saeed
恰好与另一台计算机上的 ID 相同ubuntu
(可能是1000
)。您可以通过运行来检查 IDid saeed
,或者只是id
检查当前用户。如果您不想保留用户 ID,请不要以 root 身份提取或使用该
--no-same-owner
选项。手册中的相关片段:对于使用
--same-owner
.--owner
创建存档时--owner-map
可以使用的相关选项: