วิธีการติดตั้งและใช้งาน Linux Bash Shell บน Windows 10
เผยแพร่แล้ว: 2022-08-10
ระบบย่อย Windows สำหรับ Linux ซึ่งเปิดตัวในการอัปเดตครบรอบปี ได้กลายเป็นคุณลักษณะที่เสถียรในการอัปเดต Fall Creators ตอนนี้คุณสามารถเรียกใช้ Ubuntu, openSUSE, รีมิกซ์ของ Fedora และอื่นๆ อีกมากมายบน Windows โดยจะมีลีนุกซ์รุ่นอื่นๆ ในเร็วๆ นี้
สิ่งที่คุณต้องรู้เกี่ยวกับ Bash Shell ของ Windows 10
ที่เกี่ยวข้อง: ทุกสิ่งที่คุณสามารถทำได้ด้วย Bash Shell ใหม่ของ Windows 10
ระบบย่อย Windows สำหรับ Linux 1 (WSL1) ทำงานอย่างไร
Windows 10 นำเสนอระบบย่อย Windows เต็มรูปแบบสำหรับ Linux (WSL) สำหรับการเรียกใช้ซอฟต์แวร์ Linux นี่ไม่ใช่เครื่องเสมือน คอนเทนเนอร์ หรือซอฟต์แวร์ Linux ที่คอมไพล์สำหรับ Windows (เช่น Cygwin) มันขึ้นอยู่กับ Project Astoria ที่ถูกละทิ้งของ Microsoft สำหรับการเรียกใช้แอพ Android บน Windows
คิดว่าเป็นสิ่งที่ตรงกันข้ามกับไวน์ แม้ว่าไวน์จะอนุญาตให้คุณเรียกใช้แอปพลิเคชัน Windows ได้โดยตรงบน Linux แต่ระบบย่อย Windows สำหรับ Linux จะอนุญาตให้คุณเรียกใช้แอปพลิเคชัน Linux ได้โดยตรงบน Windows
Microsoft ทำงานร่วมกับ Canonical เพื่อเสนอสภาพแวดล้อม Bash shell ที่ใช้ Ubuntu เต็มรูปแบบซึ่งทำงานบนระบบย่อยนี้ ในทางเทคนิค นี่ไม่ใช่ Linux เลย Linux เป็นเคอร์เนลของระบบปฏิบัติการพื้นฐาน และไม่มีให้บริการที่นี่ วิธีนี้ทำให้คุณสามารถเรียกใช้ Bash shell และไบนารีเดียวกันกับที่คุณเรียกใช้บน Ubuntu Linux ได้ตามปกติ ผู้คลั่งไคล้ซอฟต์แวร์เสรีมักโต้แย้งว่าระบบปฏิบัติการลีนุกซ์ทั่วไปควรเรียกว่า “GNU/Linux” เพราะเป็นซอฟต์แวร์ GNU จำนวนมากที่ทำงานบนเคอร์เนลลินุกซ์ เปลือก Bash ที่คุณจะได้รับนั้นเป็นเพียงยูทิลิตี้ GNU และซอฟต์แวร์อื่นๆ ทั้งหมดเท่านั้น
แม้ว่าคุณลักษณะนี้เดิมเรียกว่า "Bash บน Ubuntu บน Windows" แต่ก็ช่วยให้คุณสามารถเรียกใช้ Zsh และเชลล์บรรทัดคำสั่งอื่นๆ ได้ ตอนนี้รองรับลีนุกซ์รุ่นอื่นๆ ด้วย คุณสามารถเลือก openSUSE Leap หรือ SUSE Enterprise Server แทน Ubuntu และมีการรีมิกซ์ของ Fedora
มีข้อ จำกัด บางประการที่นี่ มันจะไม่ทำงานอย่างเป็นทางการกับแอปพลิเคชันเดสก์ท็อป Linux แบบกราฟิก ไม่ใช่ว่าทุกแอปพลิเคชันบรรทัดคำสั่งจะทำงานได้ เนื่องจากคุณลักษณะนี้ยังไม่สมบูรณ์แบบ
ระบบย่อย Windows สำหรับ Linux 2 (WSL2) ทำงานอย่างไร
ระบบย่อย Windows สำหรับ Linux 2 (WSL2) ได้รับการออกแบบมาเพื่อมอบประสบการณ์ผู้ใช้ที่เหมือนกันทุกประการกับรุ่นก่อน แต่ความคล้ายคลึงกันส่วนใหญ่จะสิ้นสุดที่นั่น
WSL2 รัน Linux Kernel แบบเต็มในเครื่องเสมือนที่มีประสิทธิภาพสูง เช่นเดียวกับ WSL1 WSL2 อนุญาตให้คุณใช้ Linux Distros ที่หลากหลาย รวมถึง Ubuntu, Debian, Kali, openSUSE, Fedora และอื่นๆ นั่นก็หมายความว่าแอพพลิเคชั่น แพ็คเกจ หรือคำสั่งของ Linux ส่วนใหญ่จะทำงานได้โดยไม่มีปัญหา
หมายเหตุ: WSL2 รองรับแอปพลิเคชัน GUI บน Windows 11
วิธีการติดตั้ง Bash บน Windows 10
ที่เกี่ยวข้อง: ฉันจะรู้ได้อย่างไรว่าฉันใช้ Windows รุ่น 32 บิตหรือ 64 บิต
ฟีเจอร์นี้ใช้ไม่ได้กับ Windows 10 เวอร์ชัน 32 บิต ดังนั้นตรวจสอบให้แน่ใจว่าคุณใช้ Windows เวอร์ชัน 64 บิต ได้เวลาเปลี่ยนไปใช้ Windows 10 เวอร์ชัน 64 บิตแล้ว หากคุณยังคงใช้เวอร์ชัน 32 บิตอยู่
สมมติว่าคุณมี Windows 64 บิต ในการเริ่มต้น ให้ไปที่แผงควบคุม > โปรแกรม > เปิดหรือปิดคุณลักษณะของ Windows เปิดใช้งานตัวเลือก "Windows Subsystem for Linux" ในรายการ จากนั้นคลิกปุ่ม "OK"
คลิก “รีสตาร์ททันที” เมื่อคุณได้รับแจ้งให้รีสตาร์ทคอมพิวเตอร์ คุณลักษณะนี้จะไม่ทำงานจนกว่าคุณจะรีบูต
หมายเหตุ: เริ่มต้นด้วย Fall Creators Update คุณไม่จำเป็นต้องเปิดใช้งานโหมดนักพัฒนาซอฟต์แวร์ในแอปการตั้งค่าเพื่อใช้คุณลักษณะนี้อีกต่อไป คุณเพียงแค่ต้องติดตั้งจากหน้าต่างคุณลักษณะของ Windows
หรือคุณสามารถติดตั้งโดยใช้ PowerShell เปิด PowerShell ในฐานะผู้ดูแลระบบ จากนั้นป้อน:
wsl --install
จะใช้เวลาสักครู่ในการดาวน์โหลดและติดตั้งส่วนประกอบที่จำเป็นทั้งหมด หลังจากนั้น คุณจะต้องรีสตาร์ทคอมพิวเตอร์
หลังจากที่คอมพิวเตอร์ของคุณรีสตาร์ทแล้ว ให้เปิด Microsoft Store จากเมนู Start แล้วค้นหา "Linux" ในสโตร์
หมายเหตุ: เริ่มต้นด้วย Fall Creators Update คุณจะไม่สามารถติดตั้ง Ubuntu ได้อีกต่อไปโดยใช้คำสั่ง "bash" คุณต้องติดตั้ง Ubuntu หรือ Linux รุ่นอื่นจากแอพ Store หรือใช้คำสั่ง wsl --install -d <Distribution>
ที่เกี่ยวข้อง: อะไรคือความแตกต่างระหว่าง Ubuntu, openSUSE และ Fedora บน Windows 10
คุณจะเห็นรายการการกระจาย Linux ทั้งหมดที่มีอยู่ใน Windows Store ในช่วง Fall Creators Update ซึ่งรวมถึง Ubuntu, openSUSE Leap และ openSUSE Enterprise ด้วยสัญญาว่า Fedora จะมาถึงในไม่ช้า
อัปเดต: Debian, Kali และรีมิกซ์ของ Fedora มีวางจำหน่ายแล้วใน Store ค้นหา "Debian Linux" "Kali Linux" หรือ "Fedora Linux" เพื่อค้นหาและติดตั้ง
หากต้องการติดตั้งลีนุกซ์รุ่น ให้คลิกที่รายการนั้น จากนั้นคลิกปุ่ม "รับ" หรือ "ติดตั้ง" เพื่อติดตั้งเหมือนกับแอปพลิเคชัน Store อื่นๆ
หากคุณไม่แน่ใจว่าจะติดตั้งสภาพแวดล้อม Linux ใด เราขอแนะนำ Ubuntu การแจกจ่าย Linux ที่ได้รับความนิยมก่อนหน้านี้เป็นเพียงตัวเลือกเดียวที่มีให้ แต่ขณะนี้ระบบ Linux อื่นๆ พร้อมให้บริการสำหรับผู้ที่มีความต้องการเฉพาะมากขึ้น
คุณยังสามารถติดตั้งลีนุกซ์ดิสทริบิวชั่นได้หลายตัว และแต่ละตัวก็จะมีช็อตคัทเฉพาะของตัวเอง คุณยังสามารถเรียกใช้ลีนุกซ์รุ่นต่างๆ ได้พร้อมกันในหน้าต่างต่างๆ
วิธีใช้ Bash Shell และติดตั้งซอฟต์แวร์ Linux
ที่เกี่ยวข้อง: วิธีการติดตั้งซอฟต์แวร์ Linux ใน Ubuntu Bash Shell ของ Windows 10
ตอนนี้คุณมี bash shell แบบบรรทัดคำสั่งที่ใช้ Ubuntu หรือ Linux อื่น ๆ ที่คุณติดตั้งไว้
เนื่องจากเป็นไบนารีเดียวกัน คุณสามารถใช้คำสั่ง apt หรือ apt-get ของ Ubuntu เพื่อติดตั้งซอฟต์แวร์จากที่เก็บของ Ubuntu หากคุณใช้ Ubuntu เพียงใช้คำสั่งใดก็ตามที่คุณใช้กับลีนุกซ์ลีนุกซ์นั้นตามปกติ. คุณจะสามารถเข้าถึงซอฟต์แวร์บรรทัดคำสั่งของ Linux ได้ทั้งหมด แม้ว่าบางแอปพลิเคชันอาจยังทำงานได้ไม่สมบูรณ์ก็ตาม
ในการเปิดสภาพแวดล้อม Linux ที่คุณติดตั้ง ให้เปิดเมนู Start แล้วค้นหาการแจกจ่ายที่คุณติดตั้ง ตัวอย่างเช่น หากคุณติดตั้ง Ubuntu ให้เปิดทางลัดของ Ubuntu
คุณสามารถตรึงทางลัดแอปพลิเคชันนี้ไว้ที่เมนูเริ่ม แถบงาน หรือเดสก์ท็อปเพื่อให้เข้าถึงได้ง่ายขึ้น
ครั้งแรกที่คุณเปิดใช้สภาพแวดล้อม Linux คุณจะได้รับแจ้งให้ป้อนชื่อผู้ใช้และรหัสผ่าน UNIX สิ่งเหล่านี้ไม่จำเป็นต้องตรงกับชื่อผู้ใช้และรหัสผ่าน Windows ของคุณ แต่จะใช้ภายในสภาพแวดล้อม Linux

