至少在 Mac OS X v10.5(我认为也是 10.4,但我记不太清了)中,您考虑的方法会起作用:只需使用 System Prefs 创建一个具有相同短名称的新用户,它会询问您是否要使用现有的主文件夹。如果您说是,它会建立新帐户,并将主文件夹分配给新用户。(请注意:首先进行备份几乎总是一个好主意,尤其是在按照互联网上一些随机小丑的建议行事时......)
有一些限制:如果新用户的密码与旧用户的密码不同,则用户的登录钥匙串在登录时不会自动解锁(您可以在钥匙串访问中更改此设置)。此外,新用户不会分别为文件和 Web 共享设置他们的 Public 和 Sites 文件夹(如果你关心,克隆和调整 /var/db/dslocal/nodes/Default/config/ 中的一些其他用户的配置文件SharePoints/ 和 /etc/apache2/users/)。
OS X 有一个名为 createhomedir 的脚本,它在登录时运行以检查是否存在并根据需要创建用户主目录。在我的脑海中,我不确定遇到预先存在的主目录时的行为是什么。
只需添加新用户,然后更改旧主目录的所有权,您可能是安全的。只要用户不登录,它就可能不会被覆盖。但是,可以肯定的是,将其移开以防万一是个好主意。创建用户后,删除自动创建的所有内容并将旧目录移回。在完成之前,您应该避免让他们登录。
用户的新 uid 很可能与他们的旧 uid 不匹配,因此他们的主目录将不归他们所有。你可以用 chown 来解决这个问题:
至少在 Mac OS X v10.5(我认为也是 10.4,但我记不太清了)中,您考虑的方法会起作用:只需使用 System Prefs 创建一个具有相同短名称的新用户,它会询问您是否要使用现有的主文件夹。如果您说是,它会建立新帐户,并将主文件夹分配给新用户。(请注意:首先进行备份几乎总是一个好主意,尤其是在按照互联网上一些随机小丑的建议行事时......)
有一些限制:如果新用户的密码与旧用户的密码不同,则用户的登录钥匙串在登录时不会自动解锁(您可以在钥匙串访问中更改此设置)。此外,新用户不会分别为文件和 Web 共享设置他们的 Public 和 Sites 文件夹(如果你关心,克隆和调整 /var/db/dslocal/nodes/Default/config/ 中的一些其他用户的配置文件SharePoints/ 和 /etc/apache2/users/)。
我不确定这种确切的情况,但我可以告诉你,我肯定做了相反的事情。我们已重命名用户主文件夹以匹配现有用户帐户短名称。您可能可以将用户的主文件夹重命名为某个临时名称,以确保它不会被覆盖。然后您可以创建帐户,以另一个管理员用户(或 root)身份重新登录并交换用户文件夹。
编辑:如果您在执行此操作后看到权限错误,您可能需要运行上述 chown 命令。