isoファイルを置くだけでUSBマルチブート「Easy2Boot」
isoファイルからブータブルUSBメモリを作成出来るツールは多々あるが、「Easy2Boot」は作成した領域にisoファイルをコピーペーストするだけでマルチブート可能になる。
公式サイト(英語)以外には解説が見当たらず、またその公式サイトも「Easy2Boot」のダウンロードやインストール方法など、どこに記載があるのか分かりづらかった。
だが使ってみると、配置したisoファイルが自動的にブートメニューに追加されるし、とても便利な代物だった。
Linux環境下でのインストール
まず、DownloadsからEasy2Boot_v1.62.zipをダウンロードして展開。
Linux環境で作業したので、114 - How to make an Easy2Boot (grub4dos) USB Flash drive using linux - RMPrepUSBを参照したが、展開して出て来たフォルダ内にも同様の解説があった。
_ISO/docs/linux_utils/ReadMe_fmt.sh.txt
(Windows用の解説は_ISO/docs/Make_E2B_USB_Drive/ReadMe.txt)
linux_utilsフォルダ内で端末を開き、フォルダ内のすべてのファイルのパーミッションを777に変更。
sudo chmod 777 *
その後fmt.shを実行。
sudo ./fmt.sh
インストール先を聞かれるので、OKなら「y」。
違う場合は「n」の後、自分で指定。
(外付けHDDにもインストール可能で、また2番目以降のパーティションにもインストール出来る。)
フォーマットして良いか聞かれるので、良ければ「y」。
指定したパーティションに「Easy2Boot」がコピーされ、ブートローダーがインストールされる。
起動とデフラグ
使い方は至って簡単で、_ISO内の空いてるフォルダ(LINUXやWINなど)にisoファイルを追加するだけ。
今回は_ISO/LINUX内にLxPup-15.02.1-s-nopae.isoを、_ISO/BACKUP内にclonezilla-live-2.1.2-43-i686-pae.isoを配置した。
ブートすると、LxPupは起動出来たが、clonezillaは「ファイルがcontiguous(隣接)じゃない」と言われ、上手く起動出来なかった。
どうやら断片化しているからデフラグが必要ということらしい。
isoファイルから直接ブートする際には、ちょっとした断片化でも起動出来ないようで、「Easy2Boot」ではいろいろ対策が用意されている。
defragfs.pl(_ISO/docs/linux_utils内)やWINCONTIG(_ISO/docs/内)の他、特にLinuxユーザーの為に_ISO内にCONTIG.ISOというファイルが同梱されている。
CONTIG.ISOは、isoファイルに断片化があった際に自動的にデフラグ操作を行うためのものらしい。
サイズが500MBに設定されていて、Easy2Bootインストール直後の状態でのほとんど全ての容量にあたる。
clonezillaが上手く起動出来なかったのもフリーズしていた訳ではなく、CONTIG.ISOがデフラグ操作を行っていたのかもしれない。
ただかなり時間が掛かるようだし、サイズが500MB以上のisoファイルをデフラグするためには、CONTIG.ISOもそれ以上のサイズにリサイズしておく必要があるようだ。
CONTIG.ISOを使わないのであれば、削除してしまっても良いとのこと。
defragfs.plはなぜか機能しなかったが、Windows用のWinContigでデフラグしたらclonezillaも起動出来るようになった。
WinContigはWindows 7を起動して使用したが、Windows PE(Windows プレインストール環境)やHiren’s BootCDの「Mini Windows Xp」など、Windows環境を提供するisoファイルをEasy2Bootに入れておけば、Easy2BootによるブートでWinContigを利用出来そうだ。
フォーマットをNTSFにする(不要かも)
4GBを超えるファイルを利用するためには、Easy2Boot領域をFat32ではなく、NTSFもしくはext3、ext4にしておく必要があるが、なるべくなら4GB以上のisoファイルも扱いたい。
Easy2Bootインストール時に領域がFat32にフォーマットされてしまうが、_ISO/docs/linux_utils内のfmt.shファイルの131行目の
/sbin/mkfs.vfat -F32 -n "$label" $device
を
/sbin/mkfs.ntfs -n "$label" $device
に変更することでNTSFにすることが出来た。
後からファイルを保持したままFat32をNTSFに変換することも可能のよう。
(その後は結局Fat32でフォーマットしたものを使っている。Fat32のままでも良いかも。)
よく分からないトラブル
外付けHDDではこれで上手く行ったが、USBメモリではEasy2Bootを起動しようとしたら、「パーティションのlast sectorをチェックしている」という内容の表示のまま止まってしまった。
そのまま電源を落とさずUSBメモリを一旦抜き、再度挿入して”continue”。
ブートメニュー画面で”Install Grub4dos…”を選択したら、その後は起動出来るようになった。
理由はよく分からないが、使用したUSBメモリの特性やインストール方法などにもよるのかもしれない。
感想
以上、少しややこしかったが、配置するだけで(正確にはデフラグの必要があったりするが)isoファイルを直接起動出来る「Easy2Boot」はかなり優秀なツールだ。
Linuxディストリビューションを試してみたい時にもDVD-RWなどに焼く必要が無くなる。
またClonezillaでシステムのバックアップを取る時にも、外付けHDDの先頭パーティションをEasy2Boot領域としてClonezillaを入れ、2番目のパーティションにバックアップするようにすれば、Clonezillaのlive-CDが不要になる。live-CDに較べて起動も早い。
導入がもう少し簡単だったらとは思うが、とても便利なので試して損は無いと思う。
ーー
(追記)
Windowsの場合はRMPrepUSBを使って、もっと簡単にEasy2Bootをインストール出来るようだ。