我实际上是在尝试将 Kali 安装到 USB 驱动器。我不是制作有/没有持久性的实时 kali,而是将 kali 实际完整安装到 USB 驱动器上。
Live usb 对我来说有点太局限了,我通常在 ubuntu 上工作,我想我可以切换到 Kali 并结束它。
现状描述
我的 macbook pro 已经有了 Windows 10 和 mac os X 的双启动。我正在尝试创建一个 usb kali 安装,它将被 mac 引导加载程序识别。
我打算安装 Kali 的方法是设置一个 Vbox 以使用物理硬盘驱动器 (usb) 作为主磁盘,然后将 kali live 安装到虚拟 CD 并将其直接安装到棒上。
效果很好。
问题
问题是默认情况下 grub 将安装到 MBR,而最新版本的 macbook 似乎不喜欢这个(当我使用选项启动时,我从未在其他分区旁边看到 USB)。我想我需要某种 EFI 兼容性/配置,但不太确定如何从这里开始。
我在网上找到的大部分信息都是关于制作 live usb 而不是实际安装的。似乎有一种在主机上使用 rEFInd 的方法,但我正在寻找一种可以使我的 usb 在任何设备上启动的选项。
任何帮助,将不胜感激。
回答我自己的问题。
简短的回答是,最近的 macbook 专业人士(至少 2017 年及以上)期望在 USB 开头有一个 ESP(FAT32)分区,文件位于
/EFI/boot/bootx64.efi
(如果您在这里遇到类似问题但不是在mac。此答案的其余部分将假设为 x64)。奇怪的是,Kali 安装不包含此路径上的文件,而是将其放在/EFI/kali/kalix64.efi
. 这很奇怪,因为安装的 Kali 包含/boot/efi/EFI/boot/bootx64.efi
在旁边/boot/efi/EFI/kali/kalix64.efi
.. 想知道为什么它不直接将它从一开始就包含到正确的分区中。还有一些其他注意事项,下面是基本的演练。我使用 VirtualBox,因为默认情况下不支持内部键盘、触摸板和 wifi,因此直接安装需要 2 个 USB 驱动器,并且至少需要一个外部键盘或自定义构建的 kali 安装程序,与 VirtualBox 相比,这两者工作量太大为了我:
sudo VirtualBox
Settings > System > Enable EFI
检查,这是强制性的。在 中设置您的 USB ,并在虚拟 CD中设置您Ports
的 kali 安装 ISOStorage
entire device
你的USB。它会问你是否要重新格式化分区表(或类似的东西)说是。之后选择可用空间并执行推荐的安装。您现在应该有 3 个分区(ESP、ext4、swap)。如果您仔细检查 ESP 分区,它应该是一个 EFI 可引导分区(我看到的默认设置,但值得仔细检查)现在,在 kali 中,我们将修复引导并为您的 macbook 安装缺少的驱动程序:
sudo update-grub
。由于某种原因,安装grub.cfg
文件包含设备路径而不是 UUID。可能是因为实时 grub 配置。这将修复它并防止您看到 grub 但随后无法找到正确的分区和文件路径的恼人问题fdisk -l
。您正在寻找一个 200-250MB 的 fat32 分区,应该是您 USB 上的第一个分区。一旦你有/dev/sd{x}{#}
继续下一点。/dev/sdb1
(如果您遵循上述 VM 配置,则可能会)mount /dev/sd{x}{#} /mnt
(根据需要替换 {x},{#})ls /mnt/EFI/kali/
应该给你看一个kalix64.efi
文件。只需创建一个新的引导文件夹并在重命名时复制此文件:option
按下按钮