我可以做一个DIY Fusion Drive吗?


52

我有一台配备两个驱动器的Mac Mini:一个256GB固态硬盘和一个500GB硬盘。从我所阅读,新的融合驱动器做它的所有软件的魔力,使用核心存储的API。

我可以使我的设置像Fusion Drive一样工作吗?也就是说,我希望两个驱动器显示为单个逻辑卷,并且系统自动将经常访问的文件移至SSD。我知道我们可以轻松地对条带化或扩展或RAID驱动器进行分区,但是无需投资购买新硬件,Fusion驱动器的自动管理的分层存储功能将非常有用。


1
几个月前,@ JessBowers 评论了SSD的存储寿命。我有信心,Apple支持的Fusion Drive实施将与Apple在Fusion Drive品牌的Mac中安装的SSD融为一体。我猜还有待观察,在其他Mac中,软件和固件是否会与最终用户选择的SSD同样考虑周全。
格雷厄姆·佩林

从2009年开始,苹果公司又以性能为导向使用SSD:Mac OS X Server v10.6:将HFS + Journal移到另一个卷中。提示:该功能不仅限于操作系统的服务器版本。有关Apple_Journal切片的更多信息,请参见的moveJournal动词diskutil
Graham Perrin

我成功地设法将SSD磁盘添加到我的2010 Macbook Pro中,以创建CoreStorage卷并在其上重新安装OS X 10.8.2。一切工作正常,速度提高非常好。
Davide Gualano,2012年

Answers:


42

是的,您可以在旧版Mac上创建融合驱动器,在此处进行完整说明:

  • 您显然同时需要SSD和HD。假设操作系统将它们称为disk1和disk7。您可以通过检查磁盘ID diskutil list
  • diskutil cs create bla disk1 disk7要创建它,bla您在融合驱动器上使用的名称是哪里。
  • diskutil cs list 并记下逻辑卷组ID
  • diskutil cs createVolume <ID from above> jhfs+ blub 100%blub您为卷指定的名称在哪里。

链接到Apple说明:单击此处

注意:这些是修复分裂式融合驱动器的说明,但也可以用于制造分裂式融合驱动器。


2
很棒的调查!值得指出的是,您还已经在非HFS +文件系统上成功地试验了相同的技术...
Dan J

@Jolly我在您的博客上看到了这个,真是太棒了,您很快能解决它!+1!
duci9y 2012年

是否有diskutil命令的参考文档?
乔治

1
使用man diskutil在命令行。
jtbandes 2012年

有谁知道使用此技术时如何保留恢复分区?
杰西·鲍尔斯

14

是的,没有。

Fusion Drive利用Core Storage充当一个逻辑卷,您可以将其视为单个卷,但实际上可以由多个物理卷(在本例中为SSD和HDD)组成。

您可以使用Terminal中的diskutil命令创建和管理Core Storage卷。(磁盘实用程序尚未通过GUI提供广泛的Core Storage支持。)特别是,您可以使用diskutil coreStorage createLVGdiskutil coreStorage createVolume以及其他命令来创建自己的逻辑卷组和逻辑卷(有关详细信息,请参见手册页)。

但是,我的猜测是,Fusion Drive的特殊行为(在物理卷之间自动移动数据)被编码在特殊的逻辑卷系列中,这可能容易模仿。(如果有人能证明我做错了,我会很高兴!)


3
还要指出的是,除非人们实际将这些机器放到热手中,否则我们将不知道苹果所做的事情,以及使其他设置看起来相似的难易程度。
保罗·瓦格兰

2
Apple已发布有关Fusion Drive 的有趣文章(KB HT5446)。Fusion Drive的任何“处理”都需要更新的“ Disk Utility.app”
Francis Ouellet

如果没有所说的“更新的Disk Utility.app”,那么仅使用“常规”磁盘实用程序来诊断DIY Fusion Drive中的磁盘问题将无能为力吗?
Gorb 2012年

1
@Damian大概诸如“修复权限”之类的功能仍然可以使用。我猜想“验证/修复磁盘”也可以正常工作,但您应该与尝试过的人确认。
jtbandes 2012年

