ROOT WellcoM A88

Sat 20 Mar 2010
ใช้เวลาอ่าน 4 นาที

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

– เลือกแอปพลิเคชัน

usb

– เลือกการพัฒนา

usb

– เลือกการดีบั๊ก USB

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  **

ถ้าไม่มีอะไรผิดพลาดท่านก็จะเห็นอุปกรณ์ของท่าน

win

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 มาเก็บไว้

rut

rut

rut

ส่วนคำสั่ง 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

RTM

– ปล่อยปุ่มทั้งหมด เสียบสาย 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

su


su

– ทางฝั่งคอมพิวเตอร์ให้ดำเนินการดังนี้

adb shell
$ su -

 

เมื่อพิมพ์คำสั่ง su – ทางฝั่ง A88 ก็จะมีการแจ้งเตือนว่ามีการใช้งานในสิทธิ์ของ root จะดำเนินการอย่างไรก็ให้อนุญาต ไปเท่านี้ท่านก็ได้ root shell เรียบร้อยให้สังเกตุ prompt ซึ่งจะเปลี่ยนจาก $ ไปเป็น #

su

ให้ระลึกอยู่เสมอว่าเมื่อเป็น root แล้วก่อนจะทำอะไรลงไปต้องระมัดระวังอย่างยิ่ง

หมายเหตุ: ข้อมูลข้างต้นขอยกความดีให้กับ @bluemoko แห่ง DroidSans.com

ทั้งหมดทั้งสิ้นถ้าท่านไม่แน่ใจว่ากำลังทำอะไรอยู่ หรือ ทำไปเพื่ออะไรผมไม่แนะนำให้ทำ และ หากทำแล้วเกิดข้อผิดพลาดขึ้นมาผมคงไม่รับผิดชอบใด ๆ ทั้งสิ้น ทั้งนี้เครื่องของท่านอาจหมดประกันไปโดยปริยาย แต่ถ้าข้อมูลเหล่านี้ทำให้ท่านได้รับประโยชน์ก็ขอยกความดีให้กับต้นฉบับทั้งสองที่ได้กล่าวมาแล้ว