Я не думаю, что использование / etc / fstab будет работать (это не сработало для меня), потому что этот файл обрабатывается до того, как модуль SF будет загружен и не сможет подключить этот ресурс, см. HOWTO: Использование общих папок 1.
Сначала запустите locale, чтобы указать, какие локали в настоящее время определены для текущей учетной записи пользователя:
$ locale
LANG=C
LANGUAGE=
LC_CTYPE=fi_FI.UTF-8
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE=fi_FI.UTF-8
LC_MONETARY="C"
LC_MESSAGES=fi_FI.UTF-8
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=
Затем создайте отсутствующий локаль и перенастройте локали, чтобы заметить:
$ 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.
Теперь вы больше не увидите никаких ошибок!
Сначала запустите locale, чтобы указать, какие локали в настоящее время определены для текущей учетной записи пользователя:
$ locale
LANG=C
LANGUAGE=
LC_CTYPE=fi_FI.UTF-8
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE=fi_FI.UTF-8
LC_MONETARY="C"
LC_MESSAGES=fi_FI.UTF-8
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=
Затем создайте отсутствующий локаль и перенастройте локали, чтобы заметить:
$ 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.
Теперь вы больше не увидите никаких ошибок!
Сначала запустите locale, чтобы указать, какие локали в настоящее время определены для текущей учетной записи пользователя:
$ locale
LANG=C
LANGUAGE=
LC_CTYPE=fi_FI.UTF-8
LC_NUMERIC="C"
LC_TIME="C"
LC_COLLATE=fi_FI.UTF-8
LC_MONETARY="C"
LC_MESSAGES=fi_FI.UTF-8
LC_PAPER="C"
LC_NAME="C"
LC_ADDRESS="C"
LC_TELEPHONE="C"
LC_MEASUREMENT="C"
LC_IDENTIFICATION="C"
LC_ALL=
Затем создайте отсутствующий локаль и перенастройте локали, чтобы заметить:
$ 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.
Теперь вы больше не увидите никаких ошибок!
Я написал сценарий bash для исправления выше проблемы. Вышеуказанные ответы полезны, но установка переменных языка, просто экспортируя значения в переменную оболочки, будет работать только для сеанса. Я надолго решил эту проблему, экспортировав переменные locale в файл .bash_profile. Вы также можете использовать файл /etc/profile вместо .bash_profile.
echo "export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8">>~/.bash_profile
Не забудьте source .bash_profile и следуйте сценарию bash в простом установка.
Я застрял в странном состоянии, когда моя локальная машина установлена на es, и поэтому удаленная машина (через vagrant) была предоставлена в состоянии без обработки. Поэтому мне пришлось использовать руководство export= только для облегчения успешной работы dpkg-reconfigure. Тогда система прекрасна.
export LC_ALL="en_US.UTF-8"
sudo dpkg-reconfigure locales
Это работало для меня, когда у меня была та же проблема (на основе решения, предоставленного dman):
sudo sh -c "echo -e 'LC_ALL=en_US.UTF-8\nLANG=en_US.UTF-8' >> /etc/environment"
Просто добавьте следующее в свой файл .bashrc (если вы используете bash)
export LC_ALL="en_US.UTF-8"
Вы можете попробовать:
export LANGUAGE=ru_RU.UTF-8
export LC_CTYPE=ru_RU.UTF-8
export LC_NUMERIC=ru_RU.UTF-8
export LC_TIME=ru_RU.UTF-8
export LC_COLLATE=ru_RU.UTF-8
export LC_MONETARY=ru_RU.UTF-8
export LC_MESSAGES=ru_RU.UTF-8
export LC_PAPER=ru_RU.UTF-8
export LC_NAME=ru_RU.UTF-8
export LC_ADDRESS=ru_RU.UTF-8
export LC_TELEPHONE=ru_RU.UTF-8
export LC_MEASUREMENT=ru_RU.UTF-8
export LC_IDENTIFICATION=ru_RU.UTF-8
export LC_ALL=ru_RU.UTF-8
, где ru_RU - код вашей страны.
Как сказано здесь в Debian Wiki, вы можете отредактировать /etc/locale.gen и добавить все локали (или раскомментировать их, у меня был список всех локалей, кроме всех тех, которые я использовал в качестве комментариев), которые вы хотите получить вашей системы. Затем выполните
sudo dpkg-reconfigure locales
, чтобы обновить локали в вашей системе. Теперь все локали, которые вы добавили / раскомментировали в /etc/locale.gen, доступны в вашей системе без каких-либо предупреждений.
Они должны исчезнуть после выпуска:
sudo locale-gen en_US en_US.UTF-8
sudo dpkg-reconfigure locales
dpkg-reconfigure перенастраивает пакеты после того, как они уже установлены. Передайте им имена пакета или пакетов для перенастройки. Он будет задавать вопросы конфигурации, так же, как когда пакет был впервые установлен.
Добавление следующего текста в ~/.profile работает для меня:
export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
Я использую 64-битный сервер Ubuntu 16.04 LTS на Linode.
Для Ubuntu 12.10 ни одно из вышеперечисленных действий не было выполнено, кроме решения ratzs. Я рекомендую добавить это в ваш файл /etc/bash.bashrc:
export LC_ALL="en_ZA.UTF-8"
export LC_CTYPE="en_ZA.UTF-8"
Не забудьте выйти из сеанса SSH (или вашего X11), снова и снова войдя в систему. Все эти предложения не сработали для меня, если я не зашел в ...
sudo dpkg-reconfigure vim
появился, чтобы устранить проблему после исправления системных настроек. Я также заметил то же самое, что уже упоминалось: вам может потребоваться отключить / повторно подключить SSH, чтобы сделать видимыми изменения. В моем случае ничего не было предложено (Ubuntu Server 12.04LTS). Что, в конечном итоге, помогло помещать в файл /etc/environment:
LC_ALL=en_US.UTF-8
LANG=en_US.UTF-8
По какой-то причине он отсутствовал. Выходы для локали и других команд выглядели так, как будто они были правильно определены. Другими словами, не считайте само собой разумеющимся, все основные вещи объявляются там, где они должны быть объявлены.
У меня возникла проблема с запуском темы «Agnoster» с oh-my-zsh на моей рабочей станции docker с аналогичными сообщениями об ошибках. (Это быстрее, чем wsl IMO, и я могу подключить docker.sock в этот контейнер через Hyper-V VM, которым управляет Docker For Windows, что позволяет мне делать докеры)
Объединив некоторые из предложений от ответы помогли мне это исправлено.
Я добавил это к своему Dockerfile
RUN apt-get install -y locales
RUN sudo locale-gen "en_US.UTF-8"
RUN echo 'LANG="en_US.UTF-8"' > /etc/profile.d/locale.sh
RUN echo 'LANGUAGE="en_US.UTF-8"' >> /etc/profile.d/locale.sh
RUN echo 'LC_ALL="en_US.UTF-8"' >> /etc/profile.d/locale.sh
То, что сработало для меня в 12.10, было следующим:
apt-get install language-pack-en-base
Это было после того, как dpkg-reconfigure locales не дал никаких результатов.
Для этого есть команда:
sudo update-locale LC_ALL=en_US.UTF-8 LANG=en_US.UTF-8
Обновляет /etc/default/locale с предоставленными значениями.
Это обычная проблема, если вы подключаетесь удаленно, поэтому решение заключается в том, чтобы не перенаправлять ваш язык. Отредактируйте /etc/ssh/ssh_config и закомментируйте строку SendEnv LANG LC_*.
Я написал сценарий bash для исправления выше проблемы. Вышеуказанные ответы полезны, но установка переменных языка, просто экспортируя значения в переменную оболочки, будет работать только для сеанса. Я надолго решил эту проблему, экспортировав переменные locale в файл .bash_profile. Вы также можете использовать файл /etc/profile вместо .bash_profile.
echo "export LANGUAGE=en_US.UTF-8
export LANG=en_US.UTF-8
export LC_ALL=en_US.UTF-8">>~/.bash_profile
Не забудьте source .bash_profile и следуйте сценарию bash в простом установка.
Я застрял в странном состоянии, когда моя локальная машина установлена на es, и поэтому удаленная машина (через vagrant) была предоставлена в состоянии без обработки. Поэтому мне пришлось использовать руководство export= только для облегчения успешной работы dpkg-reconfigure. Тогда система прекрасна.
export LC_ALL="en_US.UTF-8"
sudo dpkg-reconfigure locales
Это работало для меня, когда у меня была та же проблема (на основе решения, предоставленного dman):
sudo sh -c "echo -e 'LC_ALL=en_US.UTF-8\nLANG=en_US.UTF-8' >> /etc/environment"
Просто добавьте следующее в свой файл .bashrc (если вы используете bash)
export LC_ALL="en_US.UTF-8"
Вы можете попробовать:
export LANGUAGE=ru_RU.UTF-8
export LC_CTYPE=ru_RU.UTF-8
export LC_NUMERIC=ru_RU.UTF-8
export LC_TIME=ru_RU.UTF-8
export LC_COLLATE=ru_RU.UTF-8
export LC_MONETARY=ru_RU.UTF-8
export LC_MESSAGES=ru_RU.UTF-8
export LC_PAPER=ru_RU.UTF-8
export LC_NAME=ru_RU.UTF-8
export LC_ADDRESS=ru_RU.UTF-8
export LC_TELEPHONE=ru_RU.UTF-8
export LC_MEASUREMENT=ru_RU.UTF-8
export LC_IDENTIFICATION=ru_RU.UTF-8
export LC_ALL=ru_RU.UTF-8
, где ru_RU - код вашей страны.
Как сказано здесь в Debian Wiki, вы можете отредактировать /etc/locale.gen и добавить все локали (или раскомментировать их, у меня был список всех локалей, кроме всех тех, которые я использовал в качестве комментариев), которые вы хотите получить вашей системы. Затем выполните
sudo dpkg-reconfigure locales
, чтобы обновить локали в вашей системе. Теперь все локали, которые вы добавили / раскомментировали в /etc/locale.gen, доступны в вашей системе без каких-либо предупреждений.
Они должны исчезнуть после выпуска:
sudo locale-gen en_US en_US.UTF-8
sudo dpkg-reconfigure locales
dpkg-reconfigure перенастраивает пакеты после того, как они уже установлены. Передайте им имена пакета или пакетов для перенастройки. Он будет задавать вопросы конфигурации, так же, как когда пакет был впервые установлен.
Добавление следующего текста в ~/.profile работает для меня:
export LANGUAGE=en_US.UTF-8
export LC_ALL=en_US.UTF-8
Я использую 64-битный сервер Ubuntu 16.04 LTS на Linode.
Для Ubuntu 12.10 ни одно из вышеперечисленных действий не было выполнено, кроме решения ratzs. Я рекомендую добавить это в ваш файл /etc/bash.bashrc:
export LC_ALL="en_ZA.UTF-8"
export LC_CTYPE="en_ZA.UTF-8"
Не забудьте выйти из сеанса SSH (или вашего X11), снова и снова войдя в систему. Все эти предложения не сработали для меня, если я не зашел в ...
sudo dpkg-reconfigure vim
появился, чтобы устранить проблему после исправления системных настроек. Я также заметил то же самое, что уже упоминалось: вам может потребоваться отключить / повторно подключить SSH, чтобы сделать видимыми изменения.