MacPro4,1升级到MacPro5,1

收了一台老MacPro,2009年版本,准确型号是“MacPro4,1”。机器很好,美中不足的是,太老了。硬件还好说,很多部件都可以单独采购升级,特别是有了淘宝,几乎只要有的东西,都可以买到。软件就麻烦了,macOS sierra已经不支持,更别说high sierra。
而如果不能用最新的系统,对于研发人员来讲,MacPro的价值将大大降低,因为从开发系统到测试环境,都是非常严格的版本相关的。比如对于iPhone这类产品,Apple更是发布新版本后几个小时,老版本的验证服务器就会关闭从而强制用户升级。
经过仔细的研究资料,发现苹果的"MacPro4,1"版本硬件跟“MacPro5,1”版本硬件区别很小,网上也有了对应工具用于将前者升级到后者版本。不过因为这款机器太老,很多相关的工具、脚本的下载、使用都有了很多问题,这里把文件下载存储到国内服务器上,然后给个总结如下:
首先下载升级工具:http://p1avd6u2z.bkt.clouddn.com/201712/22/MacPro2009-2010FirmwareTool.zip
解压缩后是个可执行.app文件,尝试运行,按照屏幕提示操作即可,根据网上的评论,大多情况下可以顺利完成升级。也有一些会中间出现长时间锁死或者报错5570失败,很可惜啊我是后者。
一般的出现错误的原因都是因为时间太长,需要下载的固件包已经无法下载;又或者是http协议当前在苹果内部已经废弃;当然也不排除是“大防火墙”的问题了,碰到这种情况可以如下操作:
- 到苹果官方网站下载两个补丁包,地址分别为:http://support.apple.com/downloads/DL989/en_US/MacProEFIUpdate.dmg和http://support.apple.com/downloads/DL1321/en_US/MacProEFIUpdate.dmg,特别注意,两个文件名完全相同,但是不同的版本,前者是1.4,后者是1.5,下载后保存的时候不要搞混。
- 如果你已经有一台web服务器是最好的,但是如果你没有,可以考虑在本地临时设置一台web服务器,比如使用python内置的SimpleHTTPServer。下面假设我们在本地设置一台web服务器。
- 首先确定一个工作目录,在其下根据上面URL的方式设置两个文件夹:mkdir -P downloads/DL989/en_US/及mkdir -P downloads/DL1321/en_US/,将刚才下载的两个文件,对应分别放入目录,再次强调,因为文件名是相同的,别放错。
- 修改本地hosts文件,把support.apple.com网址指向127.0.0.1。看到这里你会不会说“咦?刚才下载的时候命名网址可以访问啊?”,不过可惜啊,这个升级工具它下载不下来,猜测的原因一开始就说过了。
- 在当前文件夹执行:sudo python -m SimpleHTTPServer 80,这是在80端口启动了web服务,使用sudo的原因是80端口只能使用root权限启动。接着,再次执行升级工具试试,至少在我这里,可以顺利的将系统升级了。
  (升级成功的对比) (升级成功的对比)
系统升级后,再安装macos sierra及high sierra就都不会有问题了。而且在新版本系统安装的时候,检测到固件的版本会比较老,会自动为你升级MacPro5,1的新固件,新固件工作起来一切正常。
除了升级软件,硬件可能会出现的问题主要是两个:
- 原有的蓝牙模块功率非常小,而且是老版本的蓝牙协议,同当前的很多蓝牙键盘、鼠标已经不兼容,建议在淘宝买一个usb的蓝牙适配器,找的时候搜索Mac电脑免驱动可以用的。
- MacPro4,1的风扇电路设计可能同MacPro5,1有所不同,系统的自动调速似乎工作总是不正常,推荐用一个第三方软件“Macs Fan Control”,根据使用情况人工干预风扇的转速,在平常的时候,可以关小一些大幅的降低噪音。
资料参考:http://forum.netkas.org/index.php/topic,852.0.html
MacPro4,1升级到MacPro5,1的更多相关文章
- python scrapy 入门,10分钟完成一个爬虫
		在TensorFlow热起来之前,很多人学习python的原因是因为想写爬虫.的确,有着丰富第三方库的python很适合干这种工作. Scrapy是一个易学易用的爬虫框架,尽管因为互联网多变的复杂性仍 ... 
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级
		Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part3:db安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 5.安装Database软件 5. ... 
