[轉載]創建LV的方法,使用diskutil coreStorage convert

關于創建LV的方法,動手能力強的同學也可以考慮使用diskutil coreStorage convert命令進行單塊硬盤的無損轉換(請務必備份數據再進行操作),進行轉換後,將新的硬盤加入LVG。根據網友hanscaoyinan的實驗及網上搜索的結果,目前版本的coreStorage使用這種流程配置可能還是有BUG,因沒有親自嘗試過不保證能夠完成配置,請參照上面coreStorage文檔繼續

目前簡單的測試表明大部分應用及常用的數據都是直接通過固態硬盤訪問。
太大的文件如虛機的虛擬硬盤通過機械硬盤訪問。
小規模的數據寫入直接寫入固態硬盤。
大規模的數據寫入會優先在固態硬盤上,數據寫入過多會使用機械硬盤繼續寫入。


另外發現在10.7系統中第三方固態硬盤自動休眠後死機的問題已經消失了,不確定是否因爲系統升級修複。

在FusionDrive上安裝系統後,安裝程序沒有創建恢複分區,無法從硬盤進入恢複模式。
估計蘋果出售的系統也有這個問題,官方文檔提到在機器出問題時需要進入Internet恢複模式

嘗試使用圖形的磁盤工具修複了權限,重啓後未發現問題

使用了一段時間感覺系統中並沒有很多的數據在兩塊磁盤間移來移去,目磁盤上的數據共有140G,固態硬盤有60G。

目前看起來FusionDrive會導致CPU和內存使用有所增加。

另外推薦一個軟件Trim Enabler, 蘋果機器上使用第三方SSD不會自動打開Trim功能,可以使用該軟件開啓。
http://www.groths.org/?page_id=322

發現系統初始化時先是在一個專門的分區上開始的。以下是diskutil list命令的輸出
/dev/disk0
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *500.1 GB   disk0
   1:                        EFI                         209.7 MB   disk0s1
   2:          Apple_CoreStorage                         499.2 GB   disk0s2
   3:                 Apple_Boot Boot OS X               650.0 MB   disk0s3
/dev/disk1
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:      GUID_partition_scheme                        *60.0 GB    disk1
   1:                        EFI                         209.7 MB   disk1s1
   2:          Apple_CoreStorage                         59.7 GB    disk1s2
   3:                 Apple_Boot Boot OS X               134.2 MB   disk1s3
/dev/disk2
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                  Apple_HFS MyLV                   *556.1 GB   disk2
系統在 安裝時爲每個硬盤都創建了 Apple_Boot Boot OS X, 這個分區應該是用來完成啓動時的一些初始化工作的,應該也用于RAID的初始化。這個分區的內容:
.
├── System
│   └── Library
│       └── CoreServices
│           ├── PlatformSupport.plist
│           ├── SystemVersion.plist
│           └── boot.efi
└── com.apple.boot.P
    ├── Library
    │   └── Preferences
    │       └── SystemConfiguration
    │           └── com.apple.Boot.plist
    ├── System
    │   └── Library
    │       └── Caches
    │           ├── com.apple.corestorage
    │           │   └── EFILoginLocalizations
    │           │       ├── Lucida13.efires
    │           │       ├── battery.efires
    │           │       ├── disk_passwordUI.efires
    │           │       ├── flag_picker.efires
    │           │       ├── guest_userUI.efires
    │           │       ├── loginui.efires
    │           │       ├── preferences.efires
    │           │       └── unknown_userUI.efires
    │           └── com.apple.kext.caches
    │               └── Startup
    │                   └── kernelcache
    └── usr
        └── standalone
            └── i386
                └── EfiLoginUI
                    ├── Lucida13.efires
                    ├── battery.efires
                    ├── disk_passwordUI.efires
                    ├── flag_picker.efires
                    ├── guest_userUI.efires
                    ├── loginui.efires
                    ├── recoveryUI.efires
                    ├── recovery_user.efires
                    └── unknown_userUI.efires
可能因爲FusionDrive的初始化需要一些時間,所以啓動性能提升是1.7x,常規訪問提升是3.5x

[轉載][系統] 全球首發!Fusion Drive自己做!不停更新中...


[系統] 全球首發!Fusion Drive自己做!不停更新中...

本帖最後由 soul916 于 12/11/14 01:56 AM 編輯

