我刚刚使用“userdel”删除了一个用户,但没有删除其主目录。删除后,我创建了一个新用户,有自己的主目录。
让我感到奇怪的是,新用户获得了已删除用户的 UID(最后一个 UID,加 1)。
因此,新用户还拥有已删除用户的文件的所有权和完全权限!
这是正常行为吗?除了每次创建新用户时指定 UID 之外,是否有关于如何防止这种情况的最佳实践?
(在 Linux Mint 17 上测试并在 OpenSuse 13.1 上验证)
答案1
如果删除用户帐户,则该用户不再存在。用户 ID 被重用是完全正常的:没有任何东西可以将该用户 ID 与任何其他未使用的用户 ID 区分开来。
如果该帐户仍然拥有文件,则该帐户仍然存在,因此您需要保留它。不要删除用户数据库中的条目,将其标记为禁用。在 Linux 上:
usermod --expiredate 1 --lock --shell /dev/null
当您确定要删除该帐户时,请首先确保已删除属于该帐户的所有文件(find -user
可能会有所帮助)。然后删除带有 的帐户userdel
。
如果用户有专用组,请记住也将其删除。
答案2
unix 不适用于用户/组,它适用于 uid/gid,您更改 uid/gid,请使用您的主目录修复新的 uid/gui:例如:
chown 1002.1002 yourdir -R