| Home | Articles | Webboard | Download | LHC | LSC | Training Courses |


ฮาร์ดแวร์ที่ลีนุกซ์เก็บไว้ในอ้อมกอด

ธีรภัทร มนตรีศาสตร์ , RHCE



USB External MODEM Aztech



อีกหนึ่งตัวอย่างสำหรับการติดตั้งโมเด็มอุปกรณ์สำคัญที่ขาดเสียไม่ได้สำหรับการเชื่อมต่อเข้าสู่อินเตอร์เน็ต ซึ่งในปัจจุบันมีโมเด็มที่ผลิตออกมาให้เลือกใช้มากมายหลายรุ่น หลายแบบ หากจะพิจารณาถึงรูปแบบการอินเทอร์เฟสกับเครื่องพีซีแล้ว โมเด็มที่เป็นแบบ USB จะได้รับความสนใจจากผู้ใช้งานคอมพิวเตอร์ค่อนข้างมาก ด้วยขนาดที่เล็กกระทัดรัด ราคาที่ไม่แพง สามารถใช้กับเครื่องคอมพิวเตอร์ได้ทุกรุ่นทุกแบบที่มีอินเทอร์เฟสเป็นแบบ USB รวมทั้งเครื่องโน๊ตบุ๊ค และเครื่องแมคอินทอช นอกจากนี้ยังไม่ต้องอาศัยอะแดปเตอร์จ่ายไฟจากภายนอกอีกด้วย แต่สำหรับผู้ใช้งานลีนุกซ์แล้ว โมเด็มชนิดนี้ได้สร้างปัญหาค่อนข้างมาก จนกระทั่งเป็นที่รู้กันโดยทั่วไปว่า หากต้องการจะใช้งานระบบปฏิบัติการลีนุกซ์แล้วล่ะก็ ควรหลีกเลี่ยงโมเด็มชนิดนี้ เสียดีกว่า ถ้าไม่อยากเสียเงินฟรี ทั้งนี้เนื่องมาจากเจ้าโมเด็มชนิดนี้ จะต้องอาศัยซอฟต์แวร์ไดร้วเวอร์ที่สร้างขึ้นมาสำหรับลีนุกซ์โดยเฉพาะจึงจะใช้งานได้ และที่สำคัญก็คือ ทางผู้ผลิตไม่ได้ ให้ซอฟต์แวร์ไดร้วเวอร์ดังกล่าวนี้มากับตัวสินค้าเสียด้วย ไดร้วเวอร์กับการรอคอย


