Instantly share code, notes, and snippets.

Embed
What would you like to do?
MacBook Air (Early 2015) のSSDを960 EVOに換装したメモです。この環境でArch Linux, macOS, Windowsが動作しました。他のMacでも、High Sierra以上かつ対応するアダプタを使用すればこのgistは参考になると思います。

MacBook Air(Early 2015)でNVMeのSSDに換装した話

MacBook Air (Early 2015) のSSDを960 EVOに換装しました。 MBAをNVMeのSSDに換装したという情報は日本語では少なかったのでメモ書き。 他のMacでも、High Sierra以上かつ対応するアダプタを使用すればこのgistは参考になると思います。

また、さすがにこの環境でWindowsやLinuxを動かしているという人は 検索した範囲ではまだ見つかりませんでしたね。

結論を言うと、macOSはじめWindows 10やArch Linuxでも動いていますが、注意する点がありました:

  • サスペンド中のハイバネート移行に問題があります
  • Linuxではinitramfsを生成し直す必要があるかもしれません(私はこれでハマった)

今日(2018/01/12)でArch Linuxを3日使用していますが、これ以外の問題は今の所は無いようです。 温度もサーマルパッドを使用したからか、純正よりも低いようです。

環境

  • MacBook Air (Early 2015)
  • macOS High Sierra 10.13.2
  • Arch Linux
  • Windows 10 1709

用意するもの

  • 一度でもmacOS High Sierraをインストールしていること

    High SierraのFirmwareでNVMeがサポートされました。

  • sintechのアダプタ

  • 絶縁テープ

  • P5のドライバ(裏蓋ネジ用)

  • T5のドライバ(SSD止めネジ用)

アダプタについて

M.2をMBA2015の端子形状に変換するアダプタが必要です。 私はsintechの NGFF M.2 PCIe SSD Card as 2013 2014 2015 MacBook SSD (ST-NGFF2013) を購入しました (中国からの輸入ですが、発送から5日で届いて驚きました。ハヤスギイ)。 現在(2018/01/12)はドライバとセットの物のみが販売されているようです。リンク

このアダプタは絶縁に問題があり、macOSでkernel panicが発生したと報告があります。そのため、カプトンテープなどで絶縁すると良いでしょう。このように

また、Amazon.co.jpにも変換アダプタはありましたが、そちらはネジ穴の位置がズレていました(ネジは閉まりましたが)。私の場合はさらにハンダが短絡していたので使えませんでした。

サスペンド中のハイバネート移行

Windowsでは未検証ですが、Arch LinuxやmacOSでは サスペンド中にハイバーネートに移行するとMacがSSDを見失うようです。

ただし、少なくとも3OSすべてでサスペンドや単独のハイバネート(長時間放置した場合の動作は未検証)は動作しました。 Arch Linuxでサスペンドして一晩放置した後でも復帰しました。

Arch Linuxでは

systemctl hybrid-sleepして長時間放置した後に、 電源ボタンを押下してもOSが起動しませんでした。 ただし、電源ボタン長押しで断電源した後に電源を投入したら、この後は普通にハイバネートから復帰しました。

macOSでは

macOSの標準のスリープでは、サスペンドとハイバネートを同時に行って、電源がある限りはサスペンドから復帰するようです。

(しかし、ずっと電源に繋いでいたためバッテリー切れということは無いはずですが、すみません。よくわかりません。)

次のコマンドでサスペンドのみをするように設定できます:

# サスペンドのみを使用
$ sudo pmset -a hibernatemode 0

ちなみに、単独のハイバネートは成功しました (ただし長時間放置した後の復帰は未検証):

# ハイバネートのみを使用
$ sudo pmset -a hibernatemode 25

# 今すぐスリープ
$ pmset sleepnow
Sleeping now...

参考:  Mac OS Xのスリープ方式(ハイバネーション)を変更する方法 – ソーシャルゲーム基盤 運用側から見渡す解像度

initramfsの再生成

私の場合は、initramfsを再生成しないとArch LinuxがSSDを見つけられませんでした。

Arch Linuxのinitramfsを再生成するには、LinuxのLive ISOで普段使用しているArch Linuxにchrootする必要があります。(私はManjaro LinuxのLive ISOを使用しました) 次のコマンドを実行してください:

# ここではarch-chrootコマンドでchrootします。
# arch-chrootはarch-install-scriptsパッケージにあります:
sudo pacman -S arch-install-scripts

# 普段使用しているArch Linuxのルートディレクトリをマウント
sudo mkdir /mnt/Arch
sudo mount /dev/YOUR_ARCH_PARTITION /mnt/Arch

# Arch LinuxにEFIパーティションをマウント
sudo mount /dev/YOUR_EFI_PARTITION /mnt/Arch/boot

