Как исправить utf8 в терминале?

У меня новая установка сервера Xenial внутри Virtualbox. Во время установки я выбрал «No Localization» и «C» в качестве языка по умолчанию. Теперь less считает, что каждый файл с нелатинским алфавитом является двоичным, и терминал не будет правильно отображать нелатинские символы.

То, что я пробовал, это раскомментировать строку в /etc/locale.gen и перезапустить sudo locale-gen. Я также попытался установить language-support-* и перенастроить пакет locales. Даже перезагрузка не поможет.

Я уверен, что дело не в SSH, потому что я попытался набрать его и в самом окне Vitrualbox. locale вывод:

LANG=
LANGUAGE=
LC_CTYPE="POSIX"
LC_NUMERIC="POSIX"
LC_TIME="POSIX"
LC_COLLATE="POSIX"
LC_MONETARY="POSIX"
LC_MESSAGES="POSIX"
LC_PAPER="POSIX"
LC_NAME="POSIX"
LC_ADDRESS="POSIX"
LC_TELEPHONE="POSIX"
LC_MEASUREMENT="POSIX"
LC_IDENTIFICATION="POSIX"
LC_ALL=

Содержание /etc/default/locale:

#  File generated by update-locale
#LANG="C"

Выход locale-gen:

$ sudo locale-gen 
Generating locales (this might take a while)...
  en_AG.UTF-8... done
  en_AU.UTF-8... done
  en_BW.UTF-8... done
  en_CA.UTF-8... done
  en_DK.UTF-8... done
  en_GB.UTF-8... done
  en_HK.UTF-8... done
  en_IE.UTF-8... done
  en_IN.UTF-8... done
  en_NG.UTF-8... done
  en_NZ.UTF-8... done
  en_PH.UTF-8... done
  en_SG.UTF-8... done
  en_US.UTF-8... done
  en_ZA.UTF-8... done
  en_ZM.UTF-8... done
  en_ZW.UTF-8... done
  ru_RU.UTF-8... done
  ru_UA.UTF-8... done
Generation complete.

Проблема:

$ LC_TIME=ru_RU.UTF-8 date
(outputs gibberish)

$ file -i README.md
README.md: text/plain; charset=utf-8

$ less README.md
"README.md" may be a binary file. See it anyway?

Есть ли способ исправить это без переустановки?

2
задан 30 November 2017 в 12:16

0 ответов

Другие вопросы по тегам:

Похожие вопросы: