1

Я использую PuTTY для подключения к своему серверу, где у меня есть две учетные записи. Одна учетная запись дает мне цветной терминал и корректно реагирует на клавиши home/end, в то время как другая учетная запись дает мне черно-белое приглашение, а клавиши home/end производят ~ s. Обе учетные записи имеют одинаковый файл .bashrc, и параметры PuTTY идентичны, за исключением указанного имени пользователя.

Может кто-нибудь, пожалуйста, помогите мне понять, что вызывает это?

редактировать
Чтобы исправить ключи Home/End, мне нужно было добавить /etc/inputrc и /lib/x86_64-linux-gnu/libreadline.so. * к доступным файлам в тюрьме, спасибо указателям grawity.

Чтобы исправить проблему с подсказкой цвета, используя стандартный .bashrc, мне нужно было также добавить /usr/bin/tput в тюрьму.

1 ответ1

0

Терминал ведет себя так же. Но нажатия клавиш интерпретируются и подсказки печатаются не самим терминалом, а запущенными в нем программами - прежде всего оболочкой.

Ваши две учетные записи могут быть настроены на использование разных оболочек для входа - одна использует bash (или, может быть, zsh), другая, вероятно, установлена в обычный /bin /sh.

Используйте getent passwd USERNAME чтобы проверить настроенную оболочку для этой учетной записи, и chsh чтобы установить ее.


Кроме того, даже в bash/zsh формат приглашения и ключевая информация читаются из внешних файлов.

  • Подсказка, а также псевдонимы, которые включают цвета для ls, настраиваются в файлах "profile" и "bashc". А именно /etc/bashrc (или аналогичный) и ~/.bashrc .

  • Ключи распознаются readline, который в основном использует базу данных ncurses "terminfo" /usr/share/terminfo но также имеет различные пользовательские настройки в /etc/inputrc .

    (Zsh использует свой собственный zshzle, я не знаю, какие все файлы ему нужны, но я уверен, что он все равно требует DB terminfo.)

Для закрытых учетных записей, убедитесь, что все эти файлы доступны. При необходимости используйте strace или аналогичные инструменты (фермы и т.д.), Чтобы увидеть, какие файлы загружаются оболочкой.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .