Microsoft Surface Pro 3

提供: ArchWiki
移動先: 案内検索
警告: 製品保証は Windows の OEM イメージが存在する場合にのみ有効です。こちら によればデュアルブートにすることで保証が無効になることはありません。

このページでは Microsoft Surface Pro 3 タブレットで Arch Linux を動作させるのに必要な情報を集めています。

インストーラの起動

USB から起動するには、USB や SD カードから起動するようにタブレットを設定する必要があります。また、Secure Boot を無効にすると、起動するたびに "Surface" のスプラッシュロゴに合わない赤い背景が表示されるので、無効化しないほうが良いでしょう。

Surface Pro 3 には3種類のブートが存在します [1]:

  1. 通常モード
    1. 何も操作しないと通常モードで起動します。UEFI 設定の "Alternate Boot order" から起動順序を変更できます。
  2. UEFI 設定の起動
    1. デバイスの電源を切る (あるいは再起動する、ただし電源オフの方が安全です)
    2. Volume up を押す、そのまま押し続ける
    3. 電源ボタンを押す
    4. Surface ロゴが表示されるまで待つ
    5. Volume up を離す
    6. UEFI 設定メニューが表示されます
  3. USB/SD カードの起動
    1. デバイスの電源を切る
    2. Volume down を押す、そのまま押し続ける
    3. 電源ボタンを押す
    4. Surface ロゴが表示されるまで待つ
    5. Volume down を離す

Secure Boot の無効化

ノート: 無効化すると起動時にロゴの前に赤い背景が表示されるようになります。

UEFI 設定を起動して、Secure Boot Control > Disable を選択してください。それからインストールに進んで下さい。詳しくは [2] を参照。

Secure Boot で起動

Unified Extensible Firmware Interface#Secure Boot を見て下さい。

インストール

systemd の bootctl を使う Systemd-boot (旧 Gummiboot) でインストールすることができます。インストールガイドの手順を全て完了したら、あと2つのことをやる必要があります。ローダーの中に vmlinuz が登録されていないため、新規インストールでは Secure Boot で起動することができません。

設定を行う一番簡単な方法は以下の通りです。再起動をする前に行なって下さい:

  1. chroot から退出する。ただし何もアンマウントしないで下さい。
  2. /mnt/boot/EFI/boot/bootx64.efi/mnt/boot/EFI/boot/loader.efi に移動
  3. /boot/EFI/boot/bootx64.efiHashTool.efi/mnt/boot/EFI/boot/ にコピー (/boot に HashTool が存在しない場合は /usr/run の中を見て下さい)

これで、Gummitboot ローダーを起動するための Preloader が有効になり、何か署名されていないものが検出されると、HashTool.efi を起動して vmlinuz-image バイナリに署名を行います。署名がされていても、されていなくても、ハッシュの保存処理が繰り返されるので、Secure Boot が有効になっていても自由にカーネルを起動することが可能です。

設定

タッチパッドやスクリーンなどは最新のカーネルでサポートされていますが、ウェブカメラなどはサポートされていません。Arch Linux における Surface Pro 3 のサポート状況を追跡する github リポジトリが作られており、そこから現状を確認できます: [3]

Surface のデバイスをサポートする、Surface Pro 3 専用の Linux カーネルパッケージも存在します。AUR の linux-surfacepro3AUR[リンク切れ: パッケージが存在しません] からインストールできます。あるいは上流からパッチを取得してください [4]

パッチを適用してカーネルをコンパイル

カーネル/コンパイル/伝統的な方法#ビルド設定を参照してください。

ノート: 執筆時点ではカーネルパッチの最新のソースは shvr の github リポジトリ になっています。

Surface Pro 3 の Linux カーネルハードウェアパッチ

カーネル 4.3 以上では、マルチタッチとカメラのパッチだけが必要です。

ノート: 上記のパッチは Git パッケージに含まれている git-apply を使うことで自動的に適用できます。

タッチパッドの有効化

