比尔盖子 博客

Category: Apple

解决Gentoo能识别非iOS的ipod但不能识别iOS设备的问题

今天想用Gentoo给iPhone同步一些音乐,却发现播放器没有识别。通过dmesg得知:

usb 1-3: New USB device found, idVendor=05ac, idProduct=1297
usb 1-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
usb 1-3: Product: iPhone
usb 1-3: Manufacturer: Apple Inc.
usb 1-3: SerialNumber: <You mustn't know>

但是系统没有给其分配设备文件,导致无法挂载。重新配置内核,增加GUID分区表等驱动,未果。最后经过搜索,安装了libimobiledevice,但仍未果。

经过实验,发现比尔盖子的iPod不是iOS系统,可以挂载;但其它iOS设备:iPad、iPhone都无法挂载。经过搜索,发现原来需要增加一个USE:ios,然后再深度编译emerge -avuDN world即可。

原来,USE:ipod是给非iOS的iPod使用的,而iOS的iPod touch、iPhone、iPad则需要使用USE:ios。

最后安装ifuse即可。

iOS 5

但若是用此方法,无法使用iOS 5 的设备。那是因为iOS 5太新了,libimobiledevice和ifuse不支持。需要编译安装git版本。

git clone git://git.sukimashita.com/libimobiledevice.git
cd libimobiledevice/
./autogen.sh
make -j2
su -c 'make install'

git clone git://git.sukimashita.com/ifuse.git
cd ifuse/
./autogen.sh
make -j2
su -c 'make install'

#这样系统就会认为你的这两个包已经安装了,就不会再装一次了,但是当这两个包升级以后就需要自己维护了
su -c 'emerge -C ifuse libimobiledevice'
su -c 'mkdir /etc/portage/profile/'
su -c 'echo "app-pda/ifuse-1.1.1" >> /etc/portage/profile/package.provided'
su -c 'echo "app-pda/libimobiledevice-1.1.1" >> /etc/portage/profile/package.provided'

 

Enter to DFU mode without press any buttons | 不用按键,使用工具轻松进入DFU

URL for Download | 下载地址

Click Here To Download DFU Tools

HOWTO:

This tools can enter to DFU mode without press any button. It’s a Windows version. But an iBoot update can cause it not working, I not sure, it working or doesn’t working now.

UPDATE: I tried. It’s only work on an iPhone 3GS, and maybe iPhone 3G/2G(I can’t test). But it is not work on iPhone 4 or a newer iDevice.

1.Unzip this tools to C:\dfu (and connect you iPhone).
2.Press “Start menu” –> “run” –> type cmd
3.type

C:\dfu\dfu iBSS.m68ap.RELEASE.dfu

4.iPhone will reboot and got a white screen, it’s a special DFU mode, jailbreak/restore your iPhone now!

指南:

这个工具可以在不按任何按键的情况下将iPhone进入DFU模式。这是一个Windows版本。但是如果苹果更新了它的iBoot,这个程序可能会失效,我不确定它现在是否正常。

更新:经过测试,只有在iPhone 3GS上工作正常,也许还能工作在iPhone 3G/2G上(我无法测试)。但是iPhone 4或之后的设备不可以使用。

1.将文件解压到C:\dfu(同时连接你的iPhone)
2.点击“开始菜单” –> “运行” –> 输入 cmd
3.在命令提示符中输入:

C:\dfu\dfu iBSS.m68ap.RELEASE.dfu

4.iPhone会自动重启,而且会白屏。你现在已经进入了一个特殊的DFU模式,赶快进行越狱/还原操作吧!

iFaith备份证书卡住的解决方案

今天给一个iPhone 4备份SHSH证书,但是苹果已经停止对iOS4.3.3 SHSH证书的签发。因此使用iFaith V1.1 备份SHSH证书。

进入DFU模式后,开始备份SHSH。但是卡在了Detecting ECID的过程,1个小时也不见任何进展。最后无奈关闭了iFaith。

再使用Home+Power重启,进不去系统,进入连接iTunes恢复模式!

使用Tinyumbrella的Exit Recovery踢出恢复模式,就可以正常开机了。

iOS越狱的基本知识

——iOS越狱不是盗版行为,合理合法

看到了这么一个帖子《需越狱才能装输入法不是公开支持盗版吗!》,全文如下:

需越狱才能装输入法不是公开支持盗版吗!本人一直期待搜狗输入法能在苹果上运行。从测试版等到正式版。没有想到的是正式版也要越狱。更没有想到的是支持盗版的竟是搜狐!

看来,许多人都对“越狱”这个词不理解,下面我就来通过回答疑问的方式告诉大家关于越狱的知识。

疑问1:越狱是什么?

回答:

苹果的手机(iPhone)、平板电脑(iPad)和MP4(iPod touch),甚至是连接到电视上的高清视频播放器(Apple TV),都是用的是一个名为iOS的操作系统。我们的电脑用Windows,人家用iOS。iOS是什么意思?iOS就是iPhone Operning System,意为iPhone操作系统。

而iOS系统不同于其它的系统,你用Windows的话,如果这是属于你的电脑,你肯定有管理员权限,如果你在一台类似网吧的公共环境下用电脑,你会发现很多软件安不进去,提示:你不是管理员。这会痛苦死的。

而iOS给用户的权限很小,不给用户root权限。root权限是什么东西?用人类语言来说,就是管理员权限,只不过在iOS中换了个名字罢了。
——————————————————
比尔盖子链接:root除了是iOS系统的管理员之外,Linux、Unix、Mac OS X等系统中的管理员也叫root。
——————————————————

如果iOS的管理员权限被锁死了,那么就像你在网吧中遇到的情况一样,有些软件会安不上的!那为什么用App Store的时候所有的软件都能安上呢?那是因为App Store里的软件都是低级的ipa软件,不需要至高无上的管理员特权(同时也是苹果所说的所谓“合法”软件)。

但是情况又不太一样!你自己编写了一个iOS的ipa软件,也不需要root权限啊,为什么不能安装到别人的iOS上呢?那是因为苹果的盈利模式就是只能在App Store上安软件,如果你的软件没有通过苹果公司严格的软件审核,不能发布到App Store上,也就不能安装了。说明白点,iOS只允许安装App Store上的ipa软件。即使你的软件没有涉及到系统底层,没有发布到App Store上也是不能安装的!

连不需要root权限的ipa软件都不能安装,别提系统级的软件,诸如输入法、虚拟内存、外观样式、解码器之类的。第一你没有root权限;第二你的软件没有发布到App Store,不受苹果承认,因此不能安装。

那苹果通过什么来确定你的IPA是否是苹果承认的呢?答案就是:数字签名。所有苹果允许发布的IPA软件都包括了一个苹果的数字签名,在软件被安装到iOS上之前,iOS会检查上面的数字签名,如果发现没有数字签名,恭喜你,此IPA无效。同时,此IPA的购买者信息也被记录在IPA里面,也就是说,如果别人购买了一个软件,把IPA发给你了。首先,此IPA是苹果承认的,过了第一层检查,软件已经被安装到你的iOS上了,但你要打开应用时发现,一打开瞬间就退出了,也就是“闪退”,这是怎么回事?原来,苹果发现此IPA的购买者信息与目前苹果(或曾经)登录过的App store账户不符!如果你曾经使用过某个账户并下载安装过软件,那么此账户拥有的IPA才能被执行。这也是论坛上分享应用的人,让大家随便下一个软件,注销,然后以后装IPA的原理。

