Я пытаюсь установить монго с помощью документации монго: Установите MongoDB на Ubuntu, никакие ошибки не были упомянуты во время установки. Но когда я работаю mongo
команда после ошибки была отображена в терминале.
Неудавшаяся глобальная инициализация: Недопустимый BadValue или никакая пользовательская локаль установлен. Гарантируйте ЛЕНГУ, и/или переменные среды LC_* установлены правильно
Похож на Ваш locale
, настройки повреждаются или не существуют на этом VM, или по крайней мере что сессия на этом VM. Одна из зависимостей MongoDB ( повышение ) перестанет работать, когда локаль не будет правильно установлена (см. СЕРВЕР 9032 ). Для ссылки перед изменением в СЕРВЕРЕ 9 032 этих проблемы все еще произошли, но посмотрели как это .
Иногда выходить из системы и въезжает задним ходом, может зафиксировать его (только поврежденный для текущей сессии), или можно попытаться работать sudo locale-gen
, чтобы удостовериться, что поколение успешно.
Тем временем, как обходное решение для получения mongo
(или mongod
и т.д.) выполнение, просто устанавливают Ваш LC_ALL
переменная вручную прежде, чем запустить программу:
export LC_ALL=C
mongo
Я также попытался установить MongoDB на Ubuntu 12.04 и получил ту же ошибку на виртуальной машине (XEN). Для меня modifiying /etc/default/locale
добился цели. Я получил его работающий с этими настройками:
LANG=en_US.UTF-8
LANGUAGE=en_US
LC_ALL=en_US.UTF-8
Или, другая рабочая конфигурация была бы (возражайте против кавычек и: en):
LANG="en_US.UTF-8"
LANGUAGE="en_US:en"
LC_ALL="en_US.UTF-8"
обходное решение C Adam с export
также помогло и является, вероятно, более тщательно продуманным ответом.
Хотя другие ответы, предоставленные здесь, решают проблему правильно, следующий вопрос Stackoverflow принес мне к тому, что фактическая проблема при установке MongoDB в Бродячем 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.