Дата поста: 01-04-2019
При развертывании нового сервера часто бывает, что кодировка по-умолчанию отличается от UTF-8. Иногда бывает, что нужно сменить локаль на английскую, например буквы в терминале заменяются знаками вопроса. Данная проблема решается довольно просто.
Узнать какая кодировка установлена в CentOS 7 в данный момент
Проверяем на что настроена текущая консоль:
# localectl status
Если вы получили примерно такой ответ, то ваша система НЕ использует кодировку UTF-8
System Locale: n/a
VC Keymap: n/a
X11 Layout: n/a
Получить список доступных кодировок CentOS 7
Чтобы получить список доступных кодировок для консоли выполните следующую команду:
# localectl list-locales
Как установить нужную кодировку UTF-8 в CentOS 7
Чтобы применить кодировку UTF-8 в консоли CentOS 7 и выбрать английский язык в качестве системного используйте следующую команду:
# localectl set-locale LANG=en_US.UTF-8
После чего перезагружаем сервер и проверяем настройки. Для данного примера вывод будет выглядеть так:
localectl status
System Locale: LANG=en_US.UTF-8
VC Keymap: us
X11 Layout: us,ru
X11 Variant: ,
X11 Options: grp:alt_shift_toggle
Устанавливать русский язык в CentOS 7
Если вам по душе русский язык в системной консоли, то используйте следующую команду (после выполнения команды не забудьте перегрузить сервер):
# localectl set-locale LANG=ru_RU.UTF-8
Альтернативный способ изменения кодировки в CentOS 7
Параметры настройки консоли в CentOS 7 хранятся в файле /etc/locale.conf
. При необходимости вам нужно изменить параметр LANG=en_US.UTF-8
на желаемый.