![当我使用 cigwin 将文件复制到 Unix 主机(RedHat、AIX)时,UID 设置为 544,GID 设置为 513](https://linux22.com/image/1365728/%E5%BD%93%E6%88%91%E4%BD%BF%E7%94%A8%20cigwin%20%E5%B0%86%E6%96%87%E4%BB%B6%E5%A4%8D%E5%88%B6%E5%88%B0%20Unix%20%E4%B8%BB%E6%9C%BA%EF%BC%88RedHat%E3%80%81AIX%EF%BC%89%E6%97%B6%EF%BC%8CUID%20%E8%AE%BE%E7%BD%AE%E4%B8%BA%20544%EF%BC%8CGID%20%E8%AE%BE%E7%BD%AE%E4%B8%BA%20513.png)
当我使用 cigwin 将文件复制到我的 Linux 机器时,用户 ID 和组 ID 始终设置为 544 和 513。
我希望对于 RedHat 来说它是“root” “root” 而对于 AIX 来说它是“root” “system”。
我认为我需要对 /etc/passwd 和 /etc/group 进行一些更改。但无法找出确切正确的更改?
答案1
当您以 root 身份解压 tar 文件时(使用 tar 命令),它将写出文件,并保留文件被归档时的原始权限和所有者。由于您可能没有将 userid 和 groupid 分别设置为 544 和 513 的用户或组,因此 ls 将显示数字 userid。
来自 tar 手册页:
-p (x mode only) Preserve file permissions. Attempt to restore the
full permissions, including owner, file modes, file flags and
ACLs, if available, for each item extracted from the archive. By
default, newly-created files are owned by the user running tar,
the file mode is restored for newly-created regular files, and
all other types of entries receive default permissions. If tar
is being run by root, the default is to restore the owner unless
the -o option is also specified.