Bagaimana cara mengubah bahasa subsistem Linux di Windows 10 (WSL)?

78

Setelah menginstal Bash di Windows 10 saya mencatat bahwa ia menggunakan bahasa Swedia di aplikasi linux. Instalasi Windows 10 saya dalam bahasa Inggris.

Saya telah mencoba menginstal ulang bash setelah mengubah bahasa input default ke bahasa Inggris menggunakan

lxrun /uninstall /full

lxrun /install

Tetapi masih menggunakan teks Swedia di aplikasi linux, misalnya di nano.

Jadi bagaimana saya bisa memaksa subsistem Linux untuk menginstal dengan bahasa inggris?

Pengguna0
sumber

Jawaban:

119

Instalasi Windows Subsystem for Linux (WSL) harus secara otomatis mengatur lokal Ubuntu agar sesuai dengan lokal dari instalasi Windows Anda. Anda dapat mengubah lokal Ubuntu secara manual menggunakan shell.

  1. Jalankan perintah ini di bash.exe untuk mengubah bahasa ke bahasa Inggris AS:

    sudo update-locale LANG=en_US.UTF8

    Jika Anda mendapatkan sudo: unable to resolve hostkesalahan setiap kali Anda menjalankan sudo,

    • Verifikasi bahwa Anda memiliki set nama host (dengan hostnameperintah).

      • Jika tidak disetel, tambahkan ke /etc/hostnamefile.
      • Pastikan itu hanya/etc/hostname berisi nama host.

      Edit file dengan sudoedit /etc/hostname ( dengan asumsi Anda bisa membuatnya berfungsi); lihat ini .

    • Pastikan /etc/hostsfile Anda berisi entri untuk nama host Anda yang sebenarnya (dieja sama persis ) dan / atau localhost. Sekali lagi, gunakan sudoedit.

    Lihat Pesan kesalahan ketika saya menjalankan sudo: tidak dapat menyelesaikan host untuk informasi lebih lanjut.

  2. Luncurkan kembali bash.exeagar perubahan diterapkan.
  3. Jika itu tidak memperbaikinya, coba mulai ulang layanan:

    sc stop  lxssmanager
    sc start lxssmanager
    

Jika Anda ingin mempelajari lebih lanjut tentang bash di WSL, Anda dapat membaca FAQ oleh Microsoft .

Animesh Patra
sumber
Tampaknya memulai kembali layanan juga diperlukan agar perubahan berlaku: "sc stop lxssmanager", "sc start lxssmanager". Saya mendapat kesalahan saat menjalankan cmd pembaruan-lokal: "sudo: tidak dapat menyelesaikan host ...".
Pengguna0
3
"Instalasi WSL akan secara otomatis mendeteksi lokal Ubuntu agar sesuai dengan lokal instalasi Windows Anda" Saya lebih suka mengatakan "kesalahan deteksi." Saya dapat bahasa Finlandia, saya memiliki semua pengaturan bahasa Inggris, kecuali tata letak keyboard dan format tanggal. Itu sebenarnya bukan bahasa Finlandia di buku saya.
Sami Kuhmonen
Saya mendapat kesalahan sudo: unable to resolve hostsaat mencoba menjalankan perintah itu. Itu bekerja ketika saya menjalankannya tanpa sudo.
sgtfrankieboy
@ gtfrankieboy Tidak akan bertahan tanpa sudo. Lihat pertanyaan ini dan jawabannya.
kucing
2
LANG = en_US.UTF-8, melewatkan '-'
eee
1

Alih-alih menginstal ulang bash, tambahkan baris berikut ke file ~/.bashrc

LANG=c

Maka Anda mendapatkan bash bahasa Inggris.

Klas Mellbourn
sumber
1

Manual ini menjelaskan berbagai cara. Karena dalam hal ini kami menggunakan Ubuntu, pilih opsi yang sesuai. Ringkasan:

  • Ubah lokal hanya untuk sesi saat ini: LANG=en_US.UTF-8
  • Ubah lokal secara permanen untuk pengguna saat ini: tambahkan LANG=en_US.UTF-8ke~/.bashrc
  • Ubah lokal sistem default: gunakan LANG=en_US.UTF-8di
    /etc/default/locale

Menurut locale -alocales bahasa Inggris berikut tersedia di sistem saya secara default: C, C.UTF-8, en_US.utf8.

ov
sumber
0

Jika bahasa Anda belum diinstal, Anda perlu menggunakan:

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

mengubah "en" ke lokal Anda, dan kemudian gunakan perintah untuk beralih lokal.

Aeglas
sumber
0

Tidak ada yang bekerja untuk saya. Menjalankan Ubuntu18.04.2 LTS (Bionic Beaver) di WSL Build 16299.

Solusi bagi saya adalah dari solusi Lri :

$ sudo apt install gcal
$ alias cal='gcal --starting-day=1'
Tony Barganski
sumber