- 看完SQL Server 2014 Q/A答疑集锦:想不升级都难!
		看完SQL Server 2014 Q/A答疑集锦:想不升级都难! 转载自:http://mp.weixin.qq.com/s/5rZCgnMKmJqeC7hbe4CZ_g 本期嘉宾为微软技术中心技术 ... 
- Entity Framework Core 1.1  升级通告
		原文地址:https://blogs.msdn.microsoft.com/dotnet/2016/11/16/announcing-entity-framework-core-1-1/ 翻译:杨晓东 ... 
- ASP.NET 5 RC1 升级 ASP.NET Core 1.0 RC2 记录
		升级文档: Migrating from DNX to .NET Core Migrating from ASP.NET 5 RC1 to ASP.NET Core 1.0 RC2 Migrating ... 
- SQL Server2016升级前几点自检
		SQL Server2016已经出来一段时间了,而且最新的SP1包也于2016年11月18日正式发布,各种新的特性推出让我们跃跃欲试.那么对于我们真实的业务环境,特别是生产环境要不要"跟风& ... 
- 如何安全的将VMware vCenter Server使用的SQL Server Express数据库平滑升级到完整版
		背景: 由于建设初期使用的vSphere vCenter for Windows版,其中安装自动化过程中会使用SQL Server Express的免费版数据库进行基础环境构建.而此时随着业务量的增加 ... 
- Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part2:clusterware安装和升级
		Linux平台 Oracle 10gR2(10.2.0.5)RAC安装 Part2:clusterware安装和升级 环境:OEL 5.7 + Oracle 10.2.0.5 RAC 3.安装Clus ... 
- 升级npm
		查看npm的所有版本 运行命令: npm view npm versions 命令运行后,会输出到目前为止npm的所有版本. [ '1.1.25', '1.1.70', '1.1.71', '1.2. ... 
随机推荐
- 决AndroidStudio 安卓模拟器安装在D盘问题
			决AndroidStudio 安卓模拟器安装在D盘问题 转 http://www.cnblogs.com/LiuDanK/articles/10106473.html 大家知道安卓的模拟器位置默认是放 ... 
- margin-top的兼容问题
			产生的条件:子元素给了margin-top,并且父元素没有浮也没有其他样式,浏览器解析的结果是父元素下去了. 解决方法:1.给子元素或者父元素添加浮动,缺点:如果不需要浮动,添加浮动也页面布局会乱 2 ... 
- angular1.3 video
			video标签动态获取播放链接是出现 Error: $interpolate:interr Interpolation Error Error: $sce:insecurl Processing of ... 
- c# Exchange 收件箱获取。
			public List<Email> GetInbox() { try { List<Email> lstEmails = new List<Email>(); F ... 
- PHP常用日期加减计算方法实例
			PHP常用日期加减计算方法实例 实例总结了PHP常用日期加减计算方法.分享给大家供大家参考,具体如下: PHP 标准的日期格式 date("Y-m-d H:i:s"); PHP 简 ... 
- Windows环境下,本地Oracle创建dblink连接远程mysql
			前言 我的情况是,本地安装了oracle(安装完成后带有SQL Developer,不需要再安装instantclient),创建dblink去连接远程的mysql.有些朋友可能是 本地使用PL\SQ ... 
- MUI消息推送
			一.push通过H5+实现 简单实现方式:通过轮询服务器是否有新消息推送过来 mui.plusReady(function() { plus.navigator.closeSplashscreen() ... 
- golang ntp协议客户端
			NTP(Network Time Protocol,网络时间协议)是由RFC 1305定义的时间同步协议,用来在分布式时间服务器和客户端之间进行时间同步.NTP基于UDP报文进行传输,使用的UDP端口 ... 
- Prometheus 企业微信报警/inhibit抑制 /静默(二)
			创建企业微信应用 注册企业微信:访问https://work.weixin.qq.com/,注册企业,随便填,不需要认证 创建应用 创建告警配置 vim /usr/local/prometheus-2 ... 
- 你不知道的JS之作用域和闭包(一)什么是作用域?
			原文:你不知道的js系列 什么是作用域(Scope)? 作用域 是这样一组规则——它定义了如何存放变量,以及程序如何找到之前定义的变量. 编译器原理 JavaScript 通常被归类为动态语言或者解释 ... 