我有一台2011版低配Mac Mini, 從ifixit訂購了加裝第二塊硬盤的套裝,裝上60G的固態硬盤來加速應用,用戶數據還是存放在機械硬盤中,最終性能並不十分滿意。10月的蘋果新品發布會後每天在都在網上搜尋關于FusionDrive的信息,周未前終于找到了答案,嘗試配置了一下,目前狀況良好,將心得分享給大家。
配置達到要求並且熟悉命令行喜歡折騰的朋友可以嘗試一下,在絕大多數用戶之前(新的imac還沒賣,MacMini估計還沒到貨吧)享受蘋果的新技術。

歡迎大家交流。如果哪位朋友成功的配置了FusionDrive,方便的話請分享一下使用的硬件和直觀的性能感受,以備更多用戶參考!

新手推薦下面這篇文章,圖文並茂,易于操作
https://gist.github.com/4033374

1. Fusion Drive是什麽?
蘋果新品發布會後,有很多文章都試圖解釋FusionDrive的原理(請搜索),但都沒有提供細節內容。10月25日蘋果官網發布的KB: Mac mini (Late 2012) and iMac (Late 2012): About Fusion Drive終于透露了FusionDrive的秘密。

FusionDrive將固態硬盤和機械硬盤融合加速了磁盤訪問,FusionDrive是一個純軟件的加速方案,蘋果文檔中的截屏透漏了FusionDrive技術基于Mac OS X 10.7版本加入的CoreStorage技術。

CoreStorage是一個硬盤邏輯卷管理系統,最新的版本會提升固態硬盤訪問的優先級別,將常用數據塊遷移到固態硬盤,並且優先在固態硬盤寫入數據(10.7版本中CoreStorage只能用于單個硬盤的FileValut磁盤加密)。CoreStorage原理跟Linux中的LVM及其它企業級的硬盤邏輯卷管理系統概念非常近似,但是其它系統目前並未提供對固態硬盤的優先訪問及常用數據自動遷移功能.

關于CoreStorage的細節信息請參考Mac OS X Lion Adds CoreStorage, a Volume Manager (Finally!)。文檔中提到不能在兩塊物理硬盤上創建LV的限制在10.8.2中已經不存在了。更多關于邏輯卷管理技術的原理和細節可以參考Linux LVM。

蘋果文檔中提到10.8.2及以上的系統都可以使用TargetDisk模式遠程訪問FusionDrive所以理論上任何版本高于10.8.2的蘋果系統都應該可以使用FusionDrive

在仔細研究了專爲新硬件提供的10.8.2追加升級包中的diskutil工具後,發現沒有新增加的參數,這才放心進行了嘗試。感謝hanscaoyinan分享的文章Fusion drive on older Macs? YES!作者提供了詳細的性能及數據自動遷功能測試,證實了自制的FusionDrive具備蘋果官方宣傳的主要功能,對于頻繁使用的數據確實有自動遷移的能力,另外該作者也證實FusionDrive可以在USB硬盤外置硬盤進行創建,FusionDriver的自動數據遷移是數據塊級的操作而不是蘋果發布會上暗示的文件級操作。

已確認SSD Trim功能在Fusion Drive中是生效的。

2. Fusion Drive系統要求
操作系統必須是Mac OS X Mountain Lion 10.8.2及以上版本
系統中需要至少有一塊內置固態硬盤和一塊內置機械硬盤(目前只有部分能夠裝雙硬盤的機器可以支持,改造起來可能成本不低)

已成功配置的硬件列表:
MacMini 2011 + ifixit雙硬盤套件 + Gskill 60G FM-25S2S-60GBP2 SSD + 原裝500GHDD
MBP17寸2011 + 240GB SATA-3 SSD + 第三方HDD(安裝在光驅位)看本站以前的貼子因SSD比HDD防震推薦將SSD放在光驅位內
MBP2010 + 128G三星SSD(安裝在光驅位) + 1THDD
                感謝網友hanscaoyinan配有大圖的共享貼:http://mac.pcbeta.com/thread-120506-1-1.html
Mac + 128GSATASSD + 750GUSBHDD
                http://jollyjinx.tumblr.com/
MBP2011 + 128G SSD(光驅位) + 500G HDD
               感謝yuanjs666

非常規的雙硬盤方案,不保證能夠正常工作,如想嘗試請謹慎!
感謝hanscaoyinan分享的文章DIY Fusion Drive: an attempt to retrofit a pre-fall 2012 Mac with an SSD and a traditional hard disk, 步驟基本相同,證明了MacBookPro光驅位雙硬盤方案可以配置!

有條件的同學也可以測試一下多塊固態硬盤配置RAID後是否能爲系統進一步提速

