Mac ProでもSurface Proでもブート可能な外付Linuxを作る

必要なもの

  • SSDかUSBメモリー
    • 最低でもUSB3.1に対応している方がよい。転送速度は非常に重要。
    • 500GB以上あると使い勝手がよい。
  • Mac Proの場合
    • wlドライバーを使う。(無線LAN)
      • http://www.broadcom.com/support/802.11
      • https://pmbs.links2linux.de/package/show/Essentials/broadcom-wl
    • radeonではなくamdgpuを使う。
$ lspci | grep -i VGA
02:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti LE [Radeon HD 7870 XT]
06:00.0 VGA compatible controller: Advanced Micro Devices, Inc. [AMD/ATI] Tahiti LE [Radeon HD 7870 XT]
  • Surface Pro 3の場合
    • カーネルにパッチを当てる。ここを参照。
    • 無線LANファームウェアをダウンロードする。git://git.marvell.com/mwifiex-firmware.gitから。
      • ドライバーはmwifiex_usb、firmwareはmrvl/usb8797_uapsta.bin。

SSDのパーティションを区切る(/dev/sdzの場合)

$ gdisk /dev/sdz
x
l
1
m
n
1
34
2047
ef02
x
l

m
n
2
2048
+100MB
ef00
w
y
$ gdisk /dev/sdz
n
3

+410G
0700
n
4

+10G
8300
n
5


8300
x
c
4
00000000-1994-0205-2002-424552525900
c
5
00000000-2014-1002-2002-424552525900
w
y
# mkfs.vfat /dev/sdz2 -n EFI
# mkfs.exfat /dev/sdz3 -n Samsung_T5
# mkfs.ext4 /dev/sdz4 -L BerryOS -U 00000000-1994-0205-2002-424552525900 -m 1
# mkfs.ext4 /dev/sdz5 -L BerryOS_Home -U 00000000-2014-1002-2002-424552525900

EFIの設定

/efi
/efi/boot
/efi/boot/bootx64.efi
/efi/boot/linuxx64.efi.stub
/efi/boot/vmlinuz
/efi/boot/vmlinuz-4.13.10-berry
/loader
/loader/splash.bmp
/loader/loader.conf
/loader/entries
/loader/entries/berry-en.conf
/loader/entries/berry.conf

その他

  • https://yui0.github.io/ALSA/
  • https://yui0.github.io/ifrename/

参考

  • http://takuya-1st.hatenablog.jp/entry/2016/12/03/011022
  • https://support.microsoft.com/ja-jp/help/4023511/surface-boot-surface-from-a-usb-device
  • https://qiita.com/kiida/items/67bda4881fef5444fbe5
  • https://u7fa9.org/memo/HEAD/archives/2013-06/2013-06-16.rst
Written on November 2, 2017