Useradd 和 su 奇怪的终端行为

Useradd 和 su 奇怪的终端行为

我使用 useradd 创建了一个名为 oracle 的用户

之后我使用 su oracle 在终端中只得到 $

您知道为什么终端不是像 oracle@laptophp:~$ 这样的东西而只是一个 $ 吗?

答案1

您可能没有使用 创建新用户useradd -m-m将默认(“骨架”)shell 配置文件从 /etc 复制到新用户主目录。

要解决该问题,请重新创建帐户,或者仅从其他用户帐户或复制.bashrc和文件。.bash_profile.profile/etc/profile/

答案2

你也可以看看PS1环境变量。如果您输入export PS1="$ ",您的提示符将只是一个美元符号。

答案3

我也遇到过同样的问题。原来有一个“useradd”的替代方法,叫做“adduser”。它会自动复制框架和所需的一切。

adduser <username>

此代码提示您填写有关用户的信息,并复制所有需要的信息(以及设置用户目录)。

答案4

在我的新用户下运行env命令后,我注意到:

SHELL=/bin/sh

如果您运行该useradd命令,useradd -ms /bin/bash [USERNAME]它应该会按预期工作。

-s允许您修改默认 shell。

相关内容