3. FusionDrive配置
蘋果爲新版硬件專門放出了一個10.8.2的追加升級包,跟FusionDrive有關的驅動及工具都已經被更新,新出售的機器應該已經帶有這些更新,目前尚不清楚標准10.8.2中FusionDrive功能是否穩定,配置完成後請務必使用TimeMachine隨時備份數據!
以下操作會清除所有系統數據!請務必做好備份工作!
蘋果文檔提到了圖形界面的Disk Utility在新發布的Mac機器中是一個特殊的版本,請盡量不要用圖形工具對FusionDrive做任何操作!

基本方法就是在安裝系統前用diskutil命令行工具將固態硬盤和機械硬盤合並爲一個LV並安裝操作系統
因爲沒有圖形界面的配置工具,不熟悉命令行的同學請慎重
以下的操作不會對硬件産生任何損傷

首先使用TimeMachine備份系統
使用10.8.2的安裝U盤啓動,制作方法請自行搜索

安裝盤啓動後打開Terminal使用以下命令將兩塊硬盤清空
  1. diskutil eraseDisk JHFS+ SSD
  2. diskutil eraseDisk JHFS+ HD
複制代碼
創建LVG
  1. diskutil coreStorage create MyLVG
複制代碼
顯示LVG信息(在MyLVG下會有可用的容量及LVG的UUID下一步需要用到)
  1. diskutil coreStorage list
複制代碼
創建LV
  1. diskutil coreStorage createVolume JHFS+ MyLV
複制代碼
顯示LV信息:
  1. diskutil coreStorage list
複制代碼
完成後退出終端並啓動安裝,選擇MyLV做爲系統安裝目標即可
系統安裝後使用TimeMachine恢複數據,FusionDrive升級完成!

[轉載]Fusion Drive 简介


But original post can not access anymore.

Fusion Drive 简介

1 Fusion Drive 介绍

Apple 的官方介绍如下 :
在 Apple Store 在线商店作为可配置选件提供的 Fusion Drive 是一个突破性概念,它将传统硬盘存储容量大的特点与闪存高性能的特点融合在一起。iMac 配置 Fusion Drive 之后,在执行磁盘密集型任务时,例如启动系统、启动 app 以及导入照片时,将运行地更加快速、更加高效。这是因为频繁使用的项目存储在速度更快的闪存中,不常访问的项目则存储在硬盘中。文件传输在后台进行,你甚至丝毫察觉不到。随着系统逐渐了解你的工作方式,Fusion Drive 可以为你带来更出色的 Mac 使用体验,而你不必费心做任何事。目前,Apple 可提供 1TB 和 3TB 两种容量的 Fusion Drive 供用户选择。

2 Fusion Drive 背景

虽然 SSD 固态硬盘的价格已经变的越来越亲民,但是其容量上依然不能与传统 HDD 机械硬盘相媲美。因此,兼顾 SSD 性能和传统 HDD 容量的方案层出不穷。一直以来,很多 Mac 用户选择自行在机器中配置一块 SSD 和一块 HDD,并通过手工分配系统,应用程序和文档的方法来在性能和容量上获得一种平衡,但是此方法较为繁琐,且没有一个较为方便的工具来帮助用户实现。特别对于新手来说,无论是硬件的安装还是系统的配置都显得异常困难。另外,由于普通用户缺乏对系统的认识,导致其手工配置的方案从性能上来说无法达到最优,甚至还会出现严重的系统问题。后来,随着技术的进步出现了基于硬件的方案。比较有名的是来自希捷的混合硬盘(Momentus XT)。但是此技术依赖特定硬件且与 OS X 系统兼容性不佳而不被 Mac 用户所接受。Apple 洞悉用户的此种需求,则在 2012 年随着新 iMac 和 Mac mini 的发布,推出了 Fusion Drive 这一新技术。用户可以为 Mac 选配 Fusion Drive 而直接获得这一性能与容量完美平衡的存储方案,无需任何额外配置,也不会绑定特定硬件品牌型号。

3 Fusion Drive 类似技术

