Mac-Osx

如何在 mac OS X 中 su 到另一個使用者?

  • November 2, 2011

我來自 Linux 世界,不熟悉 OS X 管理員。現在我想 su 到另一個使用者,但它只是不工作……這裡哪裡出了問題?

smallufo@miniserver:~ $ whoami
smallufo
smallufo@miniserver:~ $ su - postgres
Password:
smallufo@miniserver:~ $ whoami
smallufo
smallufo@miniserver:~ $

我輸入了正確的密碼,但為什麼我不能 su 到 postgres?

對不起,如果這是一個愚蠢的問題,但我整晚都被它困住了……

非常感謝 !

su應該在 OS X 中正常工作。@Scott Warren 關於 postgres 使用者 shell 的想法是一種可能的解釋,但 OS X 不使用 /etc/passwd 除非在啟動期間。普通使用者(和組等)儲存在 /var/db/dslocal/nodes/Default/ 下的 .plist 文件中。查看(和修改)它們的簡單方法是使用以下dscl命令:

dscl . -read /Users/postgres  # prints all user attributes
dscl . -read /Users/postgres UserShell # prints just the default shell

如有必要,您可以使用相同的方式設置 shell:

sudo dscl . -create /Users/postgres UserShell /bin/bash

引用自:https://serverfault.com/questions/326735