Skip to content

Instantly share code, notes, and snippets.

@kitakar5525
Last active January 30, 2021 19:37
Show Gist options
  • Star 8 You must be signed in to star a gist
  • Fork 2 You must be signed in to fork a gist
  • Save kitakar5525/f54a52e97d88adeec97d78a98f6793b3 to your computer and use it in GitHub Desktop.
Save kitakar5525/f54a52e97d88adeec97d78a98f6793b3 to your computer and use it in GitHub Desktop.
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日使用していますが、これ以外の問題は今の所は無いようです。 温度もサーマルパッドを使用したからか、純正よりも低いようです。

環境

SSDを換装したMac

  • MacBook Air (Early 2015)

OS

  • macOS High Sierra 10.13.2
  • Arch Linux
  • Windows 10 1709

使用したNVMe SSD

  • Samsung 960 EVO 500GB

用意するもの

  • 一度でも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を見失うようです。

ただし、少なくともそれらのOSすべてでサスペンドや単独のハイバネート(長時間放置した場合の動作は未検証)は動作しました。 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換装の参考リンク

@jetbee
Copy link

jetbee commented Nov 21, 2019

参考になります!NVMeにしてバッテリーの持ちは何か変わりましたでしょうか。
JetDriveにして、どうも純正よりバッテリーの持ちが悪くなった様な気がしまして、NVMe換装はどうなのかなと思いました。

@kitakar5525
Copy link
Author

kitakar5525 commented Nov 21, 2019

NVMeにしてバッテリーの持ちは何か変わりましたでしょうか。

このgistを書いた後、結局そのMBA2015は3ヶ月くらいしかメインで使うことはなかったのですが、
私の場合は少なくともArch Linuxでは体感では違いはわからなかったですね〜。macOSでどうなるかはわからないです。

@jetbee
Copy link

jetbee commented Nov 21, 2019

早速のコメントありがとうございます。参考になりました^^

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