1
因此,既然“人们实际上已经将这些机器放在他们的小手心中了”,是否知道在网络上创建逻辑卷实际上是否创建了具有所有自动文件移动性能的“融合驱动器”?
tml 2012年

10

我刚刚在2009年初的MacBook Pro中完成了DIY Fusion Drive的创建。它工作得很好,我想出了如何同时保留恢复分区和Boot Camp分区。

我从备份开始:我的Mountain Lion分区的Time Machine和Carbon Copy Cloner备份,以及我的Boot Camp分区的WinClone备份。所有备份均保存到Fusion Drive升级未涉及的外部硬盘驱动器中。

对于硬件,我购买了128 GB的Samsung 830 SSD和硬盘驱动器盒,可以用硬盘代替Apple Superdrive。(该球童盒随附的说明是完全错误的,但是该球童盒非常简单,以至于我仍然想出了如何在该球童盒中安装驱动器。)安装过程很棘手,需要一个小的Torx螺丝刀和一些撬棍,但是这些指令在ifixit.com上的内容非常清楚且实用。

安装后,我使用系统信息发现CD托架中的SSD的协商链接速度为1.5 Gb,而不是3 Gb。因此,我再次打开MacBook Pro,并更换了硬盘驱动器和SSD。下次启动时,两个驱动器均以3 Gb的速度运行。作为测试的一项临时措施,我使用磁盘工具将SSD格式化为一个记录的HFS +分区。

为了创建Fusion Drive,我在启动过程中通过按住Command-R进入了恢复分区。我在恢复模式下使用终端创建Fusion Drive。

第一步是使用diskutil list命令获取两个驱动器上分区的完整列表。就我而言,disk0s2是SSD上的分区,而disk1s2是我通常在硬盘上的Mountain Lion分区。

然后,我使用命令diskutil cs create Fusion disk0s2 disk1s2从两个分区创建逻辑卷组。这是很特别的步骤。通过在创建逻辑卷组时指定分区而不是整个磁盘。我能够使恢复分区和Boot Camp分区保持不变。我见过的大多数指令都使用了磁盘名而不是分区名,这会擦除整个磁盘。diskutil手册页中记录了分区名称的使用。

接下来,我使用diskutil cs createVolume <ID from above> jhfs+ Reliance '100%'命令使用100%的逻辑卷组来创建逻辑卷。由于我仍然具有恢复分区和Boot Camp分区,因此无需在逻辑卷组中为其留出空间,因此我可以自由地将所有空间用于新的Fusion Drive分区。

到那时,最困难的部分已经完成。我从克隆的备份启动,并使用“安装OS X Mountain Lion”应用程序在Fusion Drive上重新安装Mountain Lion。(我可以将其克隆回来,但我喜欢借此机会重新安装Mountain Lion的想法。)安装完成后,我使用了Migration Assistant将我的文件和帐户从克隆复制到Fusion Drive。

像备份/还原后一样,我的Mac忙了好几个小时重新为Spotlight重新编制索引,而下次Time Machine备份却非常慢。但是一旦这些事情解决了,一切都会加速,我开始获得新Fusion Fusion的好处!随着它了解我最常使用的应用程序,它的速度不断提高。

在此过程的最后有一些小故障,但我认为它们都非常小:

  1. 如果我按下选项键启动,则Mac固件会两次列出Fusion Drive。选择任一驱动器启动都很好。
  2. 磁盘实用程序将我的Boot Camp分区显示为Fusion Drive的一部分,即使它仅位于硬盘驱动器上也是如此。这似乎是无害的。
  3. Windows 7中的Boot Camp控制面板也列出了两次Fusion Drive。同样,两种选择都可以正常工作。
  4. 第一次启动Windows 7时,出现Windows启动加载程序屏幕,这可能是因为我将带有Boot Camp分区的硬盘驱动器移到了CD托架中。Windows 7调整了驱动器地址,此后一直正常启动。

总而言之,这是一个了不起的升级,我很高兴自己做到了!


1
斯图尔特(Stuart),已经过去了几个月,它的效果如何?
丹·普里兹

