通过分区中的映像启动 Kali Linux

通过分区中的映像启动 Kali Linux

我想要的是:我想在不触及分区表的情况下多重启动 Windows 10 和 Kali Linux,因此我尝试将 Kali Linux 安装在现有 Windows 分区中的 .img 中。然后我将指示 grub 创建环回并从该映像启动。

我做了什么:因此,为了将 Kali Linux 安装到该 .img 文件,我首先使用 .img 创建了 IMG dd。然后我启动安装磁盘并继续加载fusentfs模块。

然后我打开一个新的终端(Ctrl+Alt+F2)并安装IMG所在的分区。

问题:

  1. 我无法losetup在终端运行
  2. 假设我以某种方式将它安装到 IMG,在 grub 中创建了环回设备,vmlinuz然后加载了它,我认为它无法加载其余的系统文件,因为它需要root=/dev/sdX作为启动参数。那么,我可以以某种方式修改vmlinuzinitrd.img来安装分区并运行losetup,然后读取root=/dev/loopX以加载系统的其余部分

答案1

这就是我实现它的方法:

  1. 开始安装过程
  2. 继续直到“分区磁盘”步骤并点击“返回”
  3. 启动另一个终端 ( Alt+Ctrl+F2) 并挂载存储图像的文件系统(例如在/mnt)。
  4. 运行ln -s /mnt/path/to/image /dev/sdb来欺骗安装系统。
  5. 切换到上一个终端。(Alt+Ctrl+F5在我的例子中)
  6. 从“检测磁盘”步骤继续安装。/mnt/path/to/image应该在那里,选择它。
  7. 将其用作某些文件系统(ext4在我的例子中)并将安装点设置为/,暂时不要选择交换并点击完成。
  8. 像往常一样完成安装。
  9. 现在,重新启动到“Kali Live”并打开终端
  10. 挂载存储图像的文件系统(例如在/mnt)。同时安装镜像,例如:mount -o loop /mnt/path/to/image /myimg
  11. Chroot 进入图像:chroot /myimg
  12. 修改文件/etc/initramfs-tools/modules并添加loop.
  13. 修改/usr/share/initramfs-tools/scripts/local: - 清空当前内容mountroot()并填充:

mkdir /root2 mount -t <type of fs inwhich image is stored> /dev/sdXY /root2 mount -t ext4 -o loop,rw /root2/path/to/image ${rootmnt}

  1. 跑步update-initramfs
  2. 添加 grub 条目:

loopback loop (hdX,Y)/path/to/image linux (loop)/vmlinuz initrd (loop)/initrd.img

  1. 完毕 !!

相关内容