xf86-input-synaptics パッケージをインストールして、カーネルパッチを適用し、以下を /etc/X11/xorg.conf.d/10-multitouch.conf に追加してください (参照: GitHub):

Section "InputClass"
  Identifier "Default clickpad buttons"
  MatchDriver "synaptics"
  Option "ClickPad" "true"
  Option "SoftButtonAreas" "50% 0 82% 0 0 0 0 0"
  Option "SecondarySoftButtonAreas" "58% 0 0 15% 42% 58% 0 15%"
EndSection

ペンの設定

ペンを動作させるには設定が必要です。xf86-input-wacom パッケージをインストールして /usr/share/X11/xorg.conf.d/10-evdev.confMatchIsTablet セクションをコメントアウトしてください。さらに、/usr/share/X11/xorg.conf.d/50-wacom.conf の N-Trig の MatchProduct 行に 1B96:1B05 Pen を追加してください。また、紫の Bluetooth ボタンをトリガとして使うことができます (参照: Reddit)。

仮想キーボード

デスクトップ環境によって、様々な仮想キーボードを使うことができます。onboard が使いやすく安定しています。最適な設定方法は こちら にあります。GNOME を使用している場合、より良い統合を行うための拡張が2つ存在します (1, 2)。

Secure Boot が有効な状態で起動

Secure Boot が有効な UEFI で推奨されるブートローダーは systemd-boot です。

Secure Boot で起動するには、次のパッケージが必要になります: efibootmgr, efitools

参照: Surface Pro 3 and Secure Boot post-install

/boot/EFI/systemd/systemd-bootx64.efi/boot/EFI/systemd/loader.EFI にコピーしてください。

/usr/lib/prebootloader/HashTool.efi/usr/lib/prebootloader/PreLoader.efi/boot/EFI/systemd/ にコピーしてから PreLoader.efi の NVRAM エントリを作成してください:

efibootmgr -d /dev/sdX -p Y -c -L Preloader -l /EFI/systemd/PreLoader.efi
ノート: Y/boot パーティションのパーティション番号に置き換えて下さい。

エントリが作成されたこと、ブート順で一番最初になっていることを確認:

efibootmgr

ブートローダーでカーネルを登録してください: Unified Extensible Firmware Interface#Secure Boot。HashTool.efi と vmlinuz-linux を登録してから、システムを再起動します。これで Secure Boot が有効でも起動できるはずです。

ノート:
  • PreLoader.efi は efibootmgr のデフォルトのブートオプションであるため、カーネルを変更すると、HashTool で新しいカーネルを登録するための PreLoader が現れます。
  • /boot/loader/entries/ にエントリを追加することで新しいカーネルを起動するオプションが表示されます。

トラブルシューティング

Invalid signature detected check secure boot policy in setup

Secure Boot データベースを削除して Microsoft & CA で初期化すると発生します。以下の手順で修復できます:

  1. リセット後、電源を切って SD/USB から起動できるか試して下さい。起動できず何度もメッセージが表示される場合:
    1. TPM & SecureBoot を有効にして Alternate System Order を SSD Only にしてください
    2. もう一度データベースをリセットしてください
    3. Microsoft と CA をもう一度登録してください
    4. volume down で sd/usb を再起動します
  2. Secure Boot のインストールの手順に従って下さい

上記の設定をしても直らない場合、archiso イメージをもう一度書き込んで再度試して下さい。

キーボードカバーが機能しない

再起動すると問題が発生することがあります。シャットダウンか再起動すれば解決します。

Xournal におけるペンとタッチスクリーンの問題

xf86-input-wacom パッケージを使用している場合、最新リリースの xournal (0.48.2) にはバグが存在し Surface ペンが間違ってタッチスクリーンデバイスとして認識されることがあります。開発版のソースコードで修正されているため xournal-gitAUR パッケージをインストールすることで問題は解決します。インストールしたらタッチスクリーンデバイスとして 'NTRG0001:01 1B96:1B05' を選択する必要があります (Options > Pen and Touch)。