ผู้เขียนเองก็เคยประสบปัญหาเกี่ยวกับโมเด็มชนิดนี้ คือ โมเด็ม Aztech USB v.90 รุ่น UM9800-U ที่ซื้อมาใช้งานส่วนตัว และตั้งใจว่าจะใช้งานกับระบบปฏิบัติการลีนุกซ์ ( ช่วงนั้นเป็น Red Hat 7.2 ) แต่ด้วยเงื่อนไขที่ต้องมีซอฟต์แวร์ไดร้วเวอร์ให้แก่โมเด็มชนิดนี้ เพื่อความไม่ประมาท ผู้เขียนจึงเข้าไปค้นหาไดร้วเวอร์สำหรับโมเด็มรุ่นนี้ที่เว็บไซต์ของผู้ผลิต เสียก่อนว่าจะมีไดร้วเวอร์เตรียมไว้แล้วหรือยัง ( ที่ http://www.aztech.com.sg ) ตรวจสอบดูก็เห็นว่ามีไดร้วเวอร์สำหรับลีนุกซ์จริง ๆ แล้วยังเขียนไว้อีกด้วยว่าไฟล์ชื่อ usb_linux7.2.zip] จึงทำให้สบายใจได้ว่าโมเด็มรุ่นนี้จะสามารถใช้งานได้กับลีนุกซ์ Red Hat 7.2 ได้อย่างแน่นอน ( สังเกตตัวเลข 7.2 ) ว่าแล้วก็ควักกระเป๋าซื้อโมเด็มตัวนี้ทันที เมื่อผู้เขียนนำโมเด็มตัวนี้มาใช้งานกับลีนุกซ์ Red Hat 7.2 ก็ต้องอกหักอีกจนได้ สาเหตุเนื่องมาจากเจ้าซอฟต์แวร์ไดร้วเวอร์ที่ดาวน์โหลดมาจากเว็บไซต์ผู้ผลิตนั้น กลับติดตั้งใช้งานกับ Red Hat 7.2 ไม่ได้ โดยเกิดข้อความแจ้งข้อผิดพลาดขึ้นเต็มไปหมด เมื่อ สอบถามไปยังฝ่ายบริการของผู้นำสินค้าเข้ามาจำหน่ายกลับได้คำตอบว่า "ไม่เคยลองมาก่อน ถ้าพี่ทำได้แล้วช่วยบอกผมด้วยนะครับ.. " เมื่อ Email ไปสอบถามทางสิงคโปร์ก็ไม่ได้คำตอบที่เป็นประโยชน์อะไร ผู้เขียนจึงต้องลงมือหาความจริงเอง โดยตรวจสอบจากหมายเลข รุ่นของเคอร์เนลโมดูล ปรากฏว่าเป็นเคอร์เนลโมดูลที่คอมไพล์มาสำหรับ Linux Mandrake โดยเฉพาะ และไม่ได้ให้โปรแกรมต้นฉบับ ( Source Code ) มาด้วย จึงไม่สามารถนำไปใช้กับ Red Hat Linux ได้ ผู้เขียนลองตรวจสอบดูพบว่าไดร้วเวอร์ดังกล่าวสามารถสามารถติดตั้ง ใช้งานได้ดีกับ Linux Mandrake 8.0 เท่านั้น สำหรับรายละเอียดการติดตั้งผู้เขียนได้เขียนเป็นบทความลงในวารสารคอมพิวเตอร์ยูสเซอร์ ปีที่ 9 ฉบับที่ 101 ( เมษายน 2545 ) ไปแล้ว ดังนั้นผู้เขียนต้องฝืนใจไปใช้งาน Mandrake อยู่ระยะหนึ่ง ถึงแม้จะใช้งานเจ้าโมเด็มได้แล้ว ก็แต่ก็ยังรู้สึกเหมือนโดน Aztech หลอกอยู่นิด ๆ หลังจากนั้นไม่นานผู้เขียนก็เลิกใช้โมเด้มตัวนี้ ไม่ใช่เพราะโมเด็มไม่ดี แต่เนื่องจาก Linux Mandrake 8.0 มีเคอร์เนลรุ่นเก่าไปสำหรับงานที่ผู้เขียนจะต้องทำ จึงเก็บเจ้าโมเด็ม USB ตัวนี้ลงกล่องของมัน แล้วเก็บไว้ที่ที่ลึกลับที่สุด เพื่อรอเ วลาที่จะตื่นขึ้นอีกครั้ง ( อย่างกับนิยายแนว Miracle ) รอให้หาไดร้วเวอร์สำหรับ Red Hat Linux ได้เสียก่อน คงได้นำกลับมาใช้งานอีกครั้ง ตลอดเวลาหลายเดือน ผู้เขียนได้ตรวจสอบกับทางผู้ผลิตโมเด็ม Aztech และ ผู้ผลิตชิปเซ็ตของโมเด็มรุ่นนี้ คือ SmartLink จนกระทั่งมีซอฟต์แวร์ไดร้วเวอร์ พร้อมกับซอร์สโค๊ดออกมา โดยแยกออกเป็น 2 รุ่น สำหรับลีนุกซ์เคอร์เนล 2.2 กับเคอร์เนลรุ่น 2.4 สามารถดาวน์โหลดได้จาก http://www.smlink.com ในการทดสอบนี้จะทดสอบร่วมกับ Red Hat Linux 7.3 ซึ่งใช้เคอร์เนล 2.4.18-3


รูปที่ 2 แสดงการต่อสายสัญญาณ USB และสายโทรศัพท ์

ลงมือคอมไพล์ และติดตั้งโมดูล หลังจากดาวน์โหลดไฟล์ซอฟต์แวร์ไดร้วเวอร์มาแล้ว จะเป็นไฟล์ชื่อ slmdm-2.6.16.tar.gz ขนาดเพียง 860 KB เท่านั้น วิธีการติดตั้งก็เพียงนำไฟล์ดังกล่าวสำเนาไว้ที่ใดก็ได้ ในที่นี้ผู้เขียนนำเก็บไว้ที่ /root ดังรูป


รูปที่ 3 การสำเนาไฟล์ไดร้วเวอร์จากแผ่นฟล๊อปปี้ดิสก์เข้าสู่ลีนุกซ์
จากนั้นให้ใช้คำสั่ง tar แตกไฟล์ภายในออกมา โดยจะเกิดเป็นไดเร็คทอรี่ใหม่ขึ้น ชื่อ /root/slmdm-2.6.16 ให้เข้าไปในไดเร็คทอรี่นี้เพื่อคอมไพล์โมดูลต่อไป


รูปที่ 4 แสดงการแตกไฟล์ไดร้วเวอร์ออกมา
เมื่อเข้ามาในไดเร็คทอรี่แล้วจะพบว่ามีไฟล์ต่าง ๆ อยู่เป็นจำนวนมาก ไฟล์ที่น่าสนใจที่สุดคงหนีไม่พ้น README ซึ่งภายในได้อธิบายรายละเอียดต่าง ๆ ไว้มากมาย รวมทั้งขั้นตอนการติดตั้ง สรุปว่าได้ขั้นตอนดังนี้
  1. ล๊อกอินเป็น root
  2. พิมพ์คำสั่ง make KERNEL_INCLUDES=/usr/src/linux-2.4/include
  3. พิมพ์คำสั่ง make install-usb
  4. พิมพ์คำสั่ง modprobe slmdm และ modprobe slusb ตามลำดับ หากเกิดข้อผิดพลาดขึ้นในข้อ 2 น่าจะเกิดขึ้นจากไม่ได้ทำการติดตั้งแพคเกจ kernel-source ไว้ ให้ติดตั้งแพคเกจนี้เสียก่อนจึงจะสามารถคอมไพล์ ( make ) ได้ หากไม่มีอะไรผิดพลาดจะมีข้อความเพิ่มขึ้นในไฟล์ /etc/modules.conf ดังรูปที่ 5 และปรากฏ Symbolic Link ของ /dev/modem ที่ชี้ไปยัง /dev/ttySL0 ดังรูปที่ 6


รูปที่ 5 ผลจากการติดตั้งไดร้วเวอร์ในไฟล์ /etc/modules.conf





รูปที่ 6 ตรวจดูการเชื่อมโยงของ Device ที่เป็น USB Modem


ต่อจากนี้ไปจะสามารถใช้งานดีไวซ์ /dev/modem นี้ได้แล้ว โดยอาจจะใช้โปรแกรม KPPP ,RH3 หรือ wvdial ในการควบคุมโมเด็มให้เชื่อมต่อเข้าสู่อินเตอร์เน็ตเป็นการทดสอบการทำงานของโมเด็มนี้ ดังรูปที่ 7 เป็นการใช้โปรแกรม wvdial เพื่อโทรออกสู่ ISP จะเห็นว่า PPP Daemon ( pppd ) เริ่มทำงานแล้ว หากตรวจสอบด้วยคำสั่ง ifconfig จะเห็นว่าเกิดอินเทอร์เฟส ppp0 ขึ้น ดังรูปที่ 8


รูปที่ 7 ข้อความของ wvdial ขณะโทรออกสู่ ISP




รูปที่ 8 แสดงอินเทอร์เฟส ppp0 แสดงว่าคอนเน็คได้เรียบร้อยแล้ว




รูปที่ 9 สามารถเปิดเว็บไซต์ Yahoo! ได้ก็..ยาฮู้
แล้วการติดตั้งโมเด็มแบบติดตั้งภายในของเราก็สำเร็จลงเสียทีหลังจากที่ต้องรอคอยให้ผู้ผลิตสร้างซอฟต์แวร์ไดร้วเวอร์ กันมาค่อนข้างนาน จากเรื่องราวที่ผู้เขียนได้นำเสนอมาทั้งสองเรื่องนี้ คงช่วยสร้างเสริมประสบการณ์เกี่ยวกับการใช้งานอุปกรณ์ฮาร์ดแวร์ร่วมกับระบบปฏิบัติการลีนุกซ์แก่ท่านผู้อ่านได้พอสมควร นอกจากนี้ยังชี้ให้เห็นข้อเท็จจริงบางประการเกี่ยวกับลีนุกซ์ได้อีกด้วย ได้แก่
  • เรื่องของซอฟต์แวร์ไดร้วเวอร์ของอุปกรณ์ที่อาจจะต้องใช้เวลาในการพัฒนาโปรแกรมจากผู้ผลิตอุปกรณ์ หรือโปรแกรมเมอร์อิสระ อย่างเช่นกรณีของโมเด็มตัวนี้ใช้เวลาหลายเดือนทีเดียวกว่าจะมีไดร้วเวอร์ที่สมบูรณ์ออกมาให้ใช้งานกัน
  • ขั้นตอนวิธีการติดตั้งไดร้วเวอร์ให้แก่ลีนุกซ์ที่ค่อนข้างยุ่งยาก ต้องอาศัยความรู้ในการใช้คำสั่งต่าง ๆ เป็นจำนวนมาก และมีวิธีการไม่เหมือนกันในแต่ละอุปกรณ์ แตกต่างจากวิธีการของวินโดวส์ที่สะดวกและมีวิธีการหรือขั้นตอนที่เป็นมาตรฐานเดียวกัน
  • ผู้ผลิตอุปกรณ์ฮาร์ดแวร์ ยังไม่ให้ความสำคัญแก่กลุ่มผู้ใช้งานระบบปฏิบัติการลีนุกซ์มากเท่าที่ควร สังเกตได้จากการให้ข้อมูลเกี่ยวกับผลิตภัณฑ์บนบรรจุภัณฑ์ คู่มือ และข้อมูลในเว็บไซต์มักจะไม่ได้กล่าวถึงลีนุกซ์ ทำให้ผู้ใช้ไม่มีข้อมูลประกอบการตัดสินใจ
  • ผู้เกี่ยวข้องเกี่ยวกับการบริการด้านเทคนิคของผลิตภัณฑ์ต่าง ๆ ยังขาดความรู้ความเข้าใจเกี่ยวกับระบบปฏิบัติการลีนุกซ์ จึงไม่สามารถบริการแก่ลูกค้าได้
ณ สถานการณ์ปัจจุบันนี้ ผู้เขียนเห็นว่า ปัจจัยที่จะช่วยให้มีการใช้งานลีนุกซ์ได้แพร่หลายมากขึ้น ส่วนหนึ่งคงต้องเริ่มต้นจากการเผยแพร่ข้อมูลเกี่ยวกับการติดตั้ง ใช้งาน และการแก้ไขปัญหาด้านฮาร์ดแวร์ ซึ่งเป็นองค์ประกอบสำคัญของระบบคอมพิวเตอร์นั่นเอง