[devel] светлое будущее с UTF-8 и LANG=POSIX для root

Sergei Epiphanov serpiph на nikiet.ru
Чт Ноя 29 12:50:16 MSK 2012


On 29 ноября 2012 10:25 Aleksey Novodvorsky wrote:
> > Попробуйте от любого судоера
> > $ sudo mc
> > $ sudo locale
> 
> Это уже в настроенной системе, а не "из коробки". Если администратор
> настраивает sudo, то может настроить и локализацию так, как ему
> удобно. Из коробки же предлагается su -  и непонятно, зачем
> преднастраивать локализацию root под непреднастроенный sudo.

Я тут думал ответить "смотрите sudoers", но, попробовав сам, оказался в 
недоумении. В /etc/sudoers прописал строку

Defaults env_keep += "LC_CTYPE LC_COLLATE"

После чего пробую:

$ locale
LANG=ru_RU.UTF-8
LC_CTYPE="ru_RU.UTF-8"
LC_NUMERIC="ru_RU.UTF-8"
LC_TIME="ru_RU.UTF-8"
LC_COLLATE="ru_RU.UTF-8"
LC_MONETARY="ru_RU.UTF-8"
LC_MESSAGES="ru_RU.UTF-8"
LC_PAPER="ru_RU.UTF-8"
LC_NAME="ru_RU.UTF-8"
LC_ADDRESS="ru_RU.UTF-8"
LC_TELEPHONE="ru_RU.UTF-8"
LC_MEASUREMENT="ru_RU.UTF-8"
LC_IDENTIFICATION="ru_RU.UTF-8"
LC_ALL=
$ sudo bash -c locale
LANG=
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=
$

У меня уже срывает крышу, так как не понимаю, почему не срабатывает сохранение 
переменных... Или локаль при запуске sudo настраивается как-то ещё, в обход 
этих маневров?

-- 
С уважением, Епифанов Сергей


Подробная информация о списке рассылки Devel