2013年モデルMacBook Pro登場
筆者は仕事の都合上、MacBookを1台所有しています。ですがさすがに2008年のCore 2 Duoモデルだけあり、最近のOSを動かすには少々つらいと感じていました。そんな折、先月末に登場したのが、Haswell搭載のMacBook Proです。「 Airは解像度がちょっと……」とWWDC 2013で発表されたHaswell搭載Airをスルーしていた筆者ですが、これなら、ということで即日ポチってみました。
新型のMacといえば、皆さん一番気になるのは「Ubuntuは動くのか?」だと思います。そこで今週のレシピでは、このMacBook Pro 11.1にUbuntu 13.10をインストールする方法を紹介します。
ちなみに筆者が購入したのは、13インチのRetinaディスプレイ搭載モデル(ME865J/A)です。8Gバイトのメモリと256GバイトのSSDに、英語キーボードという構成を選択しました。
インストールの前に
Macに限らず、OSを入れ替える際にはバックアップが重要です。もちろん
「俺は24時間フルタイムUbuntuで生きていく。プリインストールのOSなんていらない」
という方もいらっしゃるかもしれません。その意気やよしですが、「 ファームウェアのアップデートにOS XやWindowsが必要」などというシチュエーションはよくある話です。またメーカによっては、OSを入れ替えていると故障時に修理を受け付けてくれないという事例も存在します。そのため、工場出荷時のイメージは保存しておくほうがよいでしょう。
ただし最近のMacの場合、後述する復元機能によりメディアなしでOSを復元することが可能です。ですので、工場出荷時状態のバックアップは、必ずしも必要ではありません。もちろん、既にOS Xを使い始めてしまっている場合は、必要に応じてバックアップを取りましょう。
筆者は次節で説明するLive USBメモリを使い、USB接続のHDDへ内蔵SSDの内容をイメージファイルとしてバックアップしました。
まずUSBメモリからLiveセッションを起動して、別のUSBポートに外付けHDDを接続します。HDDが/media以下にマウントされたら、ddで内蔵SSD(/dev/sda)をイメージファイルとして書き出します。この際、内蔵SSDと同じサイズのファイルが作成されますので、バックアップ用にはそれよりも大きなHDDを用意してください。
ddコマンドで内蔵SSDをまるごとイメージ化する例
$ sudo dd if=/dev/sda of=/media/ubuntu/xxxxxx/MacBookPro.img bs=1M
Mac用インストールメディアの作成
Ubuntuでは通常のi386/amd64のイメージに加えて、Mac向けに調整したamd64のISOイメージをリリースしています。現行のIntel CPU搭載MacにUbuntuをインストールする場合は、このイメージを利用するとよいでしょう[1] 。ダウンロードサイト から64-bit Mac (AMD64) desktop imageをダウンロードしてください。
最近のMacには光学ドライブが搭載されていないので、インストールにはUSBメモリを利用します。この際USBメモリの内容はすべて消えてしまうため、中身を消しても構わないUSBメモリを用意してください。USBメモリの容量は1GB以上必要です。
ISOイメージからLive USBメモリを作成する方法はいくつかありますが、OS Xの場合であれば、ターミナル上でddコマンドを使ってしまうのが簡単です[2] 。OS Xのターミナルは「アプリケーション」 →「 ユーティリティ」 →「 ターミナル.app」です。
もしも挿入したUSBメモリが自動でマウントされてしまった場合は、ddでイメージを書き込む前にマウントを解除しなくてはなりません。ですがFinderでデバイスの横の上向き三角ボタンをクリックすると、ディスクが取り外され、デバイスファイルそのものが見えなくなってしまいます。そのような場合は「ディスクユーティリティ」から「マウント解除」を実行してください。
もちろんLive USBの作成はMacでなく、別のUbuntu PCで実行しても構いません。
なお、場合によってはddコマンドで作成したUSBメモリからブートできないケースがあります。そのようなケースに遭遇した場合は、ドキュメント に従い、hdiutilでISOイメージをコンバートしてから書き込んでください。
図1 ディスクの取り出しとアンマウントは異なる。デバイスは接続したままマウントを解除するためには、ディスクユーティリティで「マウント解除」を実行すればいい
ISOイメージをUSBメモリ(この場合は/dev/disk1)に書き込む例
$ sudo dd if=ubuntu-13.10-desktop-amd64+mac.iso of=/dev/disk1 bs=1m
インストール時の注意点
作成したLive USBを挿入した状態で、optionキーを押しながらMacを起動してください。すると起動ボリュームの選択画面が表示されますので、ここでUSBメモリを選択します。あとは一般的なUbuntuのインストールと同じです。
図2 option(Alt)キーを押しながらMacを起動すると、起動メディアを選択できる。ここでUSBメモリを選択して、Liveセッションを起動する
インストールに際して注意点があります。Ubuntuのインストーラは必要なパッケージをインストール時にダウンロードするようになっているため、インストール時にはインターネット接続が要求されます。MacBook Proには当然無線LANが搭載されているのですが、無線LANを利用するためにはBroadcomのプロプライエタリドライバを別途インストールする必要があるため、Liveセッションでは利用することができません。ネットワークのドライバが必要なのに、ドライバのインストールにはネットワークが必要という、「 金庫の中に鍵」状態になってしまうのです。そのため、Liveセッションで利用可能なネットワークアダプタを別途用意することが、事実上必須と言えます。
ネットワークアダプタは、Ubuntuで動作するものならなんでも構いません。筆者はせっかくのMacなので、第264回 で紹介されている、AppleのThunderbolt-ギガビットEthernetアダプタを購入して使用しました[3] 。もちろん、USB接続の無線LANアダプタなどでも問題ありません。
インストール手順は、Windows PCにUbuntuをインストールする際と同じです。ただしインストールの種類において「Replace Mac OS X with Ubuntu」を選択し、内蔵SSDをまるごとUbuntuで利用することを前提としています。手動でパーティションを調整し、OS Xとのデュアルブートすることも可能ですが、本記事では紹介しません。
図3 Liveセッションではドライバの都合上無線LANが使えないため、ネットワークに接続することができない
図4 そのままインストールを続行すると、インターネットへの接続がない旨の注意が表示される
図5 内蔵SSDをまるごとUbuntuで利用するスタイルならば、何も難しい手順は必要ない
Ubuntuを日本語Remix化する
64-bit Mac (AMD64) desktop imageからインストールしたUbuntuであっても、日本語Remix相当の環境にすることができます。先週 、先々週 のレシピでも言及されているように、Ubuntu 13.10での日本語入力環境には様々な変化(と問題)があります。mozc-setup-helperを利用することで13.04以前の使い勝手に近づけることができますので、特別なこだわりがない限りは、日本語Remix化しておくのがお勧めです。
手順はJapanese Teamのページ に書かれています。「 Ubuntu 13.10の場合」に書かれているコマンドを端末から実行した後に、apt-get upgradeとubuntu-defaults-jaパッケージのインストールを行ってください。これで次回ログイン時に、mozc-setup-helperが自動起動します。
日本語Remix相当の環境にする
$ wget -q https://www.ubuntulinux.jp/ubuntu-ja-archive-keyring.gpg -O- | sudo apt-key add -
$ wget -q https://www.ubuntulinux.jp/ubuntu-jp-ppa-keyring.gpg -O- | sudo apt-key add -
$ sudo wget https://www.ubuntulinux.jp/sources.list.d/saucy.list -O /etc/apt/sources.list.d/ubuntu-ja.list
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get install ubuntu-defaults-ja
デバイスの動作状況
ディスプレイ
とくに何もすることなく、Retinaディスプレイを2560×1600ピクセルで使用可能です。F1/F2キーでのディスプレイの輝度変更も、正しく動作します。
HDMIポート経由で外部ディスプレイを接続することができますが、こちらも挿すだけでディスプレイを認識し、デュアルディスプレイでの動作が可能です。
図6 2560×1600の広いデスクトップ。しかし液晶が13インチなため、フォントサイズを調整しないと非常に目が疲れる
図7 1920×1200の液晶ディスプレイをHDMI接続した例
ワイヤレスネットワーク
前述のとおり、無線LANを利用するためにはBroadcomのプロプライエタリなドライバが必要です。ドライバのインストールは簡単で、「 ソフトウェアとアップデート」 →「 追加のドライバー」を開くと、利用可能なドライバ(Broadcom 802.11 Linux STA wireless driver)がリストアップされますので、使用するドライバを選択して「変更の適用」をクリックしてください。これでbcmwl-kernel-sourceパッケージがインストールされ、再起動後から無線LANが使用できるようになります。
ドライバさえインストールしてしまえば、無線LANは問題なく動作します。
図8 Wi-Fiを利用したい場合は、「 ソフトウェアとアップデート」から追加のドライバをインストールする
キーボードバックライト
キーボードにはバックライトが付いており、F5/F6キーで明るさを調整することが可能です。こちらも特別な設定の必要なく動作します。
図9 キーボードバックライトの明るさを調整すると、きちんとデスクトップに通知される
スピーカー/ヘッドフォン/マイク
オーディオデバイスは認識しているものの、内蔵のスピーカー経由では音が鳴りません。ヘッドフォン端子に接続したヘッドフォンからは音が再生されるため、「 ノートの内蔵スピーカーなんて使わない。音楽を聞く時はヘッドフォンで」というユーザであれば、実害はないかもしれません。
内蔵のマイクは正常に動作しています。Audacityなどを使って音声を録音したり、ヘッドフォンを併用してSkypeで通話することも可能です。
Thunderbolt
インストールの際に解説したとおり、ThunderboltのギガビットEthernetアダプタが動作します。本機で有線LANを利用したい場合、これが第一候補になるかと思います。
また筆者は未確認ですが、Thunderboltポートに接続するDisplayPortケーブルも動作するようです。
SDXCカードスロット
SDXCカードスロットも利用可能です。デジタルカメラなどで利用しているSDカードを挿入すれば、自動的にマウントされ、ファイルブラウザからアクセスすることができます[4] 。
図10 SDXCカードスロットもきちんと動作する。デジタルカメラを多用する筆者には地味に嬉しい
Bluetooth
Bluetoothアダプタは認識しており、デバイスとのペアリングも成功するのですが、その後デバイスが動作しない(通信できていない?)という現象に遭遇しました。
カメラ
現時点で、内蔵の720p FaceTime HDカメラは動作しません。
サスペンド
サスペンドから正常に復帰できないという現象を、何度か確認しています。またMac固有の問題ではありませんが、Ubuntu 13.10にはサスペンドから復帰した際に、ネットワークアダプタを見失ってしまうという不具合が確認されています。せっかくバッテリーが長持ちする機種ではあるものの、サスペンドにして外に持ち出すという使い方は、少々厳しいかもしれません。
筆者の確認した、搭載デバイスの動作状況
ネットワーク ○
ディスプレイ ○
HDMI ○
キーボードバックライト ○
ヘッドフォン ○
マイク ○
Thunderbolt(for NIC) ○
SDXCカードスロット ○
Bluetooth ×
スピーカー ×
カメラ ×
サスペンド ×
SSDのロックアップ対策
MacBook Pro 11.1でUbuntuを使っていて、一番の問題となるのがSSDのロックアップです。この現象が発生するとSSDの読み書きがブロックされてしまい、アプリケーションの処理がその場で停止してしまいます。この現象は筆者が試した範囲でも、とても常用には耐えない頻度で発生することが確認できました。ですがこの問題は、SATAのNCQ(Native Command Queuing)を無効にすることで回避できます。
NCQとは、複数の命令をキューイングし、効率よく並べ変えて実行することで、HDDのアクセス速度を向上させる技術です。Ubuntuでは対応したストレージが接続された場合、自動的にNCQが有効になります。NCQが有効かどうかは、起動時のdmesgで確認できます。
NCQが有効なSATA SSDから起動した例
$ dmesg | grep NCQ
[ 1.077369] ata1.00: 250069680 sectors, multi 16: LBA48 NCQ (depth 31/32), AA
NCQを無効にするには、カーネルパラメータに「libata.force=noncq」を付けて起動します。「 /boot/grub/grub.cfg」は自動生成されるファイルのため、このファイルを直接編集することはせず、「 /etc/default/grub」の「GRUB_CMDLINE_LINUX」にこのオプションを追記してください。追記が完了したら、update-grubコマンドを実行して、grub.cfgを再生成し、Ubuntuを再起動してください。
NCQが無効になっていると、dmesgに「not used」のように表示されます。
カーネルパラメーターを追記する
$ sudo vi /etc/default/grub
(略)
GRUB_CMDLINE_LINUX="libata.force=noncq"
$ sudo update-grub
NCQを無効にした例
$ dmesg | grep NCQ
[ 4.008551] ata1.00: 490234752 sectors, multi 16: LBA48 NCQ (not used)
OS Xを復元するには
やっぱりOS Xに戻したい! ……という要求は当然あると思います。内蔵SSDをまるごとUbuntuで利用していると、当然リカバリー領域も消え去っています。そんな時はインターネット復元機能を利用しましょう[5] 。
commandキーとRキーを押しながらMacの電源を投入すると、インターネット復元機能が起動し、自動的にインターネットからOS Xユーティリティをダウンロードします。OS Xユーティリティが起動したら「ディスクユーティリティ」を実行し、内蔵SSDにOS X用のパーティションを用意してください。具体的にはGUIDパーティションテーブルでSSD全体を1パーティションレイアウトにし、Mac OS拡張(ジャーナリング)でフォーマットすればよいでしょう。
パーティションが作成できたらOS Xユーティリティに戻り、「 OS Xを再インストール」を選択、実行してください。インターネットからOS Xがダウンロードされ、SSDにインストールされます。この作業には3~4時間ほどの時間がかかります。
図11 command+Rで起動できるOS Xユーティリティ。このユーティリティ自体もダウンロードして実行されるため、ネットワーク接続さえあればOSを復元できる