# Arch Linuxにchroot
sudo arch-chroot /mnt/Arch

# chroot環境内でinitramfsを再生成
sudo mkinitcpio -p linux

NVMe SSDの温度

長尾製作所 M.2 SSD用ヒートシンクカバーSS-M2S-HS02 をAmazonで購入して使用しました。 厚みは、サイドフレームを外せば、軽く裏蓋を押さえつけることでギリギリ閉まりました。 ヒートシンクは使っていないですが、コレ単体でも十分に冷却されているようで、純正SSDをサーマルパッド無しで使用していたときよりも温度は低いようです。

2018/01/13 追記

裏蓋を開けて確認したところ、思った以上にSSDが歪んでいました。 そこで、現在はAmazonで購入したアイネックス M.2 ヒートシンク用 放熱シリコーンパッド HT-13を上に載せています。温度は少し高くなったように感じますが、それでも純正よりは低そうです。

参考リンク

ここから下のセクションは参考にしたリンク集です。

MBAのSSDのインターフェイス

MBA2013以降は、SATAから11+14, 12+16pinのPCIeに移行しました。

MacのNVMeサポート

NVMeはHigh Sierraでサポートされました。

SSD換装の参考リンク

@kwskrr

This comment has been minimized.

kwskrr commented Mar 24, 2018

こんにちは。
私も MacBook Pro に Samsung EVO を換装しましたが、本来認識しているリンク幅が x4 となるところ、 システム情報によると x2 になっていて、うまく認識がいっていないようです。使っている変換アダプタに問題があるのか疑っていますが、kitakar5525 さんはそういう経験や情報をお持ちだったりしますでしょうか?

構成
Mac : MacBook Pro (Retina, 13-inch, Early 2015)
SSD : Samsung SSD 500GB 960 EVO M.2 Type2280 PCIe3.0×4 NVMe1.2
変換アダプタ : sintech ST-NGFF2013

※どうやらこのsintech変換アダプタ以降に ST-NGFF2013 B とか ST-NGFF2013 C というアップデート版の変換アダプタが出ていることから、kernel panic の件も含めて、sintech の変換アダプタは不具合があったのかもしれないと疑っています
参考 sintech http://eshop.sintech.cn/index.php?main_page=advanced_search_result&search_in_description=1&keyword=NGFF+M.2+PCIe+SSD+Card+as+2013&x=0&y=0

@kitakar5525

This comment has been minimized.

Owner

kitakar5525 commented Apr 19, 2018

@kwskrr
気づくのが遅くなり恐縮です(;'∀')

私のMBA2015ではx4で認識されています。そして、私が見てきたフォーラムでもそういった報告は見たことがないですね~
お力になれず申し訳ない。確かに思い当たるのはアダプタの不良くらいですね

@tekemin

This comment has been minimized.

tekemin commented May 17, 2018

リンク幅が x2になるのは、絶縁不足です。コネクターや基板の形状によってどこが一番要注意の場所か変わってきますが、ロジックボードのコネクタの金属カバーと、アダプターの基板上のピンとの絶縁です(寸法的に余裕がない)。絶縁したと思っていたのに3枚のアダプターのうち1枚だけが x2 になり散々悩んだ挙句、再度絶縁を施して x4になりました。このあたりのことは、
Upgrading 2013/2014 Macbook Pro SSD to M.2 NVMe | MacRumors Forums に出ています。

アダプターは sintech 一択です。aliexpressやebayで売られているsintech以外の基板は、ST-NGFF2013と同じ問題が発生します。
ST-NGFF2013 黒基板 NG reset後ドライブを見失う、スリープから回復しないなどの問題あり
ST-NGFF2013-B 緑基板 OK
ST-NGFF2013-C 大きな黒基板 OK

ST-NGFF2013-BとST-NGFF2013-Cの配線は同じです。このあたりの情報もUpgrading 2013/2014 Macbook Pro SSD to M.2 NVMe | MacRumors Forums に出ています。

そのほかに 960 EVO/PROでは、kernek panicが発生する不具合があります。最新のfirmに更新すれば解決するという情報が上記フォーラム
にありました。

2013-2014 のMacBook pro/Airでは、NVMe SSDを搭載すると、外部ドライブとして表示され、起動が遅い(appleマークが表示されるまでに10秒ほどかかる、optionを押してドライブ選択すればすぐ表示される)という問題があります。EFI firmに関わる不具合と思われますが、度重なるEFI Firm更新でも解決していません。

@tekemin

This comment has been minimized.

tekemin commented May 17, 2018

済みません、誤植がありました。

reset -> reboot, restart
ST-NGFF2013 黒基板 NG reset後ドライブを見失う、スリープから回復しないなどの問題あり

kernek -> kernel
そのほかに 960 EVO/PROでは、kernek panicが発生する不具合

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment