จำลอง Linux Environment บน Windows ด้วย Cygwin
บาง ครั้งในการทำงาน เราอาจจะจำเป็นจะต้องพัฒนาโปรแกรมที่ถูกสร้างขึ้นบน Linux ซึ่งถ้าเราใช้ระบบปฏิบัติการตระกูล Linux ด้วยก็คงจะไม่มีปัญหามากเท่าไหร่ (ถึงจะเป็น Linux ด้วยกันแต่คนละ distribution บางทีก็มีปัญหา) แต่ถ้าระบบปฏิบัติการที่เราใช้เป็น Windows ก็คงจะลำบากพอดู วิธีการแก้ปัญหาแบบง่ายที่สุด ก็คือการลง Linux ใหม่เลย หรือว่าใช้ซอฟต์แวร์ประเภท Virtual Machine ที่จำลองการทำงานของของระบบปฏิบัติการอื่นบน Windows อีกทีหนึ่ง แต่ในวันนี้จะขอเสนอวิธีที่สะดวกกว่านั้นครับ นั่นคือการใช้ CygwinCygwin คืออะไร? Cygwin เป็นซอฟต์แวร์สำหรับจำลอง Environment ของ Linux บนเครื่องที่เป็น Windows หรือพูดง่ายๆก็คือ รวมเอาพวก library, API หรือโปรแกรมที่มีบน Linux ให้สามารถใช้ได้บน Windows ซึ่งสะดวกมากในการติดตั้ง เพียงแต่ดาวน์โหลด Cygwin แล้วก็ติดตั้ง ซึ่งระหว่างติดตั้งโปรแกรมจะถามถึงว่าเราต้องลง package ใดบ้าง ก็ให้เช็คไปตามที่ต้องการใช้ (หากติดตั้งแล้วต้องการลง package เพิ่ม ก็ให้ติดตั้งใหม่โดยใช้ไฟล์ install ครับ ของเดิมที่ลงไว้แล้วจะไม่หายไป แต่เราสามารถเลือก package เพิ่มได้)
หลังจากที่ลงโปรแกรมเรียบร้อย แล้วลงเปิดโปรแกรม Cygwin Bash Shell ก็จะได้โปรแกรมหน้าตาดังภาพด้านล่าง ซึ่งเราสามารถสั่งคำสั่งบน Linux ได้ตามใจชอบ
ไฟล์ที่เราต้องการใช้งานบน Cygwin จะต้องวางไว้อยู่ในโฟลเดอร์ที่เป็นตำแหน่งที่ติดตั้ง cygwin ซึ่งโปรแกรมจะถือว่าตำแหน่งนั้นเป็น / (root) ของระบบ
สำหรับผมแล้วบางครั้งก็อยากจะใช้งานโปรแกรมบน Linux บางตัว เพื่อทำงานกับไฟล์โดยที่ขี้เกียจจะย้ายไฟล์ไปยังโฟลเดอร์นี้ เราก็สามารถแก้ปัญหานี้ได้โดยการกำหนด PATH ไปยังโฟลเดอร์ bin ของตำแหน่งที่ติดตั้ง Cygwin เช่น ผมติดตั้ง Cygwin ไว้ที่ C:\cygwin ดังนั้นตัวโปรแกรมต่างๆบน Cygwin จะอยู่ที่ C:\cygwin\bin แล้วผมก็จะทำการ set PATH ได้โดย
- คลิกขวาที่ Computer เลือก Properties
- เลือกที่ Advance system settings
- ในแท็ป Advanced ให้กดปุ่ม Environment Variable...
- เลือกที่ตัวแปร PATH แล้วกด Edit...
- จากนั้นเติม ";C:\cygwin\bin" ต่อท้ายในช่อง Variable Value: (หรือตำแหน่งของ cygwin\bin แล้วแต่ตำแหน่งที่ติดตั้ง)
เท่านี้เราก็สามารถใช้โปรแกรมของ Linux บน Windows ได้อย่างสบายใจไม่ว่าจะอยู่แห่งหนใดบนคอมพิวเตอร์
ที่มา:https://remixman.net/cygwin
ไม่มีความคิดเห็น:
แสดงความคิดเห็น