Fusion Drive 的类似技术有很多,除了上文提到过的希捷混合硬盘技术,还有 Intel 的 Smart Response Technology 智能响应 (SRT) 技术,以及企业存储中常见的 Automated Tiered Storage (自动分层存储) 技术。
  1. 混合硬盘技术
    优点
     - 无需用户配置 
     - 兼容多种操作系统
     - 花费较小
    
    不足
     - 需特定硬件
     - 与某些操作系统,如 OS X 兼容性不佳
     - 算法无法根据不同操作系统做特定优化
    
  2. SRT
    优点
     - 花费较小,性能提升明显
     - SSD 和 HDD 无需选择特定厂商产品 在 Enhanced 模式下,可以获得与单块硬盘相同的数据安全性并获得更高的读写性能
    
    不足
     - 需要用户有一定的计算机使用和配置经验 
     - 概念较多,用户不容易掌握。比如在 Maximize 模式下的数据安全危险 
     - 目前并不能在 OS X 系统下使用 
    
  3. Automated Tiered Storage
    优点
     - 性能强悍
     - 数据安全性高
    
    不足
     - 价格高昂
     - 需要特定的软硬件
     - OS X 下目前难以配置
    
  4. Fusion Drive
    优点
     - 无需用户配置
     - 花费较小
     - 性能提升较明显
     - SSD 和 HDD 无需选择特定厂商产品
    
    不足
     - 目前只能在 OS X 10.8.2 及以上系统中支持
     - 只能支持 BootCamp 方式安装的 Windows 系统
     - 如果非特定 Mac 机型用户需要 Fusion Drive 产品只能向 Apple 购买
    

Fusion Drive 背后的技术

CoreStorage 与 Logical Volume Manager (LVM)

HFS+ 是一个古老的文件系统。10.6 时,Apple 曾经有意愿将文件系统替换为最为先进的 ZFS。但天不随人愿,可能的风险,专利问题,以及 ZFS 专利持有人 Sun 被 Oracle 收购等众多原因最终导致了这一计划的流产。文件系统的落后阻碍了操作系统的前进,所以,Apple 开始转而自行在 HFS+ 基础上加入各项改进,以便让其能够支撑新的操作系统特性。随着有众多改进的 OS X Lion 10.7 发布,Apple 的工作成果也渐渐为人所知。比如 Auto Save ,本地 Time Machine Snapshot (快照),File Vault 2 全盘加密等。这些工作都是在“古老的” HFS+ 上完成,其背后的功臣,就是 CoreStorage。CoreStorage 其实是一套 API 和 Kext (Kernel Extension 或者说是驱动程序)的集合,存在与文件系统与物理存储媒介(比如硬盘等)之间,用于给文件系统提供最大限度的灵活性。其实它还有一个更为通俗的名字,那就是 Logical Volume Manager (LVM 逻辑卷管理器)。 长久以来,OS X 都缺乏一个现代操作系统所必须的组件,那就是逻辑卷管理器。逻辑卷管理器以一个虚拟层(或抽象层)存在与物理存储媒介与文件系统之间,为操作系统管理,分配存储空间带来最大的便利性。LVM 是现代操作系统中非常重要的一个组件。因为当前用户的存储媒介多样化,除了系统内置的存储器,还有比如 DAS (Direct Attached Storage) 外接大容量存储,或 NAS (Network Attached Storage) 网络存储,或 Cloud Storage 云存储等。所有这些都要求操作系统拥有能够统一管理这些存储设备(空间)的能力。这个能力就来自于逻辑卷管理器。以前的 OS X 操作系统,只能够提供软件 RAID 来实现一小部分的 LVM 功能,比如磁盘连接 (Concatenated Disk Set 即让多块磁盘在用户空间 Finder 中显示为一块磁盘) 等。这些操作对于普通用户来说过于复杂,而且由于其自身的缺陷,数据安全,灵活性,性能等无法得到很好的保证,所以在用户中使用率非常低。而通过 LVM,用户不仅能够方便的管理多个存储,而且能够方便的对其中的某个存储进行更换,而不影响数据的一致性。另外,CoreStorage 还能够判断其管理下存储设备的性能,也能够自动对访问频率高的文件进行存储位置优化。所有这些特性,促成了 Fusion Drive 的诞生。

DIY Fusion Drive

