ผมใช้ Windows Subsystem for Linux (WSL) สำหรับชั้นเรียน OS มาพักใหญ่แล้ว และชอบมากที่สามารถใช้คำสั่ง Linux ใน Windows ได้อย่างตรงไปตรงมา โดยไม่มีความซับซ้อนของการติดตั้ง Virtual Machine หรือ Dual Boot
จบบทความนี้ คุณควรจะสามารถรันคำสั่ง Linux จาก Windows ได้เลย เช่นภาพนี้:
ข้อกำหนดเบื้องต้น
เพื่อให้ WSL ทำงานได้อย่างมีประสิทธิภาพ ผมแนะนำให้อัปเกรดเป็น Windows 11 WSL มีให้บน Windows 10 ด้วย แต่บน Windows 11 มีประสิทธิภาพมากกว่ามาก ตามประสบการณ์ของผม
สำหรับ Windows 10 คุณต้องมี Build 21364 หรือสูงกว่า
บทความนี้จะครอบคลุมสิ่งที่คุณทำได้ทั้งบน Windows 10 และ 11
วิธีติดตั้ง WSL
คำสั่งรัน WSL เรียบง่ายมาก:
wsl --install
คำสั่งนี้จะดาวน์โหลด Linux Kernel ตั้ง WSL 2 เป็นค่าเริ่มต้น และติดตั้ง Ubuntu เป็น Distribution เริ่มต้น
ไม่ต้องการ Ubuntu? นี่คือคำสั่งสำหรับคุณ:
wsl --install -d <distro name>
Distribution ที่มีอยู่ ณ ปัจจุบัน:
- Ubuntu
- OpenSUSE Leap 42
- SUSE Linux Enterprise Server 12 (SLES)
- Kali Linux
- Debian GNU/Linux
หลังจากนี้ คุณจะพบแอปชื่อ Ubuntu (หรือ Distro อื่น) ใน Start Menu:
เปิด Terminal Linux
เปิดแอป Ubuntu ที่เพิ่งติดตั้ง และคุณจะได้รับ Terminal Linux! ลองรันคำสั่งบ้าง:
ถ้าอยากเข้าถึงไฟล์ Windows จะทำยังไง?
หากคุณไปที่ File Explorer (Win+E) คุณจะพบตัวเลือก Linux ใหม่ทางซ้าย ที่มีไฟล์ Linux ทั้งหมดอยู่ นี่คือที่ที่ไฟล์ที่คุณสร้างใน Terminal จะอยู่:
แต่ถ้าอยากเข้าถึงไฟล์ทั่วไปของคุณ?
โชคดีที่ทำได้ง่าย แค่รันคำสั่งนี้ใน Terminal Linux:
cd /mnt/
หากคุณรัน ls ที่นี่ คุณจะพบไดรฟ์ของคอมพิวเตอร์ คุณจะสามารถ cd เข้าไปในไฟล์ได้
วิธีสร้าง Aliases ใน WSL2
คุณเคยมีคำสั่งยาวที่ต้องพิมพ์และหวังว่าจะมีทางลัดไหม? Aliases คือเพื่อนของคุณ
มี 2 วิธีสร้าง Aliases:
- ต่อเซสชัน (Per session)
- ถาวร (Permanently)
วิธีสร้าง Aliases ต่อเซสชันใน WSL2
หากต้องการสร้าง Alias ในเซสชัน Linux ปัจจุบัน (Alias จะหายเมื่อปิด Terminal) ให้รันคำสั่ง:
alias <alias name>='<command>'
ตัวอย่าง:
alias runc='gcc main.c -o main'
วิธีสร้าง Aliases ถาวรใน WSL2
เราจะแก้ไขไฟล์ชื่อ .bash_aliases เพื่อเก็บ Aliases
รันคำสั่ง:
cd ~
ls -a
ดูในรายการไฟล์ที่แสดง และหา .bash_aliases
หากไม่เจอ ให้รันคำสั่ง:
touch .bash_aliases
ตอนนี้เพื่อแก้ไขไฟล์ ให้รันคำสั่ง:
vi .bash_aliases
คุณจะได้หน้าจอแบบนี้:
- กด "i" เพื่อเริ่มพิมพ์ และเพิ่ม Aliases ได้เท่าไหร่ก็ได้
ตัวอย่าง:
alias runc='gcc main.c -o main'
alias hello='echo hello'
- เพื่อออกจากโหมดพิมพ์ กด "ctrl + c"
- เพื่อออกจาก Vim และบันทึกไฟล์ พิมพ์ ":wq!" (ผมภูมิใจที่ไม่ต้องกูเกิล)
ตอนนี้พร้อมแล้ว! รีสตาร์ท Ubuntu และเริ่มพิมพ์ Aliases ด้านบนใดๆ จะทำงานได้อย่างสมบูรณ์:
วิธีรัน GUI Apps
โอเค ตอนนี้เรารู้วิธีรันแอปบรรทัดคำสั่งจาก WSL2 แล้ว แต่ถ้าอยากรัน Linux GUI Apps? คำตอบง่ายมาก – แค่ติดตั้ง GUI App ก่อนรัน ผมจะใช้ Firefox เป็นตัวอย่าง
เพื่อติดตั้ง Firefox:
sudo apt install firefox
เพื่อรัน Firefox:
firefox
หากคุณมี Firefox บน Windows อยู่แล้ว คุณจะพบว่ามันไม่ได้เปิด เพราะตอนนี้คุณกำลังรัน Firefox สำหรับ Linux ไม่ใช่ Windows
คุณแม้แต่สามารถรัน Firefox สำหรับ Linux จาก Start Menu ได้เลย หากใช้ Windows 11 คุณจะพบมันภายใต้โฟลเดอร์ของ Distro
สรุป
บทความนี้ครอบคลุมวิธีรัน WSL 2 อย่างมีประสิทธิภาพ หากคุณมีคำถาม โปรดติดต่อผมผ่านแพลตฟอร์มโซเชียลมีเดียใดๆ