Я пытаюсь установить mongo, используя документацию mongo: Установите MongoDB на Ubuntu, во время установки не были упомянуты ошибки. Но когда я запустил команду mongo, следующая ошибка была отображена в терминале.
Неудачная глобальная инициализация: BadValue Недействительный или не установлен языковой стандарт пользователя. Убедитесь, что переменные среды LANG и / или LC_ * установлены правильноЯ также попытался установить MongoDB на Ubuntu 12.04 и получил ту же ошибку на виртуальной машине (XEN). Для меня модификация /etc/default/locale сделала трюк. Я работал с этими настройками:
LANG=en_US.UTF-8
LANGUAGE=en_US
LC_ALL=en_US.UTF-8
Или другая рабочая конфигурация была бы (помните кавычки и: ru):
LANG="en_US.UTF-8"
LANGUAGE="en_US:en"
LC_ALL="en_US.UTF-8"
Обходной путь Адама С с [ f4] также помогли и, вероятно, более сложный ответ.
Несмотря на то, что другие ответы, приведенные здесь, правильно решают проблему, следующий вопрос Stackoverflow привел меня к тому, какова фактическая проблема, когда MongoDB установлен в Vagrant VM и получает вышеуказанную ошибку:
Эта проблема возникает, потому что хост-машина ставит локаль гостю через ssh.Таким образом, вопрос , предлагающий переопределить локаль хоста в Vagrantfile, решает его постоянно с помощью только одной строки:
Vagrant.configure(2) do |config|
ENV['LC_ALL']="en_US.UTF-8"
# ...
end
Также обратите внимание на комментарии об этом он не изменяет фактическое значение LC_ALL на хосте.
На основе этого https://askubuntu.com/a/227513/59618 вы можете просто:
$ sudo locale-gen "en_US.UTF-8"
Generating locales...
en_US.UTF-8... done
Generation complete.
$ sudo dpkg-reconfigure locales
Generating locales...
en_US.UTF-8... up-to-date
Generation complete.