在了解了 Fusion Drive 和其背后的技术后,我们完全可以在 CoreStorage 的基础上自行组建一个 Fusion Drive,本节下面的内容就是带你一步步的在老 Mac 上创建一个 Fusion Drive。
  1. 软件与硬件要求
    -硬件
     - 一台装备有至少一块 SSD 和一块 HDD 的 Mac
     - 用于启动并安装 OS X Mountain Lion 10.8.2+ 系统的 USB 闪存盘或外置硬盘一块
     - 如何制作 OS X Mountain Lion 安装媒介
    
    -软件
     - Install OS X Mountain Lion.app 即 OS X Mountain Lion 安装程序 (版本 1.3.18)。它用于制作启动安装媒介。
    
  2. 注意事项
    备份你的所有数据,因为这个操作将会清空 SSD 和 HDD 上的所有内容
  3. 2011 iMac 27'' 实践
    1. 实验平台
      • iMac 27'' mid 2011
      • OS X Mountain Lion 10.8.2
      • 2.7 GHz Intel Core i5
      • 16 GB 1333 MHz DDR3 RAM
      • Samsung 470 Series SSD 128 GB
      • Seagate 7200 rpm HDD 1 TB
    2. 制作过程
      1. 首先使用制作好的 OS X Mountain Lion 安装媒介启动 Mac。(开机按住 Option,选择使用安装媒介启动)
      2. 到安装界面后,启动 Disk Utility 磁盘工具,如图:1。图中可见,我将要用于制作 Fusion Drive 的两块磁盘,1 TB ST 和 128.04 GB Samsung。
      3. 分别选中每个磁盘,然后点击磁盘工具右边栏中的 Partition 标签页,然后点击分区列表下方的 - 减号按钮删除这两块磁盘上所有的卷宗 (分区),如图: 23。删除完毕后,磁盘工具应该类似如图显示: 4
      4. 完毕后退出磁盘工具,点击工具栏上的 Utilities 菜单,启动 Terminal 终端 5
      5. 首先执行 diskutil list 命令,你可以在终端中获得一个完整的当前磁盘卷宗列表,如图 6。就本示例来说,/dev/disk0 (1TB HDD) 和 /dev/disk1 (128GB SSD) 是本次将要用来制作 Fusion Drive 的磁盘。(需要注意的是,你的系统显示可能与此不同,请根据你的实际情况来定)
      6. 因为 Fusion Drive 在用户层是显示为一个单独的卷宗(分区)而它又是基于 CoreStorage 的,所以我们只需要创建一个CoreStorage逻辑卷将两块磁盘管理起来即可,但是目前磁盘工具并不支持这一功能,所以我们还是要到终端下进行。执行此命令 diskutil coreStorage create FusionDrive disk0 disk1 7。其中,FusionDrive 是逻辑卷名称,你可以将其修改为任意你喜欢的名称 (需要注意的是,如果名称中有空格,则需要加上双引号,如 "ibuick FusionDrive")。disk0 disk1 则是需要用于制作 Fusion Drive 的磁盘设备命,你需要根据你在上一步骤中获得设备名称进行填写。执行此命令时,你可一看到终端的类似输出 8。当终端输出 "Finished CoreStorage operation" 并返回光标闪烁状态,则表明操作完成。我们可以打开磁盘工具,验证一下:9。图中我们可以看到,在磁盘工具中出现了我们刚才创建的 FusionDrive,且大小为 1.13 TB (1TB+128GB)。我们还可以使用 diskutil coreStorage list 命令,来对磁盘工具中显示的内容进行验证,10。从终端输出的结果,result1 我们可以看到其中的奥秘。首先是一个 UUID 为 56E62D7F-37C2-4257-BB09-9D10EE84E97E 的 CoreStorage logical volume group (CoreStorage 逻辑卷宗组)。它含有两块物理卷宗(或磁盘 Physical Volume),UUID 为 DE2086FB-9306-4C44-98B6-241B1F2D4DFB 的 disk0 和 UUID 为 50368349-C9BC-4BE6-9357-E845C2CCD3D1 的 disk1。
      7. 这里你可以将逻辑卷宗组简单理解为一块磁盘,它可以由多块磁盘组成。有了磁盘,我们可以在上面建立卷宗(即分区),同样使用命令来实现。执行此命令,diskutil coreStorage createVolume 56E62D7F-37C2-4257-BB09-9D10EE84E97E jhfs+ MacintoshFD 1110g 创建一个卷宗。其中,56E62D7F-37C2-4257-BB09-9D10EE84E97E 是刚刚我们创建的逻辑卷宗组的 UUID,你的实际情况可能与此不同。jhfs+ 则是磁盘格式 (Mac OS 扩展日志式) 1110g 则是指定卷宗的大小。11,执行完毕后,我们也能在磁盘工具中找到新创建的分区。12。这时,我们还可以通过 diskutil coreStorage list 命令来验证,result2 。其中的 Logical Volume MacintoshFD 及是我们刚刚创建的分区。
过程到此,我们就完成了 DIY Fusion Drive 的整个工作,你可以退出磁盘工具和终端,开始安装 OS X Mountain Lion。

参考文档

虹光大成就-密教灌頂(一)