您如何发现驱动器的协商链接速度?
Jim McKeeth

8

除了正确的@jtbandes之外您还可以使用CoreStorage创建和管理逻辑卷,但是根据知识库文章HT5446,Fusion驱动器存在一些“局限性”。

Fusion驱动器(基本上是SSD和HDD分组为逻辑卷)的替代方法是将“ / Users”文件夹移至HDD,并将所有OS X文件和Apps保留在SSD中,您将获得SSD应用程序和操作系统的性能以及硬盘中文件所需的所有空间。从Time Machine还原到另一台计算机上或重新配置驱动器设置后,该用户帐户的移动/ home无效。


3
为了释放更多空间,我还将在HDD中添加/ Library / Application Support / Library / Developer / Library / iTunes。
dhempler

2
@ dennis.hempler我完全同意!我的“ /图书馆/应用程序支持”巨大!主要是因为Garageband教程视频,循环和乐器。如何将该文件夹移动到另一个HDD并将其链接到SSD?使用符号链接?迁移助手应用程序?
dijeferson 2012年

1
好的注释-我对分层存储的自动处理如何工作最为感兴趣,因此我不必选择将哪些文件放在什么驱动器上
bmike

1
这将是一个不同问题的好答案,而不是这个问题。开幕海报只需要一个逻辑卷,系统就会自动移动经常访问的数据。
Graham Perrin

符号链接将满足您的需求。要注意的另一件事是主目录中的itunes文件夹。即使您没有很多歌曲或视频,这也可能是巨大的-iPhone备份在这里。
丹·普里兹

3

在将SSD驱动器安装为我的2011 Mac Mini中的第二个驱动器之后,我使用OS X 10.8.2安装程序中的Terminal Utility在安装到USB拇指驱动器上的情况下设置了Fusion驱动器。

这消除了两个驱动器上的数据,但这就是我想要的:一个带有新Fusion驱动器的全新系统。

如果您不想保存现有安装,只需使用OS X 10.8.2安装程序来创建驱动器(不过,请确保它是10.8.2及更高版本,因为10.8.1及更低版本不支持Fusion) 。

加载安装程序后,您可以打开“终端”窗口,然后在其中键入diskutil命令。在我看来,比将原始驱动器克隆到外部光盘,从中启动并融合两个驱动器要容易得多。

我见过的关于创建Fusion驱动器(以及我成功使用的驱动器)的最完整,最简单的指南位于http://blog.macsales.com/15617-creating-your-own-fusion-drive

顺便说一句,如果您有一台2011年的Mac mini,但尚未购买电缆,则需要连接第二个驱动器,OWC有一个不错的DIY套件。它很便宜,提供了一套工具和专业的,有光泽的逐步说明。令我印象深刻。可从http://eshop.macsales.com/item/OWC/DIYIMM11D2获得


1

在这里,我们制作了一个视频,为您概述了该过程:http : //www.youtube.com/watch?v=I_odnNpv-FQ

您需要的命令:

diskutil list

diskutil cs create Fusion diskx diskx

注意:您可以Fusion使用任何您要命名逻辑卷组的名称替换

diskutil cs list

diskutil coreStorage createVolume YOUR_DEVICE_ID_HERE jhfs+ "Macintosh Fusion" 100%

注意:您可以"Macintosh Fusion"用任何想要为驱动器命名的内容替换。""如果像我们一样想要在名称中使用空格,请记住使用s,否则就不需要它们。

安装完成后,打开终端并关闭索引:

sudo mdutil -i off

如果要还原为2个单独的驱动器,请再次启动安装程序,打开Terminal并输入:

diskutil cs delete YOUR_DEVICE_ID

然后,您可以使用终端机或磁盘工具格式化它们。


强制关闭聚光灯还是在愤怒中普遍偏爱。如果您解释您的答案与先前的答案有何不同(即使您只是试图更全面地记录问题),它也会帮助其他人使用此处的内容。
bmike

尽管添加另一个答案是完全可以接受的,但最好也添加其他内容/信息。
nohillside
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.