分享
 
 
 

iPhone安装双系统详细教程

王朝other·作者佚名  2008-12-28
窄屏简体版  字體: |||超大  

概述

Devteam最近几个月来一直在尝试运用双重启动进行iPhone的越狱,但是因为目前还有几项先进的技术还在研发阶段(许多仍然没有公开),我想还是先向那些想尝试利用双重启动来破解iPhone手机(或OS’S)的朋友们公布下面这项令人叫绝的破解方法吧。

下面我将使用一部已越狱的iPhone1.1.4手机,并利用1.1.1固件向你展示此破解过程。为了实现破解,我将在手机上创建一个新的分区,并在该分区上安装1.1.1固件,然后将手机升级到1.1.4版本。但采用这一步骤使得这一分区存在一定缺陷,这时i可以双重重启iphone手机,利用已存在的1.1.1分区安装1.1.4分区。一旦安装成功,你就可以改变你的分区点,然后再安装OpenSSH.

一旦你的双版本OS可以使用了,你就可以通过改变启动设置来随意在两个版本的OS之间进行切换了。

例如:nvram boot-args=“rd=disk0s3 -v”

声明:

以下破解过程,向其他所有的破解方法一样,可能导致你的手机永久性损坏,无法修复。因此我们对提供的下述信息不做任何保证。所有后果一律自付。

破解流程:

第一步:如必要,降级iTunes

在写该破解过程的时候,iPHUC还不支持iTunes 7.6.因为我不确定你的iPHUC是否已经升级,所以我假设你的iPHUC版本是和我的一样的。

如果情况确实如此,那么你可能要用iTunes7.5或更低的版本。如果必要,退出至~/Music/iTunes library,删除iTunes。

在OS X上, 你可以做如下操作:

#rm -rf /Applications/iTunes.app

# rm -rf/System/Library/PrivateFrameworks/MobileDevice.framework

# mv~/Music/iTunes ~/Music/iTunes.7.6

现在下载并安装iTunes 7.5

第二步:安装iPHUC

如果你需要iPHUC , 打开它,再打开jailbreak.jar, 解压iPHUC。

注意:iPHUC有许多版本不兼容,因此除非你有它的更新版本,否则我们在此推荐你用这个版本。

第三步:如必要,降级(或升级)iPhone软件

此时你必须从一个已经越狱的iPhone手机软件入手,比如1.1.1或更高版本。1.0.x则不能进行以下操作,除非你是在最近45周或更短的时间内拥有了iPhone手机。如果你运行1.1.4版本,则你可以把他降级到1.1.1. 如果你运行1.0.X,你需要将其升级至1.1.1除非你拥有的并非是真的1.0.x版本手机。一旦你运行1.1.1,用*#307#破解进入 Safari 并通过http://www.jailbreakme.com.安装AppSnapp.这样就可以激活你的手机把installer放在SpringBoard目录下。更加详细的流程请参看http://www.pantsland.com/2007/12 ... ctions-with-unlock/用AppTapp 安装BSD subsystem 和SSH 使其与1.1.1版本兼容。

第四步:通过1.1.1ramdisk安装必要的工具

从1.1.1或1.0.2ramdisk中找到下列文件:

fdisk

newfs_hfs

fsck_hfs

mount_hfs

umount

注意:只有ramdisk上的fdisk版本才可以在iPhone手机上运行。如果你使用错误,fdisk会显示“不能识别”。用scp.从ramdisk上安装binaries到/usr/sbin到你的1.1.1版本上,并运行。# chmod 755 /usr/sbin/*

第五步:设置分区栏

这步,我们调整 /private/var分区,并创建第三个分区,disk0s3,这样可以删除/private/var。所以你需要做的第一件事是建立一个/private/var的备份。这时你的/private/var将有300MB大小。如果你愿意,你可以体制该操作,尽管使你的手机具有双重重启功能是有一定价值的。

# tar -cf /private.tar--preserve /private/var # (ignore the errors)

现在,卸载:

# umount -f/private/var

下一步,运行fdisk:

# fdisk -e/dev/disk0

如果你按上面的操作运行,运行错误,那么可能你运行的是另一个版本的fdisk,而不是上面我们说的那个版本。如果真的遇到这种情况,用全程路径找到有上面那个版本fdisk的ramdisk。你可以通过减少cyliner的大小来编辑分区2,一个cyliner, 即s1,是+ delta大小,即在s1和s2之间(通常为120或123)。对于iPhone来说, 差不多是153720cyliners.下一步,编辑分区3,一般与分区1和分区2同样间距(尽管没必要),大小与分区1一样(iPhone为153600,iPod为76800)

