スッっと懐から出せるLinux USBを作る

いつか使える場面が来るといいなぁ。


この記事はQiita全国学生対抗戦 Advent Calendar 2025の21日目の記事です。

スマートなUSB

みなさん、もし懐にいつでもLinuxが動かせる環境があったら安心しますよね。
今回は、いろいろなLinuxディストリビューションのインストーラーと、Super GRUB2 Diskと、ついでにDebianの環境をデュアルブートできるUSBメモリを作ってみようと思います。

材料

  • セットアップ用のPC(ここではDebian)
  • USBメモリ(128GB)

構想

世の中には、Ventoyという、いろいろな起動可能ISOファイルなどをUSBメモリにコピーするだけでデュアルブートできるとても便利なソフトウェアがあります。今回はこれを使って、各種ディストリビューションのインストーラISOファイル、Super GRUB2 Disk、そしてDebianの環境をデュアルブートできるようにしていきます。

補足: Super GRUB2 Diskとは?

Super GRUB2 Diskというものは、その名の通りスーパーなディスクで、ブートローダーが壊れたり、インストールされていなかったりするOSを起動することができます。
つまりは、あらゆるGRUB2ブートローダーの代わりになり得ます
例えば、WindowsとLinuxをデュアルブートしているときに、Windows Updateによってブートローダーが破壊されてしまった時や、OSのインストールに失敗してブートローダーが使えなくなってしまった時などに使えます。

このディスクがあれば、initramfsさえあれば起動できるので、常備しておくととても便利でしょう。なので、今回はVentoyにISOイメージとして入れておき、ブートできるようにします。

なお、起動する対象が必ずしもLinuxである必要はなく、Windowsなどからの起動にも対応していますし、元々GRUB2がインストールされていた場合、そのGRUB2のメニューを自動でインポートする機能もあります。
他にも、Super GRUB2 Diskはいろいろと多機能なので、ぜひ試してみてください。

4月1日の(野暮な?)注意(仕事などでSuper GRUB2 Diskを使う人など向け)

実はSuper GRUB2 Diskには、BIOSの日付が4月1日になっていると、エイプリルフールの嘘として、すべてのファイルを削除するような演出を表示しだします。
びっくりするかもしれませんので、ここでおすすめする以上、一度警告はしておきますね。

実践

VentoyをUSBメモリにインストール

兎にも角にも、Ventoyをインストールしなければ何も始まりません。リンク先から、ventoy-*-linux.tar.gzをダウンロードして、適当なところに展開しておきます。

他にダウンロードできるファイルに、ventoy-*-livecd.isoがありますが、そのまま書き込むことでVentoyがインストールされる訳ではありません
今回は、既に使用可能なLinux環境があるので使いません。

展開したら、VentoyGUI.x86_64を実行します。中でpkexecが走るので、必要に応じて認証します。実行するとGUIのインターフェースが起動します。
ここで、ディスク選択とInstallボタンに目が行きがちですが、その前にメニューバーからOption -> Partition Configurationを選択し、Preserve some space at the end of the diskにチェックを入れ、100GB程度を指定しておきます。
これは、後々インストールするDebian環境のためのマージンなので、当たり前ですが、USBが128GBなら、合計で約128-100=28GBのISOファイルをデュアルブートできるようになります。(もちろん、EFIファイルやFSの都合により、これよりも少なくなります。)必要に応じて調整しましょう。

Partition Configurationができたら、Deviceを適切なものに設定して、Installを押します。Ventoy In DeviceにVentoyのバージョンが表示されていたら成功です。

自分の欲を詰め込む

Ventoyのインストールができたら、対象のUSBメモリにVentoyパーティションができているはずです。そのパーティションをマウントして、そのままその/にISOファイルを配置します。

私は、Ubuntu, Debian, Kali Linuxを入れておきました。
また、ここでSuper GRUB2 DiskのISOファイルを配置します。super-grub2-disk-*-multiarch.isoを入れておけばよいでしょう。

なお、ファイル名については自由に変更できて、起動時の選択画面にそのまま表示されます。自由にカスタマイズしましょう。
(ASCII文字以外も使えそうです。試した所、漢字も入りました。)

必ずしもこうする必要はありませんが、今回はUSBに直接インストールするDebian環境のためのインストールISOもVentoyから起動することにします。DebianのISOは入れておきましょう。

