74

После установки Bash в Windows 10 я заметил, что он использует шведский в приложениях Linux. Моя установка Windows 10 на английском языке.

Я попытался переустановить bash после изменения языка ввода по умолчанию на английский, используя

lxrun /uninstall /full

lxrun /install

Но он все еще использует шведский текст в приложениях linux, например, в nano.

Так как же заставить принудительно установить подсистему Linux с английским языком?

3 ответа3

115

Установка Windows Subsystem for Linux (WSL) должна автоматически установить языковой стандарт Ubuntu в соответствии с языковым стандартом вашей установки Windows. Вы можете изменить локаль Ubuntu вручную, используя оболочку.

  1. Запустите эту команду в bash.exe, чтобы изменить язык на американский английский:

    sudo update-locale LANG=en_US.UTF8
    

    Если вы получаете sudo: unable to resolve host ошибку хоста при каждом запуске sudo ,

    • Убедитесь, что у вас установлено имя хоста (с помощью команды hostname ).

      • Если он не установлен, добавьте его в файл /etc/hostname .
      • Убедитесь, что /etc/hostname содержит только имя хоста.

      Отредактируйте файл с помощью sudoedit /etc/hostname (при условии, что вы можете заставить это работать); увидеть это

    • Убедитесь, что ваш файл /etc/hosts содержит записи для вашего фактического имени хоста (пишется точно так же) и / или localhost .  Опять же, используйте sudoedit .

    См. Сообщение об ошибке при запуске sudo: невозможно разрешить хост для получения дополнительной информации.

  2. bash.exe чтобы изменения вступили в силу.
  3. Если это не помогает, попробуйте перезапустить службу:

    sc stop  lxssmanager
    sc start lxssmanager
    

Если вы хотите узнать больше о bash в WSL, вы можете прочитать FAQ от Microsoft.

1

Вместо переустановки bash добавьте следующую строку в файл ~/.bashrc

LANG=c

Тогда вы получите английский язык Bash.

1

В этом руководстве описаны разные способы. Поскольку в этом случае мы используем Ubuntu, выберите соответствующие параметры. Резюме:

  • Изменить локаль только для текущего сеанса: LANG=en_US.UTF-8
  • Постоянно измените локаль для текущего пользователя: добавьте LANG=en_US.UTF-8 в ~/.bashrc
  • Изменить язык системы по умолчанию: используйте LANG=en_US.UTF-8 в
    /etc/default/locale

Согласно locale -a в моей системе по умолчанию доступны следующие английские локали: C , C.UTF-8 , en_US.utf8 .

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .