OS-X-El-Capitan

by nsleejian

nsleejian / OS-X-El-Capitan

OS X El Capitan 更新速度慢的解决方法

125 Stars 18 Forks Last release: Not found 14 Commits 0 Releases

Available items

No Items, yet!

The developer of this repository has not created any items for sale yet. Need a bug fixed? Help with integration? A different license? Create a request here:

OS X El Capitan 更新速度慢的解决方法

基本原理


抓取苹果官方下载链接,用第三方下载工具下载 .pkg 文件。搭建本地 server ,将苹果的下载地址解析到本地的服务器,从而实现快速下载安装。

(适用于 El Capitan 更新慢的用户,有百兆光纤的用户可忽略)

第一步、抓取苹果官方下载链接

(为了安全性最好自己抓包获取此下载地址,后面的 hostname、 path 和自己抓取的链接对应)

由于前段时间的 Xcode Ghost 时间影响,当然不能再信任第三方的网盘,自己动手丰衣足食。 通过 Charles 抓取到的链接如下:

http://osxapps.itunes.apple.com/apple-assets-us-std-000001/Purple3/v4/74/d2/82/74d28291-9db9-7ae2-305d-9b8b3f5fd463/ftk3252456602304584541.pkg

第二步、下载 .pkg文件

抓取到苹果官方的下载链接后,我们可以通过第三方下载工具下载 .pkg 文件,下载工具自选。下载完成后文件是无法直接安装的,下面我们要做的就是搭建本地 server 用来替换苹果官方的 server。

第三步、搭建本地 server

  • 3.1分析 URL 文件 一般的 URL 格式如下:
   protocol :// hostname[:port] / path / [;parameters][?query]#fragment

在这里我们只需要找到 hostname 和 path

   hostname  : osxapps.itunes.apple.com
   path      : /apple-assets-us-std-000001/Purple3/v4/74/d2/82/74d28291-9db9-7ae2-305d-9b8b3f5fd463/

  • 3.2 将域名指向本地 通过修改 hosts 文件 将域名指向 127.0.0.1,通过如下命令打开 hosts 文件
    sudo vim /etc/hosts  

修改部分如下 这样 DNS 就会将 osxapps.itunes.apple.com 解析到本地

  • 3.3 搭建 SimpleHTTPServer 首先创建根目录(路径可自己修改),本人放在桌面
   cd Desktop  
   mkdir elCapitanRoot 

根据抓包得到的 path 创建相关路径,在 elCapitanRoot 目录下

   cd elCapitanRoot
   sudo mkdir -p  ./apple-assets-us-std-000001/Purple3/v4/74/d2/82/74d28291-9db9-7ae2-305d-9b8b3f5fd463/
把下载的 .pkg 文件拷贝到路径下面,就是目录 74d28291-9db9-7ae2-305d-9b8b3f5fd463 下

然后再 elCapitanRoot 目录下,注意一定要再 elCapitanRoot 目录下,运行如下命令启动 SimpleHTTPServer

sudo python -m SimpleHTTPServer 80

运行成功会如下图显示

此时你可以在浏览器中测试一下儿下载速度,在地址栏输入我们抓取的苹果官方的下载链接,如果一切配置都正确,你应该会看到百兆的下载速度

最后一步

打开 App Store 找到 OS X El Capitan 的更新按钮 ,点击更新按钮,稍等片刻,下载完成后就会弹出安装页面。安装过程需要一段时间,冲杯咖啡等待即可。

enjoy...

注意:安装完成之后,请把 hosts 文件还原。


UPDATE : 2015.10.02
1、如果有 VPS 的话,也可以先下载到自己的 VPS 上,然后将苹果的下载地址解析到 VPS ,原理相通。

2、检验你的 DNS

引用@Livid的帖子http://v2ex.com/t/225039#reply76

相关链接:

URL

SimpleHTTPServer

hosts 文件

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.