## URLに使われるページ名はアルファベット(WikiName形式)を用いる ## 以下のタイトルを内容に沿ったものに変更する #title UEFI環境でISOイメージを直接起動するUSBメモリーを作成する。 ## 「6.06 Dapper Drake」といった形式で箇条書きにする ## バージョン非依存のTipの場合は「すべて」と記述 * '''対象とするUbuntuのバージョン''' * UEFIでインストールされているUbuntuすべて ## 目次 ||<>|| ## 以下にTipsを記述 == はじめに == 今は手軽にUSBメモリーにLive環境を構築してくれるソフトがあります。<
> ここでは、そういったソフトを使わずに'''UEFI環境でISOイメージから起動できるUSBメモリーを構築する手順'''を書いておきます。<
> 自分自身詳しい訳ではないので、こうやったら出来たという程度の認識でお願いします。<
> == これでやってみたこと == * rEFInd Boot Managerを使ったマルチブート。( Windows10 , Ubuntu14.04 , Debian Jessie ) * UEFI環境での起動に対応していないISOイメージをUEFI環境として起動。例えば、Debian Wheezy , ubuntu-defaults-builder で作成したISOイメージ等。 * Debian WheezyのISOイメージを組み込み、VirtualBoxのvdiイメージに変換、これを利用してUEFI環境の仮想PCでインストール。( VirtulBox環境下(EFI) で起動するには shell での操作や startup.nsh の作成が必要ですが、この vdi イメージで起動すると rEFInd Boot Manager が自動的に起動して起動したいカーネルを選択・操作できます。) == 今回の修正で変わったこと == * ドライブの構成が変わっても追従できる様になりました。 == 揃えるもの == * UEFI でインストール・動作しているUbuntu PC * USBメモリー * Ubuntu日本語Remix 14.04 , 15.10 (amd64) のISOファイル  [[https://www.ubuntulinux.jp/ubuntu/mirrors#imagemirror|Ubuntuのリリースイメージ・ミラーサイト : www.ubuntulinux.jp]] から入手してみて下さい。 1. ubuntu-ja-14.04-desktop-amd64.iso 1. ubuntu-ja-15.10-desktop-amd64.iso ここでの操作には[[https://wiki.ubuntulinux.jp/UbuntuTips/Others/HowToUseTerminal|端末 : 内部リンク]]を使います。 == 作り方 == 1.#1 USBメモリーにパーティション&ファイルシステムを構築。<
><
> 予め、認識しているUSBメモリーのデバイスファイル名 (/dev/sdb 等) を確認してください。<
> ラベル名を設定しておくと後々認識しやすいかもしれません。<
><
> gparted を使う場合は、<
> || GPT || || 容量 || ラベル || || partition1 || fat32 (EF00) || 300MB || etc10-fat32 || || partition2 || ext4 (8300) || 残り容量 || etc10-ext4 || <
> gdisk (ここでは sgdisk) を使う場合は以下の様にします。<
><
> 事故防止の為、<
> /dev/sdXY<
> /dev/sdXZ<
> に置き換えます。X ⇒ b , Y ⇒ 1 , Z ⇒ 2 と考えて下さい。<
><
> ※ 以下の C12A7328-F81F-11D2-BA4B-00A0C93EC93B は ESP : EFI System Partition (EF00) , EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 は Linux (8300) を示すパーティションのGUIDです。<
> ※ 一覧は [[https://en.wikipedia.org/wiki/GUID_Partition_Table|Partition type GUIDs : en.wikipedia.org]] をご覧ください。<
> {{{ sudo sgdisk -Z /dev/sdX sync sudo sgdisk -o /dev/sdX sync sudo sgdisk \ -n 1::+300M \ -n 2::: \ -t 1:C12A7328-F81F-11D2-BA4B-00A0C93EC93B \ -t 2:EBD0A0A2-B9E5-4433-87C0-68B6B72699C7 \ /dev/sdX sync sudo mkfs.fat -F32 -n etc10-fat32 /dev/sdXY sync sudo mkfs.ext4 /dev/sdXZ sync ※ ここでシステムが自動マウントして以下のコマンドの実行に失敗するかもしれません。sudo umount を実行してから以下を実行して下さい。 sudo e2label /dev/sdXZ etc10-ext4 sync }}} 1.#2 デバイスファイルの確認 {{{ sudo blkid [省略] /dev/sdb1: LABEL="etc10-fat32" UUID="49DA-1CDC" TYPE="vfat" /dev/sdb2: LABEL="etc10-ext4" UUID="92d02a95-fce6-4f93-9546-d25ba215d8ca" TYPE="ext4" }}} /dev/sdb がUSBメモリーです。<
><
> 1.#3 USBメモリーにGRUB 2をインストール<
><
> 事故防止の為、<
> /dev/sdXY<
> /dev/sdXZ<
> に置き換えます。X ⇒ b , Y ⇒ 1 , Z ⇒ 2 と考えて下さい。<
> {{{ sudo mount /dev/sdXZ /mnt sudo mkdir -p /mnt/boot/efi sudo mount /dev/sdXY /mnt/boot/efi sudo grub-install --efi-directory=/mnt/boot/efi --boot-directory=/mnt/boot /dev/sdX sudo umount /mnt/boot/efi sudo chmod 777 -R /mnt/boot sudo umount /mnt sync }}} USBメモリーを抜き挿しして下さい。<
><
> 1.#4 ISOファイルをUSBメモリーにコピーする。<
> ファイルマネージャーに '''etc10-ext4''' という名前のアイコンが表示されていると思いますのでクリックしてウィンドウを開きます。<
> boot ディレクトリーがありますので開きます。<
> ここに、<
> ubuntu-ja-14.04-desktop-amd64.iso<
> ubuntu-ja-15.10-desktop-amd64.iso<
> および、'''空のファイル'''である isoboot.txt  をコピーします。<
> 1.#5 grub.cfg をUSBメモリーに作成する。<
> '''4.''' の時点で開いている boot ディレクトリー内にある grub ディレクトリーを開きます。 ここで grub.cfg という名前のファイルを作り、下の枠内の内容を grub.cfg へコピー&ペーストして保存します。 {{{ insmod iso9660 insmod part_gpt insmod fat insmod ext2 set dafault=0 set timeout=20 search --file --set rootpart /boot/isoboot.txt menuentry 'ubuntu-ja-15.10-desktop-amd64.iso' { set isofile="/boot/ubuntu-ja-15.10-desktop-amd64.iso" loopback loop ($rootpart)$isofile linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile debian-installer/language=ja keyboard-configuration/layoutcode?=jp keyboard-configuration/modelcode?=jp106 noeject quiet splash -- initrd (loop)/casper/initrd.lz } menuentry 'ubuntu-ja-14.04-desktop-amd64.iso' { set isofile="/boot/ubuntu-ja-14.04-desktop-amd64.iso" loopback loop ($rootpart)$isofile linux (loop)/casper/vmlinuz.efi boot=casper iso-scan/filename=$isofile debian-installer/language=ja keyboard-configuration/layoutcode?=jp keyboard-configuration/modelcode?=jp106 noeject quiet splash -- initrd (loop)/casper/initrd.lz } }}}<
> == rEFInd Boot Manager == GRUB 2をインストールした直後では起動するのですが、USBメモリーを一旦外すとUEFIの起動ドライブ選択画面で認識しないPCがあるようです。(それが普通なのかはわかりませんが。)  これを解決するのが [[https://wiki.ubuntulinux.jp/UbuntuTips/Install/UEFI/rEFInd%20Boot%20Manager|rEFInd Boot Manager : 内部リンク]] です。  対象のUSBメモリーにインストールしておけば手間なしでUSBメモリーに入っているシステムを起動できます。  また他のストレージにWindows10やUbuntu等が入っていたら自動認識されるので便利です。 1. インストール [[http://www.rodsbooks.com/refind/getting.html|The rEFInd Boot Manager : Getting rEFInd]] から '''A binary zip file''' を入手して同ページの '''Tip''' の要領でインストールします。<
> 事故防止の為、<
> /dev/sdXY<
> に置き換えます。X ⇒ b , Y ⇒ 1 と考えて下さい。<
> まず、zip を解凍します。[[https://wiki.ubuntulinux.jp/UbuntuTips/Others/HowToUseTerminal|端末 : 内部リンク]]を開いて、解凍した時に出来たディレクトリーへ移動し {{{ bash install.sh --usedefault /dev/sdXY --alldrivers }}} と入力・実行します。<
> == USBメモリーで再起動 == PCを再起動したらrEFIndのメニューが表示されます。多くのアイコンが表示されている場合は基本的にデフォルトで大丈夫だと思います。デフォルトから変更して選択したい場合はアイコンの下に先に設定したラベル名 '''etc10-fat32''' 等が表示されていますのでこれをもとに選択すると良いです。<
> == ISOファイルを追加したい場合 == ISOファイルを '''4.''' の様にコピーし、 '''5.''' の枠内の様にメニューエントリーを追加すれば良いです。 sudo update-grub では駄目です。   == 内部リンク == [[https://wiki.ubuntulinux.jp/UbuntuTips/Install/UEFI/rEFInd%20Boot%20Manager|rEFInd Boot Manager : 内部リンク]]<
> [[https://wiki.ubuntulinux.jp/UbuntuTips/Others/HowToUseTerminal|端末 : 内部リンク]]<
> == 外部リンク == [[https://help.ubuntu.com/community/Grub2/Installing|Grub2 Installing : help.ubuntu.com]]<
> [[https://help.ubuntu.com/community/MaintenanceFreeCustomGrub2Screen#Making_the_custom_Grub2_Menu_entries|MaintenanceFreeCustomGrub2Screen#Making_the_custom_Grub2_Menu_entries : help.ubuntu.com]]<
> [[http://ubuntuforums.org/showthread.php?t=2097756|Installing Grub2 for EFI and BIOS mode on USB drive : ubuntuforums.org]]<
> [[http://www.rodsbooks.com/refind/|The rEFInd Boot Manager : www.rodsbooks.com]]<
> [[https://en.wikipedia.org/wiki/GUID_Partition_Table|Partition type GUIDs : en.wikipedia.org]]<
>