При подключении с ПК с Windows 7 через SSH к серверу Ubuntu с помощью PuTTY я получаю некоторые ошибки на экране:
Т.е. это:
- «Двойное рисование» выделения внутри Midnight Commander (MC).
- Другие символы, такие как линейные элементы, отображаются как неправильные символы (например, «â» вместо «|»).
Я подключился к тому же серверу Ubuntu с терминалом и SHH от Mac OS X и не получаю эти искажения экрана (т.е. все выглядит и работает правильно). Я уже пытался поиграть с настройками шрифта в PuTTY, изменив его с Courier New на Consolas, но без удачи.
Поэтому мой вопрос:
Как настроить PuTTY для правильного отображения специальных символов, а не для двойного рисования / перезаписи линий экрана?
Ответы:
Вы почти наверняка установили неправильный набор символов в настройках PuTTY .
Проверьте набор символов в удаленной системе, выполнив команду:
Это должно вернуть что-то вроде:
Поэтому проверьте настройки PuTTY в разделе « Перевод» и убедитесь, что вы
UTF-8
установили их в качестве набора символов.Вам также может понадобиться настроить параметры рисования линий, но это, вероятно, маловероятно.
источник
NCURSES_NO_UTF8_ACS=1
[подробнее ]locale
возвратов уPOSIX
вас, вероятно, отключен usePAM в конфигурации sshdPOSIX
, введитеupdate-locale LANG=en_US.utf8
в командной строке - thomas-krenn.com/de/wiki/Locales_unter_Ubuntu_konfigurierenУ меня была проблема с
aptitude
программой Debian, хотя у меня был набор символов UTF-8. Для меня работало то, что я установил 'Соединение> Данные>' Строка типа терминала 'в' putty 'вместо' xterm '- очевидно, Putty игнорирует последовательность символов для переключения в режим рисования: http: //www.chiark.greenend .org.uk / ~ sgtatham / шпатлевка / лист желаний / utf8-плюс-vt100.htmlисточник
Также, если UTF-8 настроен неправильно, вы можете запустить его как mc -ac .
Кредиты: http://blog.acsystem.sk/linux/midnight-commander-utf8-line-drawing-characters-problem
источник
Двумя основными факторами являются Window / Translation UTF-8 в настройках putty и locale в Linux, как указано здесь и во многих других местах.
Кроме того, это может помочь в putty для установки строки Connection / Data / Terminal-type в putty , и / или в Linux в
export NCURSES_NO_UTF8_ACS=1
. Эти два также упоминаются в нескольких местах.Но: вы все равно можете получить блоки для определенных символов, потому что стандартные шрифты, такие как Courier и Lucida Console, не имеют всех символов Unicode. Загрузите и установите http://dejavu-fonts.org/wiki/Download и установите putty для его использования.
Этот последний трюк был необходим для того, чтобы я
noping
(рекомендовал!) Показывал все графические символы.источник
export NCURSES_NO_UTF8_ACS=1
работал лучше всего для меня. Мне просто нужно помнить, чтобы использовать эту-E
опциюsudo
при запуске,iftop
чтобы сохранить настройки среды.sudo -E iftop
В моем случае (Ubuntu 14.04) проблема была вызвана отсутствием
запись в / etc / ssh / sshd_config как /etc/pam.d/sshd Настройка pam по умолчанию отвечает за загрузку / etc / default / locale в среду пользователя.
источник
Для всех вас, бедных старых парней VMS, которые заканчивают здесь:
работал на меня.
источник
Я искал много решений для этого при использовании компьютера с докером (и локали, и на компьютерах, настроенных системным администратором). В моей Putty все было нормально (у меня было
UTF-8
), я использовал другой SSH-клиент и имел точно такую же проблему.Бег:
решал проблему (но не полностью), и я искал полное решение.
Прочитав много предложений, я наконец нашел тот, который решил мою проблему.
В терминале при запуске:
проверьте, какую локаль вы указали. У меня была
C
локаль по умолчанию .Чтобы проверить все установленные языковые настройки, запустите
locale -a
У меня например:
по умолчанию.
Решением является экспорт
LANG
переменной сC.UTF-8
локалью, например, так:Очевидно, вы можете добавить его,
.bashrc
чтобы он автоматически устанавливался в вашем профиле.источник
Другая причина, как-то связанная с pam, может повлиять на хосты с аутентификацией powerbroker / pbis / likewise.
grep /etc/pam.d для появления lsass:
если вы видите в выводе что-то вроде:
тогда это, вероятно, коренная причина проблемы. Быстрое решение заключается в замене «достаточного» на «необязательный» рядом с модулем pam_lsass, чтобы оно выглядело следующим образом:
/etc/pam.d/common-session (или другой файл с похожей записью - их может быть немного), вероятно, включается в /etc/pam.d/sshd до загрузки pam_env, поэтому, если обработка модулей pam завершена прежде чем перейти к pam_env, / etc / default / locale не загружается в пользовательской среде, и у вас искаженные символы.
источник
Спустя 15 лет я снова разозлился и снова погуглил, нашел это, выбрал
и это исправило.
источник
Мне пришлось установить на странице « Окно → Перевод» набор символов:
Тогда, и только тогда, символы линеек выглядели правильно.
источник
Запуск mc таким образом (установите для локали en) работает для меня:
источник
то, что работало для меня, было "Соединение, Данные, Терминал-тип string = ansi" плюс "Окно, Перевод, Удаленный набор символов = Использовать кодировку шрифта" тогда
set TERM=ansi
на стороне Unix.PS. Не забудьте отключить умные кавычки, если вы вынуждены использовать MS-Word.
источник
Моя проблема была в том, что замазка настроена как UTF-8, но удаленная система - ISO-8859-1
Западная Европа, поэтому я изменил это на шпатлевке, и все работало нормально.
Скриншот замазки
источник