希望这里有一个简单的问题,我不知道为什么在添加新帐户并登录时 $ 处没有用户名?
Welcome to Ubuntu 12.04.3 LTS (GNU/Linux 3.2.0-23-generic-pae i686)
* Documentation: https://help.ubuntu.com/
The programs included with the Ubuntu system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.
Ubuntu comes with ABSOLUTELY NO WARRANTY, to the extent permitted by
applicable law.
You have mail.
$
答案1
如果您使用添加新帐户,useradd
则可能会将新用户的登录 shell 设置为 /bin/sh,在 Ubuntu 中,这是 dash shell 的符号链接。Dash 是一个更简单的 shell,它不读取 ~/.bashrc 文件,也不会设置用户@主机命令行提示符。您可以通过查看 /etc/passwd 文件或使用
getent passwd username
bash
您可以使用以下方式将默认 shell 更改为更常用的 shell
chsh -s /bin/bash
如果你以要更改其 shell 的用户身份登录,或者
sudo chsh -s /bin/bash username
更改另一个帐户的登录 shell。为了防止这种情况再次发生,您可以useradd
使用-s
或--shell
选项在命令行上指定登录 shell,或者使用更高级别的实用程序adduser
。
答案2
基本的 Bash 提示符只是一个名为 PS1 的变量。此变量通常在 ~/.bashrc 文件中设置。bash shell 在启动时读取该文件并设置变量。如果未在 .bashrc(或 .profile)文件中设置 PS1 变量,则您将没有提示符。在您的例子中,PS1 变量设置为 $:
export PS1="\$"
您可以尝试该变量,例如:
export PS1="\u\$"
export PS1="\u@\h\$"
您将看到提示如何变化。按照您希望提示显示的方式编辑您的 bashrc 文件。有关更多信息,请访问这里。
答案3
正如在另一个问题中看到的那样,它为我解决了这个问题 https://askubuntu.com/a/1064774/212948
如图所示这个 Ubuntu 维基页面,你应该运行
sudo dpkg-reconfigure dash
并选择选项不是用作
/bin/dash
默认 shell。通过这种方式进行更改不仅可以修复符号链接/bin/sh
,还可以配置系统的其他部分以使其正常运行,例如确保man sh
指向 bash 手册页而不是 dash 手册页。