実行中のオペレーティングシステムで起動可能なメディアを作成する

実行中のオペレーティングシステムで起動可能なメディアを作成する

カスタムbashスクリプトとPythonスクリプトを使用して多くのものをカスタマイズし、かなり多くの追加ソフトウェアをインストールしたKali Linuxインストール(VM)があります。
このVMをUSBストレージなどのブータブルメディアに変換できるかどうか疑問に思います。
1つの方法は、永続性オプションを使用してUSBにKaliをインストールして変更を永久に適用することですが、これは非常に多くの作業です!

「これは一般的なISO-USBタイプではありません。インストールされたOSで起動可能なメディアを作成する方法を探しています。」

答え1

はい、できますが、やや退屈なプロセスです。

仮想マシンと一致するパーティションを持つUSBを準備することから始めます。次に、作成したUSBパーティションをマウントしますrsync(コピーしてもユーザーと権限は保持されないため、最初に公開したようにコピーしないでください)。 VM上のすべてのファイルをUSBパーティションにコピーし、/dev /sysおよび/programsのコピーを避けてください。

完了したら、USBパーティションをアンマウントし、/を/mntにマウントします。次に、バインド/dev、/sys、および/procを使用してマウントします。

mount --bind /dev /mnt/dev 
mount --bind /proc /mnt/proc 
mount --bind /sys /mnt/sys

これが完了したら、/ mntにルートを移動します。 /bootがパーティションの場合は、そのパーティションをマウントしてください。

USB UUIDルートパーティションを実行してblkid識別し、/ etc / fstabを編集し、USBルートパーティションのUUID(複数のパーティションがある場合はすべてのマウントポイント)を変更します。

この時点で、新しい/boot/grub/grub.cfgが作成されるようにgrubを更新する必要があります。 chrootedでgrubを更新すると、正しいgrub.cfgが生成されるかどうかはわかりませんが、手動で編集してUUIDを正しいUUIDに置き換えてからUSBから起動して、そこからgrubを更新できます。

これでほぼ完了です。 USBにgrubをインストールするだけです。

grub-install /dev/your-usb-device-here

ルートパーティションがUSBから起動可能に設定されていることを確認してから、USBを試してください。

私が欠けているステップがなかったことを願っています。気になる点があれば教えてください。最善を尽くしてお手伝いします。

関連情報