linux:/home/user 的所有者更改为整数;为什么?

linux:/home/user 的所有者更改为整数;为什么?

我的 AWS 实例上的 mysql 用户的所有者已从用户名更改为数字。该数字未在 passwd、group、shadow 或 gshadow 中列出。它似乎与已安装的 perl 模块 Devel-CheckLib-1.16 相关联。

这些数字代表什么?为什么 /home 中的用户名文件夹会被更改为由“1002”所拥有?

乔·怀特

答案1

类似这样的数字1002表示拥有该文件的用户的用户 ID。它显示为 ID 而不是用户名的原因通常是因为系统无法将其解析为passwdshadowgroup等中的现有用户。您还可以使用类似ls -n这样的命令列出所有具有 ID 而不是名称的文件。

这种情况通常发生在用户帐户被删除或重新创建(使用新 ID)时,或者该文件由另一个系统上具有该 ID 的用户创建时。

在 Linux 中,新创建的用户分配的 ID 从 500 开始(OS X、RHEL),其他用户从 1000 开始(openSUSE、Debian)。您的用户1002可能是系统上创建的第三个用户,但这取决于用户来自哪里。

答案2

当拥有文件或目录的用户在系统中不存在时,就会发生这种情况。您运行了一些更改此目录所有权的操作。因此,请返回并使用以下命令更改所有权:

chown -R user:group /home/path

另一种方法是用这个 ID 创建新用户(在本例中为 1002)

useradd -u 1002 mysql

(例如)

相关内容