Submitted by admin on Sat, 01/02/2010 - 02:35
ถ้าไม่มีอะไรผิดพลาด เราก็จะได้ Image Files ที่จะใช้แฟลช Router ของเรา ทำการตรวจสอบได้ดังนี้
$ ls –la ~/openwrt/kamikaze/bin
total 38716
drwxr-xr-x 3 sak sak 4096 2009-09-07 22:58 .
drwxr-xr-x 15 sak sak 4096 2009-09-07 22:28 ..
-rw-r--r-- 1 sak sak 958 2009-09-07 22:58 md5sums
-rw-r--r-- 1 sak sak 2625536 2009-09-07 22:58 openwrt-brcm47xx-squashfs.trx
-rw-r--r-- 1 sak sak 2625564 2009-09-07 22:58 openwrt-usr5461-squashfs.bin
-rw-r--r-- 1 sak sak 2625544 2009-09-07 22:58 openwrt-wa840g-squashfs.bin
-rw-r--r-- 1 sak sak 2625544 2009-09-07 22:58 openwrt-we800g-squashfs.bin
-rw-r--r-- 1 sak sak 2756608 2009-09-07 22:58 openwrt-wgt634u-squashfs.bin
-rw-r--r-- 1 sak sak 2625544 2009-09-07 22:58 openwrt-wr850g-squashfs.bin
-rw-r--r-- 1 sak sak 2625568 2009-09-07 22:58 openwrt-wrt150n-squashfs.bin
-rw-r--r-- 1 sak sak 2625568 2009-09-07 22:58 openwrt-wrt300n_v1-squashfs.bin
-rw-r--r-- 1 sak sak 2625568 2009-09-07 22:58 openwrt-wrt350n_v1-squashfs.bin
-rw-r--r-- 1 sak sak 2625568 2009-09-07 22:58 openwrt-wrt54g3g-em-squashfs.bin
-rw-r--r-- 1 sak sak 2625568 2009-09-07 22:58 openwrt-wrt54g3g-squashfs.bin
-rw-r--r-- 1 sak sak 2625568 2009-09-07 22:58 openwrt-wrt54g-squashfs.bin
-rw-r--r-- 1 sak sak 2625568 2009-09-07 22:58 openwrt-wrt54gs-squashfs.bin
-rw-r--r-- 1 sak sak 2625568 2009-09-07 22:58 openwrt-wrt54gs_v4-squashfs.bin
-rw-r--r-- 1 sak sak 2625568 2009-09-07 22:58 openwrt-wrtsl54gs-squashfs.bin
drwxr-xr-x 3 sak sak 4096 2009-09-07 22:28 packages**Tips สำหรับมือใหม่
คำสั่ง ls –la ~/openwrt/kamikaze/bin คือคำสั่งที่ใช้ดูไฟล์ภายใต้ ไดเร็คตอรี่ ~/openwrt/kamikaze/bin
–la คือสวิชท์หรืออ๊อปชั่นที่ใช้บอกว่า ให้แสดงผลโดยมีรายละเอียดเต็ม
~/openwrt/kamikaze/bin ตีความว่าอย่างไร สำหรับลินุกซ์แล้วผู้ใช้จะถูกกำหนดให้มีเนื้อที่ส่วนตัวที่เรียกว่า home directory เพื่อเก็บข้อมูล ซึ่งปกติจะอยู่ที่ตำแหน่ง “/home/ชื่อผู้ใช้” สำหรับในกรณีที่ username คือ demo ก็จะเป็น /home/demo สัญลักษณ์ ~ ที่อยู่หน้า ~/openwrt/kamikaze/bin ใช้แทน home directory ในกรณีนี้แปลว่าให้ไปที่ home directory แล้วอ้างอิงจากจุดนั้นไปยังที่เหลือ ซึ่งเมื่อมอง full path แล้วก็คือ /home/demo/openwrt/kamikaze/bin นั่นเอง
คำสั่ง ls –la ~/openwrt/kamikaze/bin คือคำสั่งที่ใช้ดูไฟล์ภายใต้ ไดเร็คตอรี่ ~/openwrt/kamikaze/bin
–la คือสวิชท์หรืออ๊อปชั่นที่ใช้บอกว่า ให้แสดงผลโดยมีรายละเอียดเต็ม
~/openwrt/kamikaze/bin ตีความว่าอย่างไร สำหรับลินุกซ์แล้วผู้ใช้จะถูกกำหนดให้มีเนื้อที่ส่วนตัวที่เรียกว่า home directory เพื่อเก็บข้อมูล ซึ่งปกติจะอยู่ที่ตำแหน่ง “/home/ชื่อผู้ใช้” สำหรับในกรณีที่ username คือ demo ก็จะเป็น /home/demo สัญลักษณ์ ~ ที่อยู่หน้า ~/openwrt/kamikaze/bin ใช้แทน home directory ในกรณีนี้แปลว่าให้ไปที่ home directory แล้วอ้างอิงจากจุดนั้นไปยังที่เหลือ ซึ่งเมื่อมอง full path แล้วก็คือ /home/demo/openwrt/kamikaze/bin นั่นเอง
ไฟล์ที่อยู่ในความสนใจของเราคือไฟล์ที่ขึ้นต้นด้วย openwrt โปรดสังเกตุว่าไฟล์ openwrt-brcm47xx-squashfs.trx จะมีนามสกุลต่างจากตัวอื่นๆที่ลงท้ายด้วย .bin
ไฟล์ .trx ก็คือไฟล์ที่ไม่มีการปรุงแต่งใดๆทั้งสิ้น จะเป็นไฟล์ที่ถูกเขียนลงไปยัง flash memory โดยตรง
ไฟล์ .bin คือไฟล์ที่นำเอาไฟล์ .trx มาเพิ่ม header เพื่อให้เหมาะสมกับการuploadเพื่อflash routerรุ่นต่างๆของlinksysผ่าน web interface
ดังนั้นในกรณีที่เรา flash โดยใช้คำสั่งภายใน console ของ router ก็จะใช้ไฟล์นามสกุล .trx ถ้าflashผ่าน web interface ก็ให้ใช้ .bin สำหรับ .bin ตัวที่ตามหลัง openwrt- ก็คือรุ่นต่างๆของ Linksys router นั่นเอง ในกรณีของเรา เราเลือกใช้ WRT54GL ซึ่งเทียบเท่ากับ WRT54G Version 4 ก็ให้ใช้ไฟล์ openwrt-wrt54g-squashfs.bin
**Tips
แรกเริ่มเดิมที Linksys ได้ออก router รุ่น WRT54G เมื่อมีคนสืบทราบว่าใช้ Linuxเป็นOS ก็ได้มีการบีบคั้นให้ Linksys คายซอสโคดออกมา นำไปสู่การพัฒนาfirmwareที่มีประสิทธิภาพเป็นอย่างมาก อาจจะเป็นด้วยเหตุผลที่ความสามารถรุกคืบไปยัง Router สำหรับมืออาชีพที่ Linksys จัดจำหน่ายหรือด้วยความต้องการที่จะลดต้นทุนก็แล้วแต่ เมื่อ WRT54G ได้ดำเนินจนไปถึง Version ที่ 5 ก็ได้มีการทำการลดขนาดของ flash ลงเหลือแค่ 2M จนยากแก่การวิ่ง Linux OSอีกต่อไป และหันไปใช้ VxWorks เป็น OS แทน มีการเกรงกันว่าLinksysอาจจะเลิกผลิตรุ่นที่ Hackได้ออกมา แต่ในที่สุดอาจจะเป็นได้ว่าเนื่องจากมีเสียงเรียกร้องจากผู้พัฒนามากมาย Linksys จึงได้ตัดสินใจที่จะออก Routerเทียบเท่ากับ WRT54G Version 4 ออกมาและใช้ชื่อรุ่นว่า WRT54GL และแน่นอนขายในราคาที่แพงขึ้นกว่ารุ่น WRT54G
นอกจากรุ่นที่กล่าวถึงแล้ว ยังมีอีกหลายรุ่นและหลายฮาร์แวร์ที่สามารถทำการแฮกเพื่อวิ่ง OpenWrt ได้ ดังนั้นจึงควรตรวจสอบจากที่นี่ http://oldwiki.openwrt.org/TableOfHardware.html ก่อนตัดสินใจซื้อรุ่นที่แตกต่างไปจากบทความนี้
สำหรับการเขียนลงFlash memory ผมไม่แนะนำให้ทำจากVirtual Machineเนื่องจากVirtual Machineถูกสร้างจากซอฟแวร์ โอกาสที่จะแฮงค์ระหว่างการFlashมีความเป็นไปได้สูง ดังนั้นเราควรจะถ่ายไฟล์จากUbuntuของเรามายังพีซีหลักก่อน ซึ่งส่วนใหญ่ผมเชื่อว่าวิ่ง Windows OS
วิธีถ่ายไฟล์มายัง Windows สามารถทำได้หลายวิธี แต่วิธีที่จะแนะนำต่อไปนี้เป็นเป็นวิธีที่ติดมากับโปรแกรม VirtualBox เลย คือการ Share Directory กันระหว่าง Host กับ Guest OS ทำได้ดังนี้
1. Start Ubuntu จาก VirtualBox และไปยังเมนู Devices เลือก Install Guest Additions..

