是否有可能在 macOS 中根据给定的主目录和 UID 重新创建丢失的帐户?

是否有可能在 macOS 中根据给定的主目录和 UID 重新创建丢失的帐户?

由于我的 PowerMac(使用 macOS 10.9.5 (Mavericks))发生磁盘完全崩溃,我丢失了一个名为 的帐户entry。使用“系统偏好设置 > 用户和组”或终端命令(例如)时找不到它的踪迹。su my_lost_account但是,所有文件仍然存在,具有未命名的 uid,位于仍然正确命名的主目录中。

我是否可以创建一个具有与丢失的帐户完全相同的登录名和 UID 的新帐户,并将已有我想要保留的内容的主目录分配给它?

提前感谢任何线索。

答案1

我相信您可以创建一个特定帐户而不覆盖您的数据。但我强烈建议您在尝试之前先备份您的数据。

要创建具有特定名称和 UID 的新用户,请在命令行中使用 dscl:-

dscl . -create /Users/<user>
dscl . -create /Users/<user> UserShell /bin/bash 
dscl . -create /Users/<user> RealName "<real name>"
dscl . -create /Users/<user> UniqueID "<UID>"
dscl . -create /Users/<user> PrimaryGroupID "<GID>"
dscl . -create /Users/<user> NFSHomeDirectory /Users/<user>
dscl . -create /Users/<user> Password 

上面的最后一个命令将要求您输入密码。

例如,用户“fred”的真实姓名为“Fred Quimby”,UID 为 501,GID 为 20,主目录为 /Users/fred

dscl . -create /Users/fred
dscl . -create /Users/fred UserShell /bin/bash 
dscl . -create /Users/fred RealName "Fred Quimby"
dscl . -create /Users/fred UniqueID "501"
dscl . -create /Users/fred PrimaryGroupID "20"
dscl . -create /Users/fred NFSHomeDirectory /Users/fred
dscl . -create /Users/fred Password

相关内容