MJHD

エモさ駆動開発

Ubuntu14.04をMacBookAirに(refind未使用)

Ubuntu14.04が一昨日、リリースされた。 公式ドキュメントにも、他のサイトにもUbuntuをrefind等なしでインストールする方法はあまり載ってないように思えたので、まとめる。

インストールメディア

自分はUSBメモリを使った。

$ dd if=ubuntu-14.04-desktop-amd64.iso of=/dev/disk? bs=512

上記のコマンドを実行して待つだけである。

後はDVDに焼いてもいいと思うが、インストールに時間がかかる。

注意:disk?s?のようにパーティションまで指定してしまうと、うまく起動できない

インストールメディアの起動

上で作成したインストールメディアを接続して、Optionを押しながら起動する。 おそらく、EFI Bootという項目が増えていると思うので、選択してEnterを押す。(EFI Bootが二つある場合もあるが、その時はどちらを選んでも同じである。)

その後、Try ubuntu without installing的な項目を選んで、Ubuntuの起動を待つ。

パーティション

Ubuntuが起動したら、Firefoxを起動して、このページからhfsprogsをダウンロード、インストールしてほしい。

インストールが完了したら、gpartedを起動して、以下のようにパーティションを切る。

  • Macと同じディスクにインストール f:id:wait0000:20150823190028p:plain 上の画像を参考にする。

Macパーティションの下にfat32のパーティション(UbuntuEFI, /boot/efiとしてマウント)、

その下にext2のブートパーティション(UbuntuBoot, /bootとしてマウント)、

その下にext4の本体のパーティション(Ubuntu, /としてマウント)を作る。

  • Macと別のディスクにインストール f:id:wait0000:20150823190043p:plain 実際、自分はこの構成でインストールした。

fat32の200MB程度のパーティション(UbuntuEFI, /boot/efiとしてマウント)、

ext2の200MB程度のパーティション(UbuntuBoot, /bootとしてマウント)、

ext4パーティション(Ubuntu, /としてマウント)を作る


あとは、Install Ubuntuアイコンをクリックして、上で説明したマウントポイントを設定して、

ブートローダのインストール先をUbuntuBootとして設定したパーティションにして、 インストールをすればよい。(重要)

grub-install

インストールが終わると、再起動を促されると思うが、Optionキーを押しながら起動して欲しい。

前回と同じように、EFI Bootを選び、Try Ubuntuなど並んでる画面が出たら、 Try Ubuntu without installingの項目を選択している状態で、eキーを押す。

boot=casper

という文字列がどこかにあると思うので、それを以下と置き換える。

root=/dev/sd??

(sd??はUbuntuとして設定したパーティション)

そして、F10を押す。(fnキーを押しながら、F10)

Ubuntuが起動したら、Terminalを起動して、以下のコマンドを実行する。

$ sudo grub-install --target=x86_64-efi --efi-folder=/boot/efi --recheck

次に、/boot/efi/EFIフォルダをどこかにバックアップしてほしい。

そして、gpartedをもう一度起動して、UbuntuEFIをhfs+でフォーマットしなおす。

そして、バックアップしておいたEFIフォルダをUbuntuEFIのルートに設置する。

Macの世界へ

再起動をして、Macの世界へ戻る。

ディスクユーティリティから、UbuntuEFIを右クリックしてマウントする。

マウントされたのが確認できたら、次に、ターミナルを起動して、以下のコマンドを実行する。

$ sudo bless --folder=/Volumes/UbuntuEFI --file=/Volumes/UbuntuEFI/EFI/ubuntu/grubx64.efi

無事、実行できたら、Optionを押しながら起動したときの一覧に、EFI Bootという項目が増えているはずだ。

ちなみに、

このままだと、Ubuntuを起動したとき、UbuntuEFIをうまくマウントできないエラーが出るかもしれない。

/etc/fstabから/boot/efiをマウントする一行をコメントアウトするのが一番賢いだろう。


また、grub-installをもう一度実行する機会があるかもしれない。

その時は、gpartedを使ってUbuntuEFIをfat32でもう一度フォーマットし直し、grub-installを実行、

その後、hfs+に再フォーマット、EFIフォルダをコピーという手順をもう一度実行する必要があるだろう。

grubがhfs+へ対応してくれるまで地道にやるしかないようだ。