从 Mac /etc/passwd 中安全彻底地删除 _postgres 用户

从 Mac /etc/passwd 中安全彻底地删除 _postgres 用户

我正在尝试重新安装 PostgreSQL,因为我根本无法登录。我意识到我很久以前就使用 postgres 网站上的安装程序和 安装了它brew install postgres。我现在已经卸载了这两个:

但是我还有一个_postgres用户留在/etc/passwd

$ grep post /etc/passwd
_postgres:*:216:216:PostgreSQL Server:/var/empty:/usr/bin/false

Mac (10.11 El Capitan) 上没有可用的userdelusermod命令,替代方案似乎过于复杂(但也许必然如此?)

答案1

使用命令brew remove postgresql。或者手动调查卸载脚本。

编辑:你尝试过这个吗?

  • 退出 Postgres.app 并将其拖到垃圾箱

  • 删除数据目录(默认位置:~/Library/Application Support/Postgres)

  • 通过执行以下命令删除 Postgres.app 的首选项:defaults delete com.postgresapp.Postgres2

  • 删除命令行工具的 $PATH 配置(可选):sudo rm /etc/paths.d/postgresapp

编辑 2:要从命令行删除用户,请启动到单用户模式。 启动时按住 Command-s。 检查文件系统:/sbin/fsck -fy 如果没有其他错误,请挂载文件系统:/sbin/mount -uw / 启动目录服务:launchctl load /System/Library/LaunchDaemons/com.apple.DirectoryServices.plist 请注意,单用户模式说使用 com.apple.DirectoryServicesLocal.plist,但是那不起作用 - 这个起作用了。 查找用户所属的组:dscl . -list /groups GroupMembership | grep username - 对用户自己的组之外的每个组重复此操作。 删除与用户名对应的组:dscl . delete /groups/username(这可能不是必需的 - 您可能会收到组不存在的错误;您可以忽略它并继续)。 删除用户帐户:dscl delete /users/username 此时,您可能希望删除或存档 /Users 中的用户文件夹。您可能希望删除 /var/db 中的 .AppleSetupDone 文件,以便下次启动时运行设置助理。键入 reboot 以重新启动系统或键入 shutdown -h now 以关闭系统。

相关内容