Advertisement
ไปอ่านที่เวป smart-mobile.com มาแล้วเจอเลยเห็นว่าเป็นประโยชน์กับเพื่อนๆนะครับ เลยเอามา shared กันครับ
เมื่อ 2 วันก่อน เพื่อนผมที่ใช้ iPhone4 เครื่อง US Locked เอาเครื่องมาให้ บอกว่าช่วยอัพเป็น iOS5 ให้หน่อย
เพราะเจ้าตัวยังเป็น 4.0.1 อยู่เลย (ตั้งแต่ซื้อมาไม่เคยอัพ) จนตอนนี้ลงหลายๆโปรแกรมไม่ได้ 
ผมก็โอเค ลองทำให้ก็ได้ (ของตัวเองก็ยังไม่ได้อัพ เอาเครื่องเพื่อนนี่แหละ ลองก่อนเลย)
———————————————————————-
ขั้นตอนแรกเลยคือ ตรวจดู baseband พบว่าเป็น 01.59.00 (โอเค ใช้ ultrasn0w 1.2.4 ได้อยู่)
ก็เริ่มใช้ redsn0w 0.9.9b5 ทำการสร้าง Custom FW แบบรักษา BB ไว้
ใช้ redsn0w จับ iPhone4 เข้า Pwned DFU แล้วจับเสียบ iTunes 10.5
กด Option + Restore เลือก CFW ที่ทำไว้ก็ผ่านไปได้ด้วยดี
จนเปิดเครื่องขึ้นมาอีกทีก็เป็น iOS5 แล้ว แต่ขึ้นว่า “The sim card inserted in this iPhone does not appear to be supported” เนื่องจากเป็นเครื่อง US Locked
ก็ใช้ redsn0w ตัวเดิมนี่แหละครับ จับ iPhone4 เข้า DFU mode แล้วทำการ jailbreak ซะ
Advertisement
หลังตัว redsn0w ทำการ jailbreak เสร็จ (และบอกว่าขั้นตอนต่อไปทั้งหมดจะเกิดขึ้นบนเครื่อง iPhone) ตัวเครื่อง iPhone4 ก็ reboot ตัวเอง
รออยู่ 10 กว่านาทีก็ reboot ไม่ขึ้น (เริ่มสงสัยละ ว่าทำไมค้างนานจัง)
จนสุดท้ายจับเข้า DFU mode อีกรอบ แล้วใช้ “Just Boot” ใน redsn0w ทำการ boot ขึ้นมาได้ เข้าหน้า Home มี Cydia พร้อม
ลง Ultrasn0w 1.2.4 จนมีสัญญาณโทรศัพท์ขึ้นมา (เย้ สำเร็จแล้ว) ก็เอาเครื่องคืนเพื่อนไป
หายไปสักพัก เพื่อนวิ่งกลับมาบอกว่า ไม่สามารถใช้ EDGE/3G ได้เลย
ผมก็เออ คุ้นๆแฮะ เปิดดู Settings > General > Carrier เป็น unknown เพราะเป็นเครื่อง US ทำให้เครืองเล่นเนตไม่ได้
เลยจับ add source ใน Cydia ชื่อ “http://cydia.pushfix.info” แล้วลง Carrier Reset Fix ซะ
เอา sim ออก แล้วใส่ใหม่ จนเครื่องเล่น EDGE/GPRS ได้ปกติ
หายไปสักพัก เพื่อนก็กลับมาบอกว่า push notifications ไม่ทำงานเลย
เออ… จริงด้วยแฮะ เครื่องไม่มี cert. เพราะไม่ได้ activate ผ่าน iTunes เลย
จัดการลง Push Fix ก็แล้ว Push Doctor ก็แล้ว ยังไง push ก็ไม่ทำงาน คงเพราะ cert. จากโปรแกรมพวกนี้ ใช้งานไม่ได้แล้ว (เริ่มเดรียด… กลัวเพื่อนโวย)
โอเค… เอา cert. จากเครื่องศูนย์ 3GS (ที่ไม่ได้ใช้งานแล้ว) มาลงให้เองเลยละกัน
จับเครื่อง iPhone 3GS ลง source “http://www.cmdshft.ipwn.me/apt/” แล้วลงโปรแกรม nimble เพื่อทำการสร้าง cert. keys ขึ้นมา ส่วนเครื่อง iPhone4 ก็ลงโปรแกรม inject ไว้
แล้วก็ใช้ iFunBox ทำการ copy ไฟล์ cert. keys ออกมาเพื่อใส่ในเครื่อง iPhone4 แทน
พอจับเครื่อง iPhone4 เพื่อต่อ iFunBox ปรากฏว่า ตัว iFunBox บอกว่าเครื่องไม่ได้ jailed ไม่สามารถดูไฟล์ได้
อ่อ จำได้ละ ต้องลง afc2add จาก Cydia ก่อน ไม่งั้นต่อไม่ได้ ก็จัดการลงให้เสร็จ
ต่อ iFunBox ทำการ copy ไฟล์ cert. keys ไปวางไว้ใน /private/var/Keychains/
เปิด terminal บนเครื่อง MAC เพื่อจะ SSH ไปรันคำสั่ง inject
ปรากฏว่าเครื่อง iPhone4 ไม่ยอมรับ password “alpine” เพื่อ login root เข้าไป
เอาละสิ ทำไม default password เปลี่ยนละ แล้วใครจะรู้ password root ละเนี่ย (ลอง “dottie” ดูแล้วก็ไม่ได้)
เอะ.. แต่เราใช้ iFunBox ได้นิน่า งั้นทำการเปลี่ยน password root เองเลยละกัน
จัดการใช้ iFunBox ทำการดึงไฟล์ master.passwd ออกมาจาก /etc
ใช้ tools (ขอไม่บอกละกันครับ) เพื่อสร้าง hash ของ password “alpine” ขึ้นมาใหม่ แล้วไปแทนที่ hash เก่าใน master.passwd
จับ copy เข้าไปแทนที่ของเดิม แล้วลอง SSH เข้าไปใหม่ได้เลย
รันคำสั่ง inject เพื่อใส่ cert. keys ของ 3GS เข้าไปใน iPhone4

ส่วนตัว 3GS ก็จับลบทุกอย่างใน /var/root/Library/Lockdown แล้วก็ รันคำสั่ง “killall -TERM lockdownd SpringBoard” เพื่อปิด process และให้เครื่อง activte เพื่อสร้าง cert. keys ขั้นมาใหม่
จัดการ reboot ตัว iPhone4 รอบนึง (ต้องใช้ redsn0w ช่วย)
สุดท้ายเพื่อนก็ได้ใช้ iOS5 บน iPhone4 US Locked ได้อย่างสบายใจครับ
Credit คุณ montai จาก smart-mobile.com ครับ