最后分区大小如下:

4GB iPhone:

Disk: /dev/disk0 geometry: 983/32/63[1982464 sectors]

Sector size: 2048 bytes

Signature: 0xAA55

Starting Ending

#: id cyl hd sec - cyl hd sec [ start -size]

------------------------------------------------------------------------

1: AF 0 1 1 - 1023 254 63 [ 63 - 153600] HFS+

2: AF 1023 25463 - 1023 254 63 [ 153663 - 1674861] HFS+

3: AF 1023 254 63 - 1023 25463 [ 1828644 - 153600] HFS+

4: 00 0 0 0 - 0 0 0 [ 0 - 0] unused

8GBiPhone:

Disk: /dev/disk0 geometry: 983/64/63 [3964928 sectors]

Sectorsize: 2048 bytes

Offset: 0 Signature: 0xAA55

Starting Ending

#: idcyl hd sec - cyl hd sec [ start -size]

------------------------------------------------------------------------

1: AF 0 1 1 - 1023 254 63 [ 63 - 153600] HFS+

2: AF 1023 25463 - 1023 254 63 [ 153663 - 3657665] HFS+

3: AF 1023 254 63 - 1023254 63 [ 3811328 - 153600] HFS+

4: 00 0 0 0 - 0 0 0 [ 0 - 0]unused

16GB iPod Touch:

Disk: /dev/disk0 geometry: 983/64/63 [3964928sectors]

Sector size: 4096 bytes

Offset: 0 Signature: 0xAA55

Starting Ending

#: id cyl hd sec - cyl hd sec [ start -size]

------------------------------------------------------------------------

1: AF 0 1 1 - 1023 254 63 [ 63 - 76800] HFS+

2: AF 1023 25463 - 1023 254 63 [ 76863 - 3811059] HFS+

3: AF 1023 254 63 - 1023 25463 [ 3887922 - 77006] HFS+

4: 00 0 0 0 - 0 0 0 [ 0 - 0] unused

8GB iPodTouch:

Disk: /dev/disk0 geometry: 983/64/63 [3964928 sectors]

Sectorsize: 2048 bytes

Offset: 0 Signature: 0xAA55

Starting Ending

#: idcyl hd sec - cyl hd sec [ start -size]

------------------------------------------------------------------------

1: AF 0 1 1 - 1023 254 63 [ 63 - 153600] HFS+

2: AF 1023 25463 - 1023 254 63 [ 153720 - 3657465] HFS+

3: AF 1023 254 63 - 1023254 63 [ 3811185 - 153600] HFS+

4: 00 0 0 0 - 0 0 0 [ 0 - 0]unused

记得必要动分区1,否则你可能删除了OS。若果操作正确,此时可以用fdisk重写你的分区栏。完成后,你需要同步上述命令行:#sync; sync; sync;现在,第三分区已经可以建设好了。因为某些原因,disk0s2被移动到了/dev下的disk0s4处。所以你需要把它移回来。

# mv /dev/disk0s4 /dev/disk0s2

# mv/dev/rdisk0s4 /dev/rdisk0s2

第六步:恢复/private/var

改变分区使得你不得不删除/private/var,所以此时你需要将它恢复到正常状态。为此,格式化/private/var,然后extract 你的 tarball

newfs_hfs /dev/disk0s2

mount-t hfs /dev/disk0s2 /private/var

cd /private/var

tar -xvf/private.tar