จะเห็นว่าซีดีโผล่ขึ้นมาชื่อ VBOXADDITIONS และถูกเชื่อมต่อกับ directory /mnt/cdrom0 โดยอัตโนมัติ

2. เปิด Terminal ขึ้นมาแล้วพิมพ์คำสั่งนี้เพื่อติดตั้ง Dynamic Kernel Module Support Framework ดังนี้
$ sudo apt-get install dkms
3. เปลี่ยนไดเร็คตอรี่ไปยังซีดีและติดตั้งโปรแกรม VBoxLinuxAdditions-x86.run ดังนี้
$ cd /media/cdrom0
$ sudo sh ./VBoxLinuxAdditions-x86.run

Restart Ubuntu เมื่อเสร็จสิ้นการติดตั้ง
4. ต่อไปเราจะกำหนดชื่อที่จะใช้ share และ directory บน windows ที่จะใช้ในการ share ไฟล์ร่วมกัน โดย
4.1 เลือกเมนู Devices
4.2 เลือก Shared Folders และคลิ๊กตรงเครื่องหมายบวก กำหนดชื่อที่จะใช้ share และ direcrtory หลังจากนั้นก็คลิ๊ก OK สองครั้งเพื่อจบการสร้าง Share

5. คราวนี้กลับมายัง Linux เพื่อเชื่อมต่อเข้ากับ Share Directory ที่เพิ่งสร้างขึ้นนะครับ
5.1 ไปยัง Terminal แล้วสร้าง directory ที่จะทำการเชื่อมต่อกับ Share Directory บน Windows ด้วยคำสั่ง
$ sudo mkdir /mnt/dos
หมายเหตุ คำสั่งนี้ทำเพียงครั้งเดียวเท่านั้นในกรณีที่ไม่มี directory /mnt/dos มาก่อน
5.2 ทำการเชื่อม /mnt/dos บน Linux เข้ากับ share name(folder name) ที่เราตั้งในขั้นตอนที่ 4.2 ซึ่งในกรณีนี้เราตั้งชื่อว่า share
$ sudo mount -t vboxsf share /mnt/dos
5.3 ทดสอบโดย copy Image file จาก Linux ของเราไปยัง share directory จะเห็นว่าเมื่อเรากลับเข้าไปยัง Windows Exporer เราจะเห็นไฟล์ได้จาก Windows System ของเรา

5.4 เมื่อเสร็จสิ้นภารกิจ เราสามารยกเลิกการเชื่อมต่อด้วยคำสั่ง
$ sudo umount /mnt/dos
เอาล่ะครับ ได้ Image มาแล้ว คราวหน้าได้ Flash จริงแล้วล่ะครับ :)
»