Jak zmienić język podsystemu Linux w systemie Windows 10 (WSL)?

78

Po zainstalowaniu Bash w Windows 10 zauważyłem, że używa on szwedzkiego w aplikacjach Linux. Moja instalacja systemu Windows 10 jest w języku angielskim.

Próbowałem ponownie zainstalować bash po zmianie domyślnego języka wprowadzania na angielski za pomocą

lxrun /uninstall /full

lxrun /install

Ale nadal używa szwedzkich tekstów w aplikacjach Linux, np. W nano.

Jak więc zmusić system Linux do instalacji z językiem angielskim?

Użytkownik0
źródło

Odpowiedzi:

119

Instalacja Podsystemu Windows dla systemu Linux (WSL) powinna automatycznie ustawić ustawienia regionalne Ubuntu, aby były zgodne z ustawieniami instalacji systemu Windows. Możesz zmienić ustawienia regionalne Ubuntu ręcznie za pomocą powłoki.

  1. Uruchom to polecenie w bash.exe, aby zmienić język na angielski angielski:

    sudo update-locale LANG=en_US.UTF8

    Jeśli pojawi się sudo: unable to resolve hostbłąd przy każdym uruchomieniu sudo,

    • Sprawdź, czy masz ustawioną nazwę hosta (za pomocą hostnamepolecenia).

      • Jeśli nie jest ustawiony, dodaj go do /etc/hostnamepliku.
      • Upewnij się, że /etc/hostnamezawiera tylko nazwę hosta.

      Edytuj plik za pomocą sudoedit /etc/hostname (zakładając, że możesz go uruchomić); zobacz to .

    • Upewnij się, że /etc/hostsplik zawiera wpisy dotyczące Twojej rzeczywistej nazwy hosta (pisownia dokładnie taka sama) i / lub localhost. Ponownie użyj sudoedit.

    Zobacz komunikat o błędzie podczas uruchamiania sudo: nie można rozpoznać hosta, aby uzyskać więcej informacji.

  2. Uruchom ponownie, bash.exeaby zmiany odniosły skutek.
  3. Jeśli to nie rozwiąże problemu, spróbuj ponownie uruchomić usługę:

    sc stop  lxssmanager
    sc start lxssmanager
    

Jeśli chcesz dowiedzieć się więcej o bash w WSL, możesz przeczytać FAQ firmy Microsoft .

Animesh Patra
źródło
Wydaje się, że aby zmiana zaczęła obowiązywać, konieczne jest również ponowne uruchomienie usługi: „sc stop lxssmanager”, „sc start lxssmanager”. Wystąpił błąd podczas uruchamiania cmd-locale aktualizacji: „sudo: nie można rozpoznać hosta ...”.
Użytkownik 0
3
„Instalacja WSL automatycznie wykryje ustawienia narodowe Ubuntu w celu dopasowania do ustawień regionalnych instalacji Windows”. Wolę powiedzieć „źle wykrywa ”. Mam fiński, mam wszystkie ustawienia w języku angielskim, z wyjątkiem układu klawiatury i formatu daty. To naprawdę nie jest fińskie miejsce w mojej książce.
Sami Kuhmonen,
Wystąpił błąd sudo: unable to resolve hostpodczas próby uruchomienia tego polecenia. Działało, gdy uruchomiłem go bez sudo.
sgtfrankieboy
@ sgtfrankieboy Bez tego nie przetrwa sudo. Zobacz to pytanie i jego odpowiedzi.
kot
2
LANG = en_US.UTF-8, brakuje „-”
eee
1

Zamiast ponownie instalować bash, dodaj następujący wiersz do pliku ~/.bashrc

LANG=c

Potem dostajesz bash w języku angielskim.

Klas Mellbourn
źródło
1

W niniejszej instrukcji opisano różne sposoby. Ponieważ w tym przypadku używamy Ubuntu, wybierz odpowiednie opcje. Podsumowanie:

  • Zmień ustawienia regionalne tylko dla bieżącej sesji: LANG=en_US.UTF-8
  • Zmień ustawienia regionalne na stałe dla bieżącego użytkownika: dodaj LANG=en_US.UTF-8do~/.bashrc
  • Zmień domyślne ustawienia regionalne systemu: użyj LANG=en_US.UTF-8w
    /etc/default/locale

Według locale -anastępujących lokalizacjach angielskim są dostępne w moim systemie domyślnie: C, C.UTF-8, en_US.utf8.

ov
źródło
0

Jeśli nie masz jeszcze zainstalowanego języka, musisz użyć:

    sudo apt-get install language-pack-en language-pack-en-base manpages

zmieniając „en” na ustawienia regionalne, a następnie użyj polecenia, aby przełączyć ustawienia regionalne.

Aeglas
źródło
0

Żadne z nich nie działało dla mnie. Uruchamianie Ubuntu18.04.2 LTS (Bionic Beaver) na kompilacji WSL 16299.

Obejściem dla mnie było rozwiązanie Lri :

$ sudo apt install gcal
$ alias cal='gcal --starting-day=1'
Tony Barganski
źródło