那这个数字签名可不可以伪造呢?如果你可以,那么你除了可能会获得百万美金以外,还可能轰动全球。虽然没法伪造数字签名,那么是否可以破坏iOS的签名检查机制,从而随意安装软件呢?答曰:可以;又答曰:需要root权限!也就是需要越狱,越狱之后某些人一定安装的IPA补丁就是这个用途。那么到底怎么把软件破解,然后安装到iOS上呢?很简单。前面说过,IPA的购买者信息包括在一个IPA文件里面,我们现在只需要简单的用软件把这个购买人去掉就行了。但是这会导致无法通过苹果的签名检查,因为文件改动了,签名失效了,当然可以重新签,可能吗?那怎么办?打IPA补丁,屏蔽掉苹果的签名检查!

苹果偏偏不让你自由安装软件。但是,这个苹果设备是我们用户的,我们怎么用和苹果有什么关系?这就是“越狱”受到美国法律保护的原因。

说了这么多,到底那怎么办才能自由安装软件?难道要破解root的密码来拿到root权限来自由安装软件吗?比尔盖子可以告诉你:iOS系统和其它的类Unix系统,都是很注重安全性的,因此你不可能拿到root权限的。

想想办法:你是否给Windows补过“系统漏洞”?有没有注意到有些漏洞的说明中写道“任意执行代码”的字样?
——————————————————
比尔盖子链接:由于当时系统程序设计时根本没有考虑周全,而造成程序缺陷。比如说,某人写了一个计算器软件,但是却没有检查用户输入的算式是否合法。有一天,一个用户不小心输入了5除以0,由于0不能做除数,因此导致程序弹出一对错误提示后崩溃。这种程序的缺陷,被称作bug。关键是除数是不是0不要紧,有些缺陷可以导致程序的安全保护失灵。如果一个程序在安全防范方面存在了bug,利用这个bug就可能绕过整个安全机制,比如可以从普通用户变身管理员。那么这种缺陷除了可以一般的称作bug,还可以称作“系统漏洞”!
——————————————————

说了这些,你可能会这样想:咦?既然Windows里面有可以“钻空子”成为管理员的漏洞,那iOS里有没有“钻空子”获得root权限的漏洞呢?你猜对了,有!因此,有些黑客利用这些漏洞来编写软件,用软件就可以轻松获得iOS的root权限,这就是越狱了。

越狱完毕以后,就可以通过Cydia(越狱之后的App Store)上自由安装需要有root权限的软件了;也可以直接通过iTunes安装破解过的ipa软件;还可以再用Cydia安装全世界最大的ipa软件破解组织出品的Installous,在App Store中所有的付费软件,Installous中几乎都能下载到破解版。不过,越狱之后可以安装盗版应用,但是越狱不是为了安装盗版应用。越狱不为盗版而生,不等于盗版。

疑问2:越狱之后的iOS为什么会更容易白苹果呢?

回答:你也许有过把Windows或Linux系统搞坏的经历,这也许是你的操作失误,乱改设置;也可能是软件的问题导致的。不过话说回来了,你在网吧时没有管理员权限怎么折腾上面这几件事情呢?没办法吧!或者,你用系统管理员登录系统之后,系统也不会立即坏掉吧,说了句废话。所以说,以管理员权限使用系统时或多或少会有问题,是你或是第三方软件导致的,但与越狱本身无关!

疑问3:越狱之后的iOS为什么不保修呢?

回答:其实,无论是微软还是Sun,都不会为Windows和Unix的用户“保修”整个系统,解决一切问题,因为系统是开放的,什么都能干,它们也不可能帮你解决一切问题;但iOS不一样:封闭的环境,系统的功能是固定的,因此苹果有能力对此进行保修。一旦越狱,不确定因素就很多了,故无法保修。另外,你以苹果公司不接受的方式使用苹果设备,人家怎么会保修呢?因此,越狱不保修的问题不值得奇怪。但是一旦越狱之后有了问题(比如硬件坏了)怎么办呢?呵呵,用iTunes“恢复”一下就回到了未越狱状态,就可以正常保修了。因此,你不用为“越狱或否”进行思想斗争,因为越狱之后可以反悔。

Copyright © 2021 比尔盖子 博客

Theme by Anders NorenUp ↑