ฉันจะเปลี่ยนภาษาของระบบย่อย Linux ใน Windows 10 (WSL) ได้อย่างไร


78

หลังจากติดตั้ง Bash ใน Windows 10 ฉันสังเกตว่ามันใช้ภาษาสวีเดนในแอพพลิเคชั่น linux การติดตั้ง Windows 10 ของฉันเป็นภาษาอังกฤษ

ฉันได้ลองติดตั้ง bash ใหม่หลังจากเปลี่ยนภาษาป้อนเริ่มต้นเป็นภาษาอังกฤษโดยใช้

lxrun /uninstall /full

lxrun /install

แต่มันยังคงใช้ตำราภาษาสวีเดนในแอพ linux เช่นใน nano

ดังนั้นฉันจะบังคับให้ระบบย่อย Linux ติดตั้งด้วยภาษาอังกฤษได้อย่างไร

คำตอบ:


119

การติดตั้ง Windows Subsystem สำหรับ 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

หากคุณต้องการที่จะเรียนรู้เพิ่มเติมเกี่ยวกับการทุบตีใน WSL คุณสามารถอ่านคำถามที่พบบ่อยโดยไมโครซอฟท์


ดูเหมือนว่าจำเป็นต้องรีสตาร์ทบริการเพื่อให้การเปลี่ยนแปลงมีผล: "sc stop lxssmanager", "sc start lxssmanager" ฉันพบข้อผิดพลาดเมื่อเรียกใช้ cmd update-locale: "sudo: ไม่สามารถแก้ไขโฮสต์ ... "
0

3
"การติดตั้ง WSL จะตรวจจับตำแหน่งของ Ubuntu โดยอัตโนมัติเพื่อให้ตรงกับภาษาของการติดตั้ง Windows ของคุณ"ฉันต้องการบอกว่า "misdetects" ฉันเป็นภาษาฟินแลนด์ฉันมีการตั้งค่าทั้งหมดเป็นภาษาอังกฤษยกเว้นรูปแบบแป้นพิมพ์และรูปแบบวันที่ นั่นไม่ใช่ภาษาฟินแลนด์ในหนังสือของฉัน
Sami Kuhmonen

ฉันพบข้อผิดพลาดsudo: unable to resolve hostขณะพยายามเรียกใช้คำสั่งนั้น sudoมันทำงานเมื่อฉันวิ่งได้โดยไม่ต้อง
sgtfrankieboy

@sgtfrankieboy sudoมันจะไม่คงอยู่ได้โดยไม่ต้อง ดูคำถามนี้และคำตอบ
แมว

2
LANG = en_US.UTF-8 หายไป '-'
eee

1

แทนที่จะติดตั้ง bash ใหม่ให้เพิ่มบรรทัดต่อไปนี้ลงในไฟล์ ~/.bashrc

LANG=c

จากนั้นคุณจะได้รับทุบตีภาษาอังกฤษ


1

คู่มือนี้อธิบายวิธีต่างๆ เนื่องจากในกรณีนี้เราใช้ Ubuntu ให้เลือกตัวเลือกที่เกี่ยวข้อง สรุป:

  • เปลี่ยนโลแคลสำหรับเซสชันปัจจุบันเท่านั้น: LANG=en_US.UTF-8
  • เปลี่ยนสถานที่อย่างถาวรสำหรับผู้ใช้ปัจจุบัน: เพิ่มLANG=en_US.UTF-8เป็น~/.bashrc
  • เปลี่ยนตำแหน่งที่ตั้งของระบบเริ่มต้น: ใช้LANG=en_US.UTF-8ใน
    /etc/default/locale

ตามสถานที่ภาษาอังกฤษต่อไปนี้ที่มีอยู่ในระบบของฉันโดยค่าเริ่มต้น:locale -a , ,CC.UTF-8en_US.utf8


0

หากคุณยังไม่ได้ติดตั้งภาษาคุณจำเป็นต้องใช้:

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

เปลี่ยน "en" เป็นโลแคลของคุณจากนั้นใช้คำสั่งเพื่อสลับโลแคล


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.