USBメモリのフォーマット無しに、たった一つのファイルをコピーするだけでブート出来るLinux
singlefilelinuxとか名前を付けてみたが、新しいディストリを作ったり新しいツールを作ったりしたのではなく、単にGentooのLiveCDを単一のカーネルイメージに埋め込んでブート可能にしただけである。
使い方は以下の通り:
- bootx64.efiをダウンロードする
- USBメモリにEFI\BOOT\ディレクトリを作ってそこにコピーする
- USBメモリを刺してPCを再起動。起動してこない時はブートオーダをUEFIの設定画面で変更、USBディスクを優先にする
これで普段データを入れておく用のUSBメモリからデータを消すことなくLinuxのインストールをしたり、壊れたbtrfsの復旧作業が出来るようになった。
なお、UEFI専用なので当然のことながらUEFI非対応のPCでは使えない。
また、UEFIはexFATに対応していないので32GBを超える容量のUSBメモリでこれを使う事は難しい(デフォルトでexFATでフォーマット済みだし、FAT32は32GB以上の容量をサポートしないし、UEFIはNTFSやext3などにも対応していないため)
ちなみにGentooにしたのはLiveCDのイメージサイズが小さくてsystemdじゃなかったので簡単そうだったから、というだけの理由で、Ubuntuや他のディストリだと出来ないということではありません。
イメージのビルドの仕方はGithubを参考にして下さい。
他のディストリ対応試してくれる人が居るとうれしいな。
追記:当然ながらsecurebootとは共存出来ない…