До сегодняшнего дня забивал на русификацию консоли UTF-8, во времена старых версий FreeBSD — это было непросто сделать, да и юникод в шелле использовать стал совсем недавно. Но как оказалось — это совсем несложно, вдобавок решил дополнить заметку локализацией шелла.
Добавляем в файл /boot/loader.conf
kern.vty=vt
Добавляем в файл /etc/rc.conf способ переключения раскладки в консоли клавишами CTRL+SHIFT
keymap="ru.win"
Проверяем тип консоли в файле /etc/ttys, должно быть xterm
ttyv0 "/usr/libexec/getty Pc" xterm on secure
Редактируем класс «russian» в файле /etc/login.conf, должно получиться следующее:
russian|Russian Users Accounts:\ :charset=UTF-8:\ :lang=ru_RU.UTF-8:\ :tc=default:
Обновляем /etc/login.conf.db командой:
cap_mkdb /etc/login.conf
Локализуем shell, я использую tcsh, для него редактируем файл ~/.cshrc, добавив в него две следующие строки:
setenv LANG ru_RU.UTF-8 setenv MM_CHARSET UTF-8
Пользователю необходимо прописать класс russian, командой:
pw user mod user_name -L russian
Где user_name — имя пользователя
При создании нового пользователя можно сразу прописать нужный нам класс командой
pw useradd user_name -L russian
Вот и все, перезайдите в shell, для локализации терминала, консоль русифицируется после перезагрузки системы.