ตัวอย่างเช่น หากคุณป้อน "bob" และ "letmein" เป็นข้อมูลประจำตัวของคุณ ชื่อผู้ใช้ของคุณในสภาพแวดล้อม Linux จะเป็น "bob" และรหัสผ่านที่คุณใช้ภายในสภาพแวดล้อม Linux จะเป็น "letmein" ไม่ว่าชื่อผู้ใช้ Windows ของคุณและ รหัสผ่านคือ
ที่เกี่ยวข้อง: วิธีตั้งค่าการกระจาย Linux เริ่มต้นของคุณบน Windows 10
คุณสามารถเปิดใช้สภาพแวดล้อม Linux ที่ติดตั้งไว้ได้ด้วยการรันคำสั่ง wsl
หากคุณติดตั้งลีนุกซ์หลายรุ่น คุณสามารถเลือกสภาพแวดล้อม Linux เริ่มต้นที่คำสั่งนี้เปิดใช้ได้
หากคุณติดตั้ง Ubuntu ไว้ คุณสามารถเรียกใช้คำสั่ง ubuntu
เพื่อติดตั้งได้ สำหรับ openSUSE Leap 42 ให้ใช้ opensuse-42
สำหรับ SUSE Linux Enterprise Sever 12 ให้ใช้ sles-12
คำสั่งเหล่านี้แสดงอยู่ในหน้าการแจกจ่าย Linux แต่ละหน้าใน Windows Store
คุณยังสามารถเปิดใช้สภาพแวดล้อม Linux เริ่มต้นได้ด้วยการเรียกใช้คำสั่ง bash
แต่ Microsoft แจ้งว่าสิ่งนี้เลิกใช้แล้ว ซึ่งหมายความว่าคำสั่ง bash
อาจหยุดทำงานในอนาคต
หากคุณมีประสบการณ์ในการใช้ Bash shell บน Linux, Mac OS X หรือแพลตฟอร์มอื่นๆ คุณจะอยู่ที่บ้านได้เลย
บน Ubuntu คุณต้องนำหน้าคำสั่งด้วย sudo
เพื่อเรียกใช้ด้วยสิทธิ์รูท ผู้ใช้ "รูท" บนแพลตฟอร์ม UNIX มีสิทธิ์เข้าถึงระบบเต็มรูปแบบ เช่น ผู้ใช้ "ผู้ดูแลระบบ" บน Windows ระบบไฟล์ Windows ของคุณอยู่ที่ /mnt/c
ในสภาพแวดล้อม Bash shell
ใช้คำสั่งเทอร์มินัล Linux เดียวกันกับที่คุณใช้เพื่อไปยังส่วนต่างๆ หากคุณคุ้นเคยกับพรอมต์คำสั่งมาตรฐานของ Windows โดยใช้คำสั่ง DOS ต่อไปนี้คือคำสั่งพื้นฐานบางประการที่ใช้ได้ทั่วไปสำหรับทั้ง Bash และ Windows:
- เปลี่ยนไดเรกทอรี:
cd
ใน Bash,cd
หรือchdir
ใน DOS - รายการเนื้อหาของไดเรกทอรี:
ls
ใน Bash,dir
ใน DOS - ย้ายหรือเปลี่ยนชื่อไฟล์:
mv
ใน Bashmove
และrename
ใน DOS - คัดลอกไฟล์:
cp
ใน Bashcopy
ใน DOS - ลบไฟล์:
rm
ในdel
, ลบหรือerase
ใน DOS - สร้างไดเรกทอรี:
mkdir
ใน Bash,mkdir
ใน DOS - ใช้โปรแกรมแก้ไขข้อความ:
vi
หรือnano
ใน Bashedit
ใน DOS
ที่เกี่ยวข้อง: Beginner Geek: วิธีเริ่มใช้ Linux Terminal
สิ่งสำคัญคือต้องจำไว้ว่า Bash shell และสภาพแวดล้อมเลียนแบบ Linux ไม่เหมือนกับ Windows ตรงตัวพิมพ์เล็กและใหญ่ กล่าวอีกนัยหนึ่ง “File.txt” ที่มีอักษรตัวใหญ่แตกต่างจาก “file.txt” ที่ไม่มีตัวพิมพ์ใหญ่
สำหรับคำแนะนำเพิ่มเติม โปรดอ่านคู่มือเริ่มต้นของเราเกี่ยวกับบรรทัดคำสั่ง Linux และการแนะนำอื่นๆ ที่คล้ายคลึงกันของเชลล์ Bash, บรรทัดคำสั่งของ Ubuntu และเทอร์มินัล Linux ทางออนไลน์
คุณจะต้องใช้คำสั่ง apt เพื่อติดตั้งและอัปเดตซอฟต์แวร์ของสภาพแวดล้อม Ubuntu อย่าลืมนำหน้าคำสั่งเหล่านี้ด้วย sudo
ซึ่งจะทำให้ทำงานเป็นรูท ซึ่งเทียบเท่ากับผู้ดูแลระบบ Linux นี่คือคำสั่ง apt-get ที่คุณจำเป็นต้องรู้:
- ดาวน์โหลดข้อมูลอัปเดตเกี่ยวกับแพ็คเกจที่มีจำหน่าย:
sudo apt update
- ติดตั้งแพ็คเกจแอปพลิเคชัน:
sudo apt install packagename
(แทนที่ “packagename” ด้วยชื่อแพ็คเกจ) - ถอนการติดตั้งแพ็คเกจแอปพลิเคชัน:
sudo apt remove packagename
(แทนที่ “packagename” ด้วยชื่อแพ็คเกจ) - ค้นหาแพ็คเกจที่มี:
sudo apt search word
(แทนที่ “word” ด้วยคำที่คุณต้องการค้นหาชื่อแพ็คเกจและคำอธิบาย) - ดาวน์โหลดและติดตั้งเวอร์ชันล่าสุดของแพ็คเกจที่คุณติดตั้ง:
sudo apt upgrade
หากคุณติดตั้งการแจกจ่าย SUSE Linux คุณสามารถใช้คำสั่ง zypper เพื่อติดตั้งซอฟต์แวร์แทนได้
หลังจากที่คุณดาวน์โหลดและติดตั้งแอปพลิเคชันแล้ว คุณสามารถพิมพ์ชื่อแอปพลิเคชันที่พร้อมท์ จากนั้นกด Enter เพื่อเรียกใช้ ตรวจสอบเอกสารประกอบการสมัครนั้น ๆ สำหรับรายละเอียดเพิ่มเติม
โบนัส: ติดตั้งแบบอักษร Ubuntu เพื่อประสบการณ์การใช้งาน Ubuntu อย่างแท้จริง
หากคุณต้องการประสบการณ์การใช้งาน Ubuntu ที่แม่นยำยิ่งขึ้นใน Windows 10 คุณยังสามารถติดตั้งฟอนต์ Ubuntu และเปิดใช้งานได้ในเทอร์มินัล คุณไม่จำเป็นต้องทำเช่นนี้ เนื่องจากแบบอักษรพรอมต์คำสั่งเริ่มต้นของ Windows นั้นดูดีสำหรับเรา แต่เป็นตัวเลือกหนึ่ง
นี่คือสิ่งที่ดูเหมือน:
ในการติดตั้งแบบอักษร ก่อนอื่นให้ดาวน์โหลด Ubuntu Font Family จากเว็บไซต์ของ Ubuntu เปิดไฟล์ .zip ที่ดาวน์โหลดมา และค้นหาไฟล์ “UbuntuMono-R.ttf” นี่คือฟอนต์ Ubuntu monospace ซึ่งเป็นฟอนต์เดียวที่ใช้ในเทอร์มินัล เป็นฟอนต์เดียวที่คุณต้องติดตั้ง
คลิกสองครั้งที่ไฟล์ “UbuntuMono-R.ttf” แล้วคุณจะเห็นตัวอย่างแบบอักษร คลิก "ติดตั้ง" เพื่อติดตั้งลงในระบบของคุณ
ที่เกี่ยวข้อง: เรียนรู้การใช้ Registry Editor อย่างมืออาชีพ
หากต้องการให้แบบอักษร Ubuntu monospace กลายเป็นตัวเลือกในคอนโซล คุณจะต้องเพิ่มการตั้งค่าในรีจิสทรีของ Windows
เปิดตัวแก้ไขรีจิสทรีโดยกด Windows+R บนแป้นพิมพ์ พิมพ์ regedit
แล้วกด Enter ไปที่คีย์ต่อไปนี้หรือคัดลอกและวางลงในแถบที่อยู่ของ Registry Editor:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Console\TrueTypeFont
คลิกขวาในบานหน้าต่างด้านขวาและเลือก ใหม่ > ค่าสตริง ตั้งชื่อค่าใหม่ 000
คลิกสองครั้งที่สตริง “000” ที่คุณเพิ่งสร้างขึ้น จากนั้นป้อน Ubuntu Mono
เป็นข้อมูลค่า
เปิดหน้าต่าง Ubuntu คลิกขวาที่แถบชื่อเรื่อง จากนั้นเลือกคำสั่ง "Properties" คลิกแท็บ "แบบอักษร" จากนั้นเลือก "Ubuntu Mono" ในรายการแบบอักษร
ซอฟต์แวร์ที่คุณติดตั้งใน Bash shell นั้น จำกัด อยู่ที่ Bash shell คุณสามารถเข้าถึงโปรแกรมเหล่านี้ได้จาก Command Prompt, PowerShell หรือที่อื่นใน Windows แต่เฉพาะเมื่อคุณเรียกใช้คำสั่ง bash -c