ROOT WellcoM A88
httpv://www.youtube.com/watch?v=c8jS3IfsJpQ
หลังจากที่ได้ตัดสินใจซื้อเจ้า WellcoM A88 มาใช้แบบรวดเร็วมาก เมื่อเห็นราคาที่ล่อตาล่อใจมาก หลังจากนั้นก็พยายามที่ทำการ root มันอยู่พักใหญ่ด้วยความอ่อนด้อยก็ไม่สามารถกระทำการได้สำเร็จ จนวันนี้ทางเว็บ http://www.droidsans.com ได้ประกาศว่าสามารถที่จะทำการ root เจ้า A88 ได้สำเร็จเมื่อกลับจากขอนแก่นเข้าห้องพักได้ก็ทำการ root ทันทีก็พบว่าสามารถทำได้โดยไม่ต้องเสียเลือดเนื้อแต่อย่างใด ซึ่งตอนนี้ก็สามารถทำได้ทั้งบน Windows Mac และ Linux ผมจะพยายามเรียบเรียงตามฉบับของผมแต่ทั้งนี้ผมขอยกเครดิสให้กับ ทาง droidsans (http://www.droidsans.com) และ น้อง @Nattster (http://nattster.siamdev.net) สำหรับขั้นตอนการทำที่ได้นำมาประยุกต์ใช้ได้ในทันทีโดยไม่ต้องหาอะไรมาประกอบมากมายนัก เริ่มต้นกันเลยครับ
ตั้งค่า USB เป็น Debug Mode
การทำงานที่จะกล่าวถึงต่อไปนี้จะต้องใช้ USB ใน Mode Debug ทั้งหมดวิธีตั้งค่าทำได้ดังนี้
– เลือกไอคอนการตั้งค่า
– เลือกแอปพลิเคชัน
– เลือกการพัฒนา
– เลือกการดีบั๊ก USB
เตรียมตัว
ก่อนอื่นท่านต้องมีชุดพัฒนาของ Android (SDK) ก่อนซึ่งสามารถ Download ได้จาก http://developer.android.com/sdk/index.html เลือกให้ตรงกับ OS ของท่านนะครับเมื่อ Download มาแล้วก็ให้ทำตามคำแนะนำจากเว็บได้เลยอ่านจากหน้านี้นะครับ http://developer.android.com/sdk/installing.html ถ้าใครอ่านแล้วยัง งง ๆ ผมสรุปคร่าว ๆ ดังนี้ครับ
Windows
เมื่อได้มาแล้วก็ให้แตกออกมาเก็บไว้ที่หาง่าย ๆ ตั้ง Path ง่าย ๆ ก็ดี เช่น
_C:\android_sdk _
หลังจากนั้นก็ให้ประกาศ PATH ให้กับระบบโดยขั้นตอนดังนี้
– คลิ้กขวา My Computer
– เลือก Properties
– มองหา Tab Advanced
– คลิ้กปุ่ม Environment Variables
– ทำการแก้ไขตัวแปร Path โดยการเพิ่ม Path ที่เก็บของท่านลงไปโดยคั่นด้วย ; (Semicolon) ให้ต่อท้าย Path ด้วย \tools ด้วยนะครับ เช่น
%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;C:\Program Files\Common Files\Ulead Systems\MPEG;C:\Program Files\Common Files\GTK\2.0\bin;C:\Program Files\QuickTime\QTSystem\;C:\android_sdk\tools
– ทำการ reboot หลังจากนั้นท่านก็สามารถเรียกเครื่องมือของ SDK จากที่ไหนก็ได้
ทำให้ adb ของ SDK ที่ติดตั้งเห็น A88
จริง ๆ แล้วบน Windows นั้นทาง WellcoM ได้จัดเตรียม adb มาให้แล้วซึ่งจะอยู่ในแผ่น CD-ROM จำลองที่อยู่ในตัวเครื่องโทรศัพท์นั้นเอง ซึ่งใน CD-ROM จำลองประกอบไปด้วย Drivers ที่จำเป็นของตัวเครื่องทั้งหมด และ ตัวโปรแกรมสำหรับการจัดการ เช่นตัวหมุนโมเด็ม ตัว sync ข้อมูลเป็นต้น และที่กล่าวไปแล้วคือตัว adb ที่มองเห็น A88 แต่ท่านสามารถใช้ adb ของ SDK ได้เช่นกันโดยการเพิ่มตัว vendor id ให้มันรู้จักซึ่งทำได้กับทุก OS บน Windows ทำได้โดย
สร้างแฟ้มชื่อว่า adb_usb.ini (อาจจะใช้ notepad ก็ได้) โดยใส่
0x0489
ลงไป ระวังนิดหนึ่งมันเป็นเลขศูนย์นะครับไม่ใช่ตัวโอ เมื่อพิมพ์เสร็จก็ให้บันทึกไว้ใน .android ซึ่งจะอยู่ใน home directory ของท่านนั้นเอง
ถ้าเป็น XP ก็จะอยู่ใน
_C:\Documents and Settings\UserName.android _
เมื่อเสร็จเรียบร้อยก็ทำการเสียบสายเชื่อมต่อระหว่างโทรศัพท์กับ Windows อย่าลืมว่าโทรศัพท์ต้องอยู่ใน Mode USB Debug ทดสอบโดยการพิมพ์
**adb devices **
ถ้าไม่มีอะไรผิดพลาดท่านก็จะเห็นอุปกรณ์ของท่าน
Mac
เมื่อได้มาแล้วก็ให้แตกออกมาเก็บไว้ที่หาง่าย ๆ ตั้ง Path ง่าย ๆ เช่นเดียวกับบน Windows เช่นของผมก็เก็บไว้ที่
_/Users/mrchoke/sdk _
หลังจากนั้นก็กำหนด Path ให้ระบบโดยการแก้ไขแฟ้ม
_~/.bash_profile _
โดยการเพิ่มค่าให้ตัวแปร PATH
_export PATH=${PATH}:/Users/mrchoke/sdk/tools _
บันทึกทำการ reboot หรือ เรียกจะประกาศตัวแปร PATH ชั่วคราวก็ได้โดยการ export ตัวแปรให้กับ shell ที่ทำงานอยู่เลยก็ได้ถ้าขี้เกียจ reboot
ทำให้ adb ของ SDK ที่ติดตั้งเห็น A88
อย่างที่กล่าวไว้ว่าวิธีทำนั้นเหมือนกันทุก OS บน MAC ก็เช่นกันให้ท่านสร้างแฟ้ม ชื่อว่า adb_usb.ini ใส่บรรทัด
_0x0489 _
แล้วบันทึกไว้ใน
_/Users/UserName/.android _
เมื่อเสร็จเรียบร้อยก็ทำการเสียบสายเชื่อมต่อระหว่างโทรศัพท์กับ Windows อย่าลืมว่าโทรศัพท์ต้องอยู่ใน Mode USB Debug ทดสอบโดยการพิมพ์
_adb devices _
ถ้าไม่มีอะไรผิดพลาดท่านก็จะเห็นอุปกรณ์ของท่าน
$ adb devices List of devices attached FA1MAUS0001486 device
Linux
สำหรับบนลินุกซ์ก็จะคล้าย ๆ กับ MAC แต่มีขั้นตอนเพิ่มขึ้นมาเล็กน้อยดังนี้
หลังจาก Download มาแล้วก็ให้แตกแฟ้มออกมาเก็บไว้ใน Path ที่จำง่าย ๆ เช่นกัน เช่น
_/home/mrchoke/android_sdk
_
เมื่อแตกเรียบร้อยแล้วก็กำหนด PATH ให้กับระบบเช่นกันซึ่งสามารถกำหนดในแฟ้ม ~/.bash_profile หรือ ~/.bashrc โดยเพิ่มบรรทัดต่อไปนี้ลงไป
_export PATH=${PATH}:/home/mrchoke/sdk/tools _
บันทึกทำการ reboot หรือ เรียกจะประกาศตัวแปร PATH ชั่วคราวก็ได้โดยการ export ตัวแปรให้กับ shell ที่ทำงานอยู่เลยก็ได้ถ้าขี้เกียจ reboot หรืออาจจะเปิด shell ใหม่ขึ้นมาก็ได้ถ้าประกาศไว้ใน
~/.bashrc
ทำให้ adb ของ SDK ที่ติดตั้งเห็น A88
อย่างที่กล่าวไว้ว่าวิธีทำนั้นเหมือนกันทุก OS บน Linux ก็เช่นกันให้ท่านสร้างแฟ้ม ชื่อว่า adb_usb.ini ใส่บรรทัด
_0x0489 _
แล้วบันทึกไว้ใน
_/home/UserName/.android
_
กำหนดค่าให้กับ udev สำหรับการสร้าง device ใหม่เมื่อมีการเสียบโทรศัพท์เข้ากับคอมพิวเตอร์
สร้างไฟล์ /etc/udev/rules.d/51-android.rules ตัวเลขข้างหน้าอาจจะไม่จำเป็นต้อง 51 เสมอไปครับ ใส่บรรทัดต่อไปนี้ลงไป
SUBSYSTEM=="usb", SYSFS{idVendor}=="0489", MODE="0666", SYMLINK+="android_adb"
สำหรับท่านที่ใช้ระบบใหม่ ๆ อาจเปลี่ยน SYSFS{idVendor} เป็น ATTRS{idVendor} ส่วน SYMLINK+=”android_adb” อาจจะมีหรือไม่ก็ได้ ถ้าใส่ไว้ก็ดีไว้ตรวจสอบว่ามีการสร้าง Device จริงหรือไม่
เสร็จแล้วก็ให้ทำการ restart udev
Linux แต่ละค่ายอาจจะไม่เหมือนกันลองเลือกอันที่ใช้ได้ต้องเป็น root ก่อนนะครับ
_$ su – _
หรือ
_$ sudo su – _
หรือถ้าท่านมีการกำหนดให้เรียกใช้ sudo ได้ ก็ใช้ sudo นำหน้าคำสั่งก็ได้แล้วแต่ถนัดนะครับ
_# restart udev _
หรือ
_# service udev restart _
หรือ
_# /etc/init.d/udev restart _
เมื่อเสร็จเรียบร้อยก็ทำการเสียบสายเชื่อมต่อระหว่างโทรศัพท์กับ Linux อย่าลืมว่าโทรศัพท์ต้องอยู่ใน Mode USB Debug ทดสอบโดยการพิมพ์
_adb devices
_
ถ้าไม่มีอะไรผิดพลาดท่านก็จะเห็นอุปกรณ์ของท่าน
_
_
$ adb devices List of devices attached FA1MAUS0001486 device
ที่กล่าวมาทั้งหมดเป็นเพียงแค่การติดตั้ง SDK และทำให้ SDK มองเห็น A88 เท่านั้นยังไม่ใช่ขั้นตอนการ root นะครับสำหรับคำสั่ง adb บางครั้งท่านสั่งไปแล้วไม่ได้ผล หรือ มีการค้างอยู่อาจจะทำการ clear คำสั่งโดยใช้คำสั่ง
_adb kill-server _
ซึ่งเป็นการเริ่มทำงานของ adb ใหม่นั้นเอง
**
หมายเหตุ: เ**นื้อหาข้างต้นขอยก Credit ให้กับน้อง @Nattster (http://nattster.siamdev.net)
มาดูวิธีการ root กันบ้าง
ขั้นตอนจะเหมือนกันทั้ง 3 OS นะครับจะมีแค่บน Windows เท่านั้นที่ต้องลง Drivers ก่อนซึ่งผมแนะนำว่าให้ Copy Drivers จากตัวเครื่องโทรศัพท์มาเก็บไว้ใน Windows ก่อนซึ่ง Windows จะเห็น CD-ROM เพิ่มมาอีกหนึ่ง Drive ก็ Copy Folder RUT มาเก็บไว้ เมื่อทำเสียบโทรศัพท์เข้ามาใน Mode FTM ซึ่งมันจะถามหา Drivers ในครั้งแรกก็ให้ติดตั้งตามที่ได้ Copy มาเก็บไว้
ส่วนคำสั่ง su และ Package Superuser.apk สามารถ Download ได้จากของ droidsans เอง หรือ ที่ผมเก็บไว้ก็ได้คือ
droidsans : http://www.multiupload.com/B1Y69H16DZ
ของผม: /a88/a88_su.zip
ถ้าของ droidsans จะมีครบทั้งหมดคือพวก drivers มาด้วย จริง ๆ ก็ไม่จำเป็นอย่างที่ผมกล่าวไว้คือ A88 มันมีมาให้หมดแล้ว
ส่วนของผมก็แยกเอาเฉพาะส่วนของ su และ Superuser.apk มาเท่านั้น และมี script ติดตั้งมาให้ด้วย
การเตรียมเครื่องสำหรับเข้าสู่ Mode FTM
– ถอดสาย USB ออกจากเครื่อง (จริง ๆ ไม่ต้องถอดก็ได้)
– ปิดเครื่อง
– เมื่อเครื่องปิดสนิทแล้วให้กดปุ่มปรับเสียง ขึ้น และ ลง พร้อมกันแช่ไว้ แล้วกดปุ่มเปิดเครื่องด้านบน
– ปล่อยปุ่มเปิดเครื่องแต่ยังกดปุ่มปรับเสียงทั้งสองค้างไว้จนเข้าสู่ Mode FTM
– ปล่อยปุ่มทั้งหมด เสียบสาย USB
– ถ้าเป็น Windows ก็จะต้องติดตั้ง Drivers ก่อน
– ตรงนี้สามารถตรวจสอบก่อนก็ได้ว่าเครื่องเราเห็นโทรศัพท์หรือไม่โดยใช้คำสั่ง
$ adb devices List of devices attached 1234567890ABCDEF device
สังเกตุหมายเลขอุปกรณ์จะเปลี่ยนไปจากเดิม
– แตก a88_su.zip จะได้ directory su_component ซึ่งจะประกอบด้วย
Superuser.apk install.bat install.sh su
– เข้าไปยัง su_component
– ถ้าเป็น windows ให้เรียกใช้ install.bat
– ถ้าเป็น Mac หรือ Linux ให้เรียกใช้ install.sh ดังนี้
_
$ sh install.sh _
ถ้าไม่แน่ใจต้องการพิมพ์คำสั่งเองทีละบรรทัดก็สามารถทำได้เช่นกันซึ่งจะเหมือนกันทั้ง 3 OS แต่ท่านต้องอยู่ใน su_component ก่อน เพราะจะง่ายในการอ้างอิง path ของ su และ Superuser.apk คำสั่งก็มีดังนี้
adb shell mount -t yaffs2 /dev/block/mtdblock7 /system adb push su /system/bin adb shell chmod 4755 /system/bin/su adb install Superuser.apk adb shell reboot
หลังจากนั้นก็รอให้เครื่อง reboot จนเสร็จ
– เรียกใช้โปรแกรม Superuser Permission…ทางฝั่ง A88
– ทางฝั่งคอมพิวเตอร์ให้ดำเนินการดังนี้
adb shell $ su -
เมื่อพิมพ์คำสั่ง su – ทางฝั่ง A88 ก็จะมีการแจ้งเตือนว่ามีการใช้งานในสิทธิ์ของ root จะดำเนินการอย่างไรก็ให้อนุญาต ไปเท่านี้ท่านก็ได้ root shell เรียบร้อยให้สังเกตุ prompt ซึ่งจะเปลี่ยนจาก $ ไปเป็น #
ให้ระลึกอยู่เสมอว่าเมื่อเป็น root แล้วก่อนจะทำอะไรลงไปต้องระมัดระวังอย่างยิ่ง
หมายเหตุ: ข้อมูลข้างต้นขอยกความดีให้กับ @bluemoko แห่ง DroidSans.com
ทั้งหมดทั้งสิ้นถ้าท่านไม่แน่ใจว่ากำลังทำอะไรอยู่ หรือ ทำไปเพื่ออะไรผมไม่แนะนำให้ทำ และ หากทำแล้วเกิดข้อผิดพลาดขึ้นมาผมคงไม่รับผิดชอบใด ๆ ทั้งสิ้น ทั้งนี้เครื่องของท่านอาจหมดประกันไปโดยปริยาย แต่ถ้าข้อมูลเหล่านี้ทำให้ท่านได้รับประโยชน์ก็ขอยกความดีให้กับต้นฉบับทั้งสองที่ได้กล่าวมาแล้ว