USBメモリから自分自身にDebianをインストール

パーティションにいろいろなISOファイルを入れてしまえば、あとはそのまま再起動してUSBメモリから起動することができます。
USBメモリから起動すると、配置したISOファイルが一覧で出てくるので、DebianのISOファイルを探してブートしましょう。サブメニューでモード選択ができますが、通常はnormal modeでいいでしょう。

DebianのISOファイルからブートすれば、いつものDebianインストーラが出てきてくれます。ここではpatitionerでの設定方法のみ少しだけ解説しますので、それ以外はお好みで進めてください。ただし、USBメモリは遅いので、GUI環境はおすすめしません。

partitionerでの設定については、基本的に手動で設定することになります。USB内にext4/btrfs/お好みのFSのパーティションを作って、/にマウントさせましょう。
Swapパーティションについては、設定してもしなくても大丈夫ですが、数GBほど確保しておくのが安牌でしょう。

インストールを進めると、勘違いしたインストーラが関係のないディスクにGRUB2を上書きインストールしてしまうことがあります。
その状態では、USBを抜くとセットアップに使ったPCを起動できなくなってしまうので、インストールが終わったら、再起動して元から入っていたOSを起動し、手動でgrub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id=debianをするとよいでしょう。
なお、その状態では、インストーラがUSBにGRUB2をインストールしていない以上、そのままでは起動できないと思われるかもしれませんが、それは違います。なぜなら、USBメモリにはSuper GRUB2 Diskが入っており、これがブートローダーの代わりとなってくれるからです。

インストールが終わったら、再起動してからUSBメモリから起動し、Super GRUB2 Diskを用いてUSB内のDebian環境でブートしましょう。
Super GRUB2 Diskにブートしたら、Boot manually...メニューを選択して、Linuxを選択します。すると、「そのPCで起動できるすべてのLinuxカーネル」が表示されるので、先程インストールしたDebianを選択します。
ここで、もともとPCに入っていたOSを間違えて選択しないよう、注意しましょう。(もちろん、選択したらそれが起動します。)
うまく行けば、USBメモリに入っているDebianが起動してくれるはずです。お好みにカスタマイズしましょう。

このUSBメモリにはVentoyとSuper GRUB2 Disk以外のブートローダが入っていないので、基本的にはこのようにSuper GRUB2 Diskを介して起動することになります。

懐にUSBメモリを入れる

ここまでの作業をすれば、いつの間にか「Linuxディストリビューションのインストールメディア」「Debian環境」がデュアルブートでき、更に既存のブートローダーの役目を肩代わりすることもできるUSBメモリが完成しています。
学校や職場で困っている人がいたり、Linuxに興味を持った人がいたりしたら、このUSBメモリをスマートに懐から出し、そっとインストールメディアを起動してあげましょう。
え?インストールしたLinuxで問題が発生した?それならこのUSBメモリに入っているDebianを起動して、手動でレスキューしてあげましょう。
ブートローダーが壊れただけなら、そのままSuper GRUB2 Diskを使って直接該当OSを起動することもできます。
レスキューに成功した時、その知り合いからは尊敬されるでしょう!(※効果には個人差があります。)

余談

なぜわざわざVentoyとSuper GRUB2 Diskを併用したのか

実は、Super GRUB2 Diskをそのまま(Ventoyを介さずに)書き込むと、SG2DISOSというパーティションができるのですが、そこにブータブルなISOを入れておくと、Ventoyと同じようにそこから起動できるらしいのです。
これがなぜ断定できないのかと言うと、筆者がその機能を動かせなかったからです。
というのも、そのパーティションはFAT32なので、1ファイルあたりの容量制限の問題で、普通のISOファイルはまず入りません。exFATやext4などでフォーマットしてそこにISOファイルを配置しても、筆者の環境では一覧に表示されませんでした。
そこで、いっそのことSuper GRUB2 DiskをVentoyの上で起動させてやれば、Super GRUB2 Diskの恩恵も、ISOファイルからの起動という恩恵も、2つとも享受できるというわけです。
なお、VentoyのTested ISOページでは、Super GRUB2 Diskの起動が既にテスト済みであるという記述がありました。
既にこのような構成を試した人がいたのですかね。世界は広い......!


コメント

まだ誰もコメントしていません。

投稿する

コメント掲載にはokaits#7534による承認・掲載作業が必要です。

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.