38d75ead fe1d 429b 8fc8 173e9e2ae10c

世界上第一台内置 5TB 硬盘的零售版 Xbox One 诞生了

诺瓦露和贝露的显著差别之一就是容量

5ba153bd 9aaa 44ae b930 04f063eba763 normalat2x

BoomerNT

XBOX ONE
本文系用户投稿,不代表机核网观点

导语:机核对游戏的讨论由来已久,但是对于游戏机改造方面的内容好像比较有限。这位作者多年专注于硬件研究,这次对X1S的改造也堪称惊艳。如果希望了解更多,可以看看这个博客:http://blog.sina.com.cn/boomerce

【2017-2-4 更新:收到 Windows 10 RS2 Build 15023 的推送,顺利升级成功。所以,修改分区顺序对于系统更新是安全的。】

之前 2.5' 4TB 硬盘刚出的时候试着用来改造 Xbox One 的内置硬盘,不过以失败告终(http://blog.sina.com.cn/s/blog_61b70b9e0102w1ui.html)。现在一年多过去了,新的 2.5' 5TB 硬盘上市了,那么就再试试吧~

选择硬盘与拆解

首先需要的是硬盘。希捷酷鱼 BarraCuda ST5000LM000 5TB 2.5' 15mm SMR 硬盘是现在市场上唯一在售的 5TB 2.5' 硬盘,最方便和最便宜的获取方式仍是购买希捷睿品 Backup Plus STDR500010x(最后一位数字代表面板颜色,0 - 黑色,1 - 银色,2 - 蓝色,3 - 红色)移动硬盘,然后免工具无损拆解。拆解方式与之前的型号完全相同,所以不再赘述。

这次使用的主机是 Xbox One S。初版机器内部空间要大得多,所以安装 15mm 硬盘更加不在话下。主机外壳的拆解与本文主旨无关,所以请自行搜索。Xbox One S 内置硬盘托架由编号 B2、C3 和 C4 的 3 颗螺丝固定。取下硬盘和托架后,只要拆除 4 颗固定硬盘的小螺丝,即可将托架与硬盘分离,无需取下固定减震环的 4 颗大螺丝。然后,将原配硬盘的 5 个分区内的全部文件复制到电脑中暂存。一定要避免将不同分区中的文件混到一起,所以建立 5 个目录,分别对应 5 个分区。

对新硬盘的处理

接下来就是处理新硬盘了。之前的 4TB 硬盘改造失败,原因在于系统无法读取 LBA 超过 2^32 - 1 的分区中的启动文件。但是,Xbox One 使用的是 GPT 分区表,以微软的编码规范程度,应该是用分区的 GUID 而不是硬编码的分区顺序来识别分区的。实验结果也证明了这一点。所以,这就是改造成功的关键了 - 将存放系统文件的分区放到 LBA 较小的位置。具体地说,就是把 User Content 这个分区放到最后。

原配硬盘的分区结构:

分区顺序 | 卷标 | GUID | 逻辑分配单元数量(每分配单元 512 字节) | 分区尺寸(GB)
1 | Temp Content | B3727DA5-A3AC-4B3D-9FD6-2EA54441011B | 85983232 | 41.000
2 | User Content | 869BB5E0-3356-4BE6-85F7-29323A675CC7 | 动态分配 | 动态分配
3 | System Support | C90D7A47-CCB9-4CBA-8C66-0459F6B85724 | 83886080 | 40.000
4 | System Update | 9A056AD7-32ED-4141-AEB1-AFB9BD5565DC | 25165824 | 12.000
5 | System Update 2 | 24B2197C-9D01-45F9-A8E1-DBBCFA161EB2 | 14680064 | 7.000

另外值得注意的是:

  • 原配内置硬盘是机械硬盘,所以分区是对齐到 1 MB 的。如果自行更换为 SSD,则可根据 SSD 的参数来进行对齐。
  • 原配内置硬盘的 User Content 分区尺寸由硬盘总容量决定,但取整到 1 GB。不过,根据试验,可以不遵循这一点,而是直接用尽硬盘的全部容量。

当更换的内置硬盘总容量不超过 2TB 时,仍可按以上顺序分区并设置 GUID。但是,当硬盘容量超过 2TB 之后,必须将 User Content 分区放到最后,否则系统无法启动。所以,新的分区结构为:

分区顺序 | 卷标 | GUID | 逻辑分配单元数量(每分配单元 512 字节) | 分区尺寸(GB)
1 | Temp Content | B3727DA5-A3AC-4B3D-9FD6-2EA54441011B | 85983232 | 41.000
2 | System Support | C90D7A47-CCB9-4CBA-8C66-0459F6B85724 | 83886080 | 40.000
3 | System Update | 9A056AD7-32ED-4141-AEB1-AFB9BD5565DC | 25165824 | 12.000
4 | System Update 2 | 24B2197C-9D01-45F9-A8E1-DBBCFA161EB2 | 14680064 | 7.000
5 | User Content | 869BB5E0-3356-4BE6-85F7-29323A675CC7 | 动态分配 | 动态分配

按以上参数进行分区,设置 GUID,再将原配内置硬盘对应分区中的文件复制回去。现在 Xbox One MBR 启动签名不再是 0xCC99 了,只要是普通的 0xAA55 即可,所以不需要再进行任何额外的修改。安装好硬盘,启动主机,一切内容都与上一次关机时完全一致,而可用容量大大增加。下图中作为对比的 ST2000LM003 硬盘是 Xbox One S 2TB 主机原配的内置硬盘。

成功!

Xbox One S 和 PS4 Pro 对比。PS4 Pro 如此庞大的机身,却只能装下 9.5mm 的硬盘,而精致小巧的 Xbox One S 反而可以轻松装下 15mm 的硬盘,不愧是咱们 Leanbox~

最后,再次赞叹微软的超一流编码规范!如果代码当中有任何一处是用硬编码的分区顺序而非 GUID 来识别分区的话,这就不可能成功了。

34

查看更多评论

App bottom tip