如何在 UbuntuServer 上更改用户

如何在 UbuntuServer 上更改用户

为什么当我尝试切换用户时,我的控制台名称从 (%username%@laba2docker) 更改为 ($)。在此模式下我没有自动完成功能。我该如何修复?

在此处输入图片描述

答案1

“花哨”的提示和完成是 shell 的功能 - 它看起来像您的普通用户正在使用,而当切换到用户bash时,您会得到一个更简单的 shell(很可能dash是默认的) 。/bin/shadmin

默认情况下,该命令的 utli-linux 实现su根据以下规则选择要使用的 shell(来自man su):

       •   the shell specified with --shell

       •   the shell specified in the environment variable SHELL, if the
           --preserve-environment option is used

       •   the shell listed in the passwd entry of the target user

       •   /bin/sh

由于您没有指定 shell--shell或使用该--preserve-environment选项,因此用户的登录 shell 很可能admin已设置为/bin/sh或根本没有设置 - 您可以使用该chsh实用程序来设置或更改它:

  • chsh -s /bin/bash来自admin账户

  • sudo chsh -s /bin/bash admin来自具有适当sudo权限的另一个用户帐户

也可以看看箭头键、Home、End、Tab 完成键在 shell 中不起作用

相关内容