mv ./private/var/* /private/var && rm -rf./private

第七步:复制OS分区复制OS分区(disk0s1)到你新建的分区(disk0s3).为了避免错误,先将root设置为只读:

# mount -o ro /

然后,用dd复制原盘:

# ddif=/dev/rdisk0s1 of=/dev/rdisk0s3 bs=4096

这将需要几分钟,一旦完成,运行fsck:

#fsck_hfs /dev/disk0s3

现在,重新将root 设置为read-write,

重新设置新分区:

# mount -orw /

# mkdir /mnt

# mount -t hfs /dev/disk0s3 /mnt

第八步:设置新的重启分区

一旦你设置了新的重启分区,你需要将它在root内进行更改、首先,编辑/mnt/etc/fstab以便你可以将root从disk0s1改为/as/dev/disk0s3。其次,你需要进行symlink破解。苹果在升级过程会通过查找/sbin/launchd.文件检测到可疑分区。如果检测到,就会无法升级。幸运的是,其只在分目录下查找可疑分区不在根目录下查找,所以如果我们移动sbin到“mysbin”,然后链接/sbin →/mysbin,那么就不会被检测到。(因为mysbin实际在/mnt目录下),但是分区被作为root时链接就会起作用了:

# cd/mnt

# mv sbin mysbin

# ln -s /mysbinsbin

注意:检查确定你链接到/mysbin,而不是mysbin.

现在就可以安全卸载/mnt了。

然后,你也可以从/private/var中删除其他Installer caches。# find /private/var -name Installer-exec rm -rf {} \;

第九步:从新分区启动

当启动iphone时,三个主要的nvramvalues就可以使用了:

Auto-boot (true):决定iphone是否自动启动还是进入安全模式

Boot-partition(0):确定root分区号(Zero-indexed)

boot-args(empty):用来设置root工具和verbose模式

运行上述程序以便iphone可以使用新分区:

# nvram boot-partition=2

# nvram boot-args="rd=disk0s3-v"

# nvram auto-boot=true

# sync

#reboot

运行“mount”以确定你的手机是在新分区运行,这样就可以看到根文件系统是在disk0s3下运行,而不是在disk0s1下运行。

如果不能正常启动,可以尝试利用iPHUC启动:

# iphuc

#: enterrecovery (if necessary)

#:cmd setenv\ boot-args\ rd=disk0s3\ -v

#: cmd setenv\ boot-partition\2

#: cmd setenv\ auto-boot\ true

#: cmd saveenv

#: cmdfsboot

如果运行没有任何反应,通过Home+power试着进入恢复模式直到你看到指示告诉你“连接iTunes”。

第十步:升级到1.1.4

升级回到7.6版本在OSX状态下,1.1.4版本只能在iTunes7.6版本下升级。而在windows 下,iTunes7.5就足够了。否则你需要暂时将iTunes升级到7.6版本。

升级iTunes,点击“Check for updates”。它可能推荐你下载1.1.4版本,这时你只需点击“Downloadonly”,一旦你下载了1.1.4,按“update”键(而不是“restore”)。这样就可以只更新OS分区,不用刷掉以前的东西。如果iTunes没有显示数字错误,那么恭喜你。现在你就拥有一部可以重启多版本的iPhone手机了。你仍然可以在你的手机上看到“Connect toiTunes”图标。降级到7.5版本真是个致命伤。iPHUC不支持7.6版本,如果你需要升级到7.6,那么现在你需要降级到7.5来完成此过程。

第十一步:利用iPHUC启动1.1.1版本

查看1.1.4ipsw文件,你会看到kernel cache.用iPHUC复制kernel cache到iPhone:

# iphuc

#:filecopytophone kernelcache.release.s5l8900xrb

现在,输入下列iPHUC命令到root.

#: cmd setenv\ boot-args\ "rd=disk0s3\ -v"

#: cmd setenv auto-boottrue

#: cmd saveenv

#: cmd bootx

第十二步:设置1.1.4分区,运行shop

一旦从新启动回到了1.1.1版本,你就能够设置1.1.4分区。

# fsck_hfs /dev/disk0s1

# mkdir /mnt

# mount -t hfs/dev/disk0s1/mnt

首先检查fsck,以防iPhone禁止你设置。

现在开始安装。通过/mnt你可以设置read-write1.1.4.你可以改变master.passward 文件,安装OpenSSH,或安装其他你想安装的软件。但要确保编辑fstab为read-write根文件系统。运行mobile Terminal, 你需要进行如下操作使其可以在未授权情况下可以运行:

1.从http://iphone.natetrue.com 安装BSD_Base 和BSD_Extras

2.复制Terminal.app 到/mnt/Applications

3. mkdir -p/mnt/usr/local/arm-apple-darwin/

4. ln -s /usr/lib/mnt/usr/local/arm-apple-darwin/lib

5. cp -p /mnt/bin/bash/mnt/bin/sh

6. chmod 4755 /mnt/usr/bin/login

7. Edit/mnt/etc/master.passwd to put your own password in

当你想要回到1.1.4启动时,

senvram up:

# nvram boot-partition=0

# nvram boot-args=""

# nvramauto-boot=true

# sync

#reboot

完成!现在你就可以在两个版本下双启动了。你还可以将此程序应用到1.2或其它版本固件上。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有