Я только что создал нового пользователя в моей системе с помощью useradd -d /home/users/john -m john
(Использование Ubuntu 11.04). Это работало нормально, но когда я сменил john
, мой bash не полностью функционален. То есть он не имеет автозаполнения, я не могу использовать их клавиши со стрелками (например, ВВЕРХ, чтобы получить последнюю команду), и вместо того, чтобы показывать мой текущий каталог, он только показывает $
. Я загрузил, .bashrc
но это, кажется, полностью игнорируется. Что может вызвать это?
PD: этот пользователь уже работает в системе, и я, скорее, не удаляю его и не добавляю снова, если это возможно.
su
илиsu -
?Ответы:
Вероятно, раковины Джона нет
/bin/bash
, но/bin/sh
. В Ubuntu это оболочка, предназначенная для быстрого выполнения сценариев, без каких-либо необычных интерактивных функций, таких как редактирование командной строки. Проверьте последний столбецgrep john /etc/passwd
илиgetent passwd john
. Вы можете запустить,chsh -s /bin/bash john
чтобы изменить оболочку пользователя.источник
/bin/sh
есть символическая ссылка наdash
ie/bin/dash
, так что в конечном итоге это оболочка пользователя/bin/dash
.вы можете прыгать между оболочками, набрав название оболочки
и в следующей строке вы получите следующее приглашение
которая является оболочкой bash. Ваша стрелка вверх и автозаполнение теперь будут работать
источник