例えば、自宅のMacBook上で資料なりツールなり作っておいて、出先で持ち歩き用の11.6インチWindows PCで見せたり動かすとか。
そのUSBメモリを、内部ディスク等にWindowsがインストールされているPC上で作成すると、ブートローダがUSBメモリにインストールされません。WindowsのEFIパーティションにインストールされてしまいます。
なので、そのUSBメモリは他のPCでは起動できません。
内部ディスクを外してインストールできればいいんですが、ノートPCたど外すの面倒くさかったり保証受けられなくなったり、そもそもeMMCなんかだと直付けされてたりするので、なんとか付けたままでインストールしたい。
インストールに関してはざっくり省略
----------------------------------------------------------------
なので、そのUSBメモリは他のPCでは起動できません。
内部ディスクを外してインストールできればいいんですが、ノートPCたど外すの面倒くさかったり保証受けられなくなったり、そもそもeMMCなんかだと直付けされてたりするので、なんとか付けたままでインストールしたい。
以下そのための手順です。デバイス名等はASUS Vivobook E200HAのもので、内蔵eMMCは/dev/mmcblk0でUSBメモリは/dev/sdaです。
- インストールメディアからTry ubuntu without installingでシステムを立ち上げて、Install Ubuntu 18.04.3LTSを起動してインストール
インストールに関してはざっくり省略
----------------------------------------------------------------
- 再起動前にTerminalを立ち上げ、UbuntuのEFIパーティション、WindowsのEFIパーティションをマウント
# mount /dev/sda1 /target/boot/efi
# mount /dev/mmcblk0p2 /mnt
----------------------------------------------------------------
# mkdir /target/boot/efi/EFI
# cd /mnt/EFI
# mv ubuntu /target/boot/efi/EFI/
----------------------------------------------------------------
# cd /target/boot/efi/EFI
# cp -r ubuntu boot
# cd boot
# mv grubx64.efi bootx64.efi
----------------------------------------------------------------
# vi /etc/fstab
UUID=C3C3-529C /boot/efi vfat umask=0077 0 1
----------------------------------------------------------------
以上で完了、PCの設定画面でUSBメモリの起動順を一番上にしてリブートすればUbuntuが立ち上がります。
このメモリをMacBookに挿して、起動後ALTでUSBメモリが出てきます。
----------------------------------------------------------------
- ubuntuのブートローダーをWindowsのEFIパーティションからUbuntuのEFIパーティションへ移動
# mkdir /target/boot/efi/EFI
# cd /mnt/EFI
# mv ubuntu /target/boot/efi/EFI/
----------------------------------------------------------------
- 一部のWindowsPCやMacではデフォルトのEFIブートローダー名じゃないと立ち上がらなかったりするので、デフォルト名のも作ります。
# cd /target/boot/efi/EFI
# cp -r ubuntu boot
# cd boot
# mv grubx64.efi bootx64.efi
----------------------------------------------------------------
- ここで注意点ですが、boot/bootx64.efiで起動してもgrub.cnfファイルはubuntuの下のを参照するので、cpではなくmvするとgrub-shellでエラーになります。
- /etc/fstabにEFIパーティションをマウントする記述があり、これもWindowsのものを参照しているので書き換えます。まずblkidコマンドでUbuntuのEFIパーティションのUUIDを調べて、/etc/fstabを書き換えます。
# blkid /dev/sda1
/dev/sdb1: UUID="C3C3-529C" TYPE="vfat" PARTUUID="e116e9b3-b110-4d0f-95d0-1e0fa76420c2"# vi /etc/fstab
UUID=C3C3-529C /boot/efi vfat umask=0077 0 1
----------------------------------------------------------------
以上で完了、PCの設定画面でUSBメモリの起動順を一番上にしてリブートすればUbuntuが立ち上がります。
このメモリをMacBookに挿して、起動後ALTでUSBメモリが出てきます。
0 件のコメント:
コメントを投稿