上篇我们已经遇到个难题,就是Cygwin还没全部下载完全,向导程序就自己罢工不干了。怎么办? 继续等待?重新再来一遍?换个下载镜像站点?。。。都不是好办法,不保险啊。最好的办法,就是能让向导程序在上次异常中止的地方重新开始下载,继续下载。也就是类似于FTP的断点续传功能。
Cygwin的安装向导程序能够实现该功能吗?能!而且干的还挺漂亮,只不过。。。相应的设置实在是太古怪了,简直有误人子弟之嫌!我在尝试的时候,有N 回都已经几乎摸到门把手了,但就是因为心想:怎么可能会是这种配置呢?决对不行的!。。。。结果,像瞎子一样继续在黑暗中摸索了很久,才找到了出口。其中得出的教训远比得到的经验深刻~~~~闲言少叙,言归正传。
一但用户在下载过程中碰到了这种情况,不能浪费时间继续等待,因为那时安装向导实际上已经被中止了和站点的连接,只是它仍在那里不停的循环,不停的徒劳的尝试而已。我们唯一要做的也是唯一能做的,就是点击“取消”按钮,关闭该向导!不要心疼已经下载的那部分安装文件,不用担心,已经下载完毕的文件不会消失,而且还仍将有用。
关闭向导程序后,再重新运行它(一定要用你原先用的那个,而不能重新再当一个), 一路“下一步”下去(详细步骤可参阅上篇的内容,但要注意的是,进行本地下载存储路径设置时,必须和原先下载时的设置保持一致!),直到出现下图所示的站点选择窗口:
这时候,千万千万别去选择其他站点!对,仍旧选择你第一次下载时选择的那个!而且,向导程序也会根据你的下载日志,自动获得并定位到该镜像站点上。所以,这时你唯一要做的,就是点击“下一步”。
熟悉的安装包下载选择界面又出现了,如下图所示。
这个时候,要进行的设置就非常关键了:把ALL后面的Install改为Reinstall!哈哈,是不是有点什么想法了?对!Reinstall方式在安装时是表示重新安装,但在下载的时候表示的就是继续下载!这时我就不能不骂Cygwin安装程序的制作者了:你丫的程序界面怎么不设计的友好点?既然我前面选择是“Download Without Installing”,那你好歹在这项设置里面,把Install/Reinstall改换成Download/Continue Download才是啊。
好了不说了,都“Reinstall”了没?好,点击“下一步”。
向导程序现在已经知道你要继续上次的一载/续传了,它就会根据已经生成好的下载日志文件,对现有已经下载好的文件逐个做一把MD5校验码的Checking(如下图所示),确定已下载的部分没有任何问题。
不用点“下一步",向导程序会自动切换到下载界面中。
看看下图,看到了吗? 这一次的下载可不是从a字头的文件开始,而是直接从g字头的文件开始,哈哈!
恭喜,你可以长舒一口气了:原来如此!
需要说明的是,这时候总的下载进度稍稍有不同:不再是整个下载的进度了,而是你剩余的需要下载的文件的进度。所以,当你看到一开始仍是0%时,大可不必担心。你原先下载的文件都在。
如果在续传时,安装向导程序又罢工了,只需将以上步骤重新来一遍即可,这种断点续传方式虽然土了点、怪异了点,可的确能保证你的下载能持续下去,直到全部 500多兆的Cygwin安装文件下载完成。至此,本下载指南算是完成任务了。至于如何安装,我这里就不凑热闹了,因为网上相关的文章多的是,随便搜一下就有一大堆。大家自己看吧,安装其实蛮简单的。
这次Cygwin下载磨难记,我更加验证了我自己的一宝贵信条:只要有一线希望,就绝不放弃!无论如何都不要放弃!你也许会说,傻B了吧,为何不直接下载 GCC包或者是MingW呢,一样可以让Eclipse支持C++开发啊。可是我想要下载Cygwin是有原因的:因为Cygwin是Win平台下的UNIX模拟环境,我们公司现在的服务器端就建立在HP-UX平台之上,通过Cygwin,我可以直接在现有环境境中初步学习UNIX相关知识,而不用对自己现在的电脑大动干戈。一箭双雕,何乐不为?
========================
顺便提醒一下:
(1)在用户指定的本地存储路径内,安装向导程序会生成类似这样的一个目录:http%3a%2f%2fmirrors.kernel.org%2fsources.redhat.com%2fcygwin,这就是你下载文件的真正所在目录。还会生成两个日志文件:setup.log和setup.log.full, 用户感兴趣的活,可以打开来看看,对了解Cygwin的下载机制有不少帮助。
(2) 如果用户线路不是很好的话,可选择晚上11:00以后至早上8:00点这一段时间,进行Cygwin的下载,那时候人少,连接比较稳定,速度也有保证:我在下载时,曾达到了180KB/s的高速,这对于连接一个国外下载站点来说,已经是相当快的了。