Проблемы с Unicode/UTF-8 в сеансе ssh с Ubuntu Server 16.04

Проблемы с Unicode/UTF-8 в сеансе ssh с Ubuntu Server 16.04

У меня есть новая установка Ubuntu Server 16.04, и сейчас я тестирую, как она обрабатывает символы Unicode:

  • У меня есть имя файла, содержащее символ юникода: testā.txt. Если я выбираю его с помощью табуляции, то есть $ rm tes[tab], то команде подбирается правильное имя файла.
  • Если я это сделаю $ ls, я увижу test??.txtв списке файлов
  • Если я добавлю символы Юникода к содержимому файла с помощью $ echo āāā > test.txt, а затем сделаю $ cat test.txt, я получу правильный вывод.
  • Однако если я открою файл в редакторе nano, его содержимое будет выглядеть так: ^ ^ ^.
  • Шестнадцатеричный дамп $ xxd test.txtпоказывает, что символы Юникода сохранены в файле правильно:c481 c481 c481 0a

Терминальная программа, которую я использую (Guake), никогда не имела проблем с символами юникода. В типичной локальной терминальной сессии нет ни одной из проблем, описанных выше.

Призвание env | sort | grep -E '^(LANG(UAGE)?|LC_\w*)='дает

LANG=en_US.UTF-8
LANGUAGE=en_US:en
LC_ADDRESS=lv_LV.UTF-8
LC_IDENTIFICATION=lv_LV.UTF-8
LC_MEASUREMENT=lv_LV.UTF-8
LC_MONETARY=lv_LV.UTF-8
LC_NAME=lv_LV.UTF-8
LC_NUMERIC=lv_LV.UTF-8
LC_PAPER=lv_LV.UTF-8
LC_TELEPHONE=lv_LV.UTF-8
LC_TIME=lv_LV.UTF-8

Это можно исправить с помощью настроек локали сервера? Или есть какой-то параметр, который нужно использовать при инициировании сеанса ssh?

Связанный контент