2012-02-20 3 views
0

У меня есть виртуальный сервер с ubuntu в AWS. Я создал несколько пользователей на моем сервере. Когда я нахожу ssh на сервере как пользователь root (ubuntu), я могу использовать автозавершение bash для основных команд и истории bash. Но когда я вхожу в систему как другой пользователь, он не работает? Есть ли что-то, что мне нужно сделать, чтобы исправить это?ssh терминал не автозаполняет или сохраняет историю команд

+1

Может быть другие пользователи имеют '/ bin/sh' в качестве своей оболочки входа? Попробуйте 'chsh' в этом случае. – tripleee

+1

'echo $ BASH_VERSION', чтобы узнать, используете ли вы' bash'. Если вы этого не сделали, и вы хотите, и вы не хотите менять оболочку текущего пользователя по умолчанию (что делает 'chsh'), запустите' bash -l'. Конечно, если вы * * хотите изменить стандартную оболочку входа, 'chsh' - это способ сделать это. –

+0

Я проверил, и я не бегу bash. Есть ли способ сделать мой bash по умолчанию? Я хочу ssh на сервер и по умолчанию использовать bash. – viper

ответ

1

По the Bash Reference Manual, §9.1: Bash History Facilities:

Когда -o history опции к set встроенной команды включена (см The Set Builtin), оболочка обеспечивает доступ к истории в команды, список команд, ранее набран.

Итак, я попробуйте запустить

set -o history 

и увидеть, если что фиксирует это. Если да, то вы, вероятно, захотите добавить это к сценариям входа других пользователей.

(Обратите внимание, что в первую очередь set -o history контролирует ли добавлены команды в истории, так что проверить это адекватно, вы хотите запустить:

set -o history 
echo foo 
echo !! 

, чтобы подтвердить, что он печатает echo foo.)

Смежные вопросы