Debian 中为 root 和其他用户提供不同的终端

Debian 中为 root 和其他用户提供不同的终端

我使用 Debian 6 和终端。当我输入时,su -l我得到如下内容:

root@mycomputer:

作为提示。当我输入时,su -l someuser我收到以下提示:

$

在那里,我无法使用 TAB 自动完成路径,源命令未知等等。如何获取每个用户的根“样式”?这取决于 bash 和 shell 之间的区别吗?

答案1

是的,这取决于使用哪个 shell。默认情况下,新用户帐户的 shell 设置为/bin/shBourne shell,它不支持更高级的功能,例如行编辑、完成等。

使用chsh更改用户的 shell。例如,

chsh -s $(which bash) someuser

会改变某些用户的外壳狂欢。您必须提供 的完整路径-s,并且该路径应在 中列出/etc/shells

我不知道你目前正在使用哪一个root,所以运行echo $SHELL找出答案。(或者,运行getent passwd root;shell 将是最后一个(第 7 个)字段。)

答案2

编辑用户的 .bashrc 并启用 bash 完成或输入. /etc/bash_completion

相关内容