如何为 tails OS 创建 PXEboot?

如何为 tails OS 创建 PXEboot?

我有一台只能从 DD 或网络启动的 PC。它是标准 BIOS(不是 UEFI)。我已成功设置 PXE 启动基础架构,并且能够在 PC 上安装不同的基于 Debian 的操作系统。

对于 Tails,我无法使其工作。

我已尝试从.isoTFTP 服务器提取一些文件并添加以下内容pxelinux.cfg/default

label 3
menu label ^3) Install Tails OS
kernel tails/vmlinuz
append  initrd=tails/initrd.img

当我启动电脑时,Tails 告诉我它无法初始化root device is missing

我还尝试使用.imgusbdisk 文件和以下配置:

label 4
menu label ^4) Install Tails OS img
kernel memdisk
append  initrd=tailsimg/tails.img

这次启动更进一步。我可以看到尾部页面,但随后它停滞并指示他无法找到具有活动实例的介质。

答案1

您不能在启动过程中切换到保护模式的目标上使用 memdisk 方法,这会排除很多目标。

为了启动 Tails,您可以看看 Serva 做了什么这里, 基本上:

;-Serva v3.0 Asset Information File
;-Boot/Install:
;  Tails Linux Live
;-Tested on: 
;  tails-amd64-4.7.iso
;  tails-amd64-4.5.iso
;  tails-amd64-4.4.1.iso

[PXESERVA_MENU_ENTRY] asset    = Tails Live 4.7 platform = amd64

kernel_bios    = /NWA_PXE/$HEAD_DIR$/live/vmlinuz 
append_bios    = initrd=/NWA_PXE/$HEAD_DIR$/live/initrd.img,/NWA_PXE/$HEAD_DIR$/live/INITRD_N26.5.GZ boot=live config live-media=removable nopersistence noprompt timezone=Etc/UTC block.events_dfl_poll_msecs=1000 noautologin module=Tails slab_nomerge slub_debug=FZP mce=0 vsyscall=none page_poison=1 init_on_alloc=1 init_on_free=1 mds=full,nosmt fetch=http://$IP_BSRV$/NWA_PXE/$HEAD_DIR$/live/filesystem.squashfs ipby=dhcp ro ipv6.disable=1   
ipappend_bios  = 2

kernel_efi64   = /NWA_PXE/$HEAD_DIR$/live/vmlinuz 
append_efi64   = initrd=/NWA_PXE/$HEAD_DIR$/live/initrd.img,/NWA_PXE/$HEAD_DIR$/live/INITRD_N26.5.GZ boot=live config live-media=removable nopersistence noprompt timezone=Etc/UTC block.events_dfl_poll_msecs=1000 noautologin module=Tails slab_nomerge slub_debug=FZP mce=0 vsyscall=none page_poison=1 init_on_alloc=1 init_on_free=1 mds=full,nosmt fetch=http://$IP_BSRV$/NWA_PXE/$HEAD_DIR$/live/filesystem.squashfs ipby=dhcp ro ipv6.disable=1 
ipappend_efi64 = 2

如您所见,Serva 提供了一个附加的 initrd (INITRD_N26.5.GZ),其中包含组件和脚本,以便正确地进行 PXE Tails。提供的信息适用于 4.7 版,对于较新的版本,您必须尝试查看是否需要新版本的附加 initrd。

如果你不使用 Serva,你可以轻松地将提供的行适配到你的 Pxelinux 或 Grub 环境

相关内容