我们已经向您展示了如何网络引导Ubuntu LiveCD。在本文中,我们将展示如何使其他实用程序网络可启动,这将使您了解如何为您可能使用的其他实用程序复制过程。
注意:这篇文章不适合初学者,尽管欢迎您继续阅读!
史蒂夫·朱维森摄
本指南旨在为您提供工具,您将能够转换实用程序,使其可PXable。不幸的是,在太阳下,我们无法转换任何工具,如果我们不至少尝试,我们就不会是极客。
正如“如何网络引导(PXE)的ubuntulivecd”指南中提到的,如果你还没有使用Ubuntu作为你的头号故障排除、诊断和救援程序工具,你还在等什么呢?
话虽如此,你必须承认有些事情在ubuntulivecd中根本做不到(比如BIOS升级),或者你已经在使用一个你喜欢的不同的工具,无论出于什么原因,你都宁愿继续使用它。
为什么不在PXE上使用ISO?
这往往是第一个问题时,问一谈PXEing。简单的回答是,虽然从技术上讲,可以将ISO映像和PXE映像传送到客户机,但几乎总是所说的ISO的内容,将期望在物理CDROM驱动器中可以访问其自身的物理表现。因此,无论上述ISO的内容是什么,它都会试图在客户机的物理CDROM驱动器中查找“引导后扇区”文件,但找不到这些文件,并且无法引导。
克服这一问题的两种方法是:
由于上述两种方法都无法实现“仅使用ISO”的目标,因此我们不建议继续进行这项工作。
核方法
虽然非常罕见,但有时您尝试引导的程序可能只需要一个内核就可以运行。一个典型的例子是“memtest86+”。Memtest与大多数Linux发行版安装cd和FOG捆绑在一起。因为Memtest只需要能够与被测硬件的最基本功能,即内存(RAM)进行通信,并且可以正常工作,甚至不完全支持它运行的硬件(即它将测试内存,即使它不知道它的类型、速度和容量);它不需要其他任何东西,可以完全自主地工作。
memtest的PXE菜单项看起来很简单:
LABEL Run Memtest86+ kernel fog/memtest/memtest append -
在本例中,“LABEL Run Memtest86+”设置条目的名称,“kernel fog/memtest/memtest”告诉PXElinux从何处获取将发送到客户机的内核,“append–”告诉PXElinux忽略*继承的其他引导选项。
*注意:根据您的设置,这甚至可能不是必需的,实际上在雾中它不被使用。
Kernel+Initrd方法
由于以下几个原因,这种方法是迄今为止最常用和广泛传播的方法:
让我们以UBCD的CPUstress实用程序为例。
在UBCD文件结构中,此实用程序位于目录“UBCD/boot/cpustress”中。我们要查找的文件称为“bzImage”,它是“内核”,并且初始化rd.gz这是“初始ram磁盘”。如果您使用的是我们创建的FOG设置,建议您复制“/tftpboot/howtogeek/utils”下的目录。完成后,编辑“/tftpboot/howtogeek/菜单/实用程序.cfg“文件并将UBCD菜单项上的启动项添加到其中。这可以在“ubcd/menus/syslinux”中找到/中央处理器.cfg”. 通过调整雾设置,菜单项应如下所示:
MENU LABEL StressCPU V2.0 (requires CPU with SSE) TEXT HELP Torture-test your CPU in order to make sure that you don't have overheating problems. Requires SSE-equipped x86 CPUs. Executes a special version of the Gromacs innerloops that mixes SSE and normal assembly instructi*** to heat your CPU as much as possible. ENDTEXT KERNEL howtogeek/utils/cpustress/bzImage INITRD howtogeek/utils/cpustress/initrd.gz APPEND root=/dev/ram0 ramdisk_size=12000 noapic ubcdcmd=stresscpu2
哪里:
需要注意的几点是:
虽然这是一个非常简单的例子,但它应该足以让您继续。
Kernel+Initrd+NFS方法
这个方法,就是我们在《如何网络引导(PXE)ubuntulivecd》指南中使用的方法。这种方法建立在前一种方法的基础上,并利用了一些Linux发行版支持从NFS挂载其“根文件系统”的事实。Ubuntu指南是一个很好的例子,但请放心,我们已经为不久的将来计划了另一个。“睁大眼睛看黑蘑菇”。
MEMDISK方法
MEMDISK是随Syslinux包分发的实用程序。此实用程序的目的是使您能够使用“磁盘”(主要指软盘)的映像来模拟它。这个实用程序的工作方式是连接到RAM中指定如何与软盘驱动器通信的位置(也称为中断处理程序),并将其指向MEMDISK程序处理的新位置。使用此方法,“kernel”是MEMDISK实用程序,“initrd”是软盘映像(.img)文件。
需要注意的一点是,FOG附带了一个“memdisk”版本,该版本与它使用的pxelinux.0版本兼容。因此,建议不要从源位置复制“img”文件附带的“memdisk”文件。
由于这种方法已经被广泛使用,甚至对于常规的实用程序和BootCD,大多数情况下,只需在BootCD上找到“IMG”文件,将其复制到PXE的服务器TFTPD目录,并将ISOlinux菜单项复制到PXElinux菜单。他们说“谈话是廉价的”,那么让我们看看我们如何适应其中一个使用UBCD中的MEMDISK方法的实用程序,以在PXE中工作。
TestMemIV实用程序可以在UBCD文件结构的“UBCD/images/testmem4”中找到。img.gz公司”. 由于我们已经有了memdisk磁盘实用程序,只需将“img”文件复制到“howtogeek/utils/”目录。通过调整雾设置,菜单项应如下所示:
MENU LABEL TestMemIV TEXT HELP Tests system memory and memory on Nvidia video cards. ENDTEXT LINUX memdisk INITRD howtogeek/utils/testmem4.img.gz
虽然这是一个来自UBCD的自包含软盘映像文件的示例,但大多数其他UBCD程序都使用相同的基本映像开始工作(fdubcd.img.gz)并使用“ubcdcmd”附加参数从CDROM启动后自动启动程序。这意味着如果没有一些主要的反向工程,您将无法将它们的大多数实用程序转换为网络可引导的。虽然这样的逆向工程是可能的(如图所示),是一个优秀的极客练习,但它超出了本指南的范围。
有了上面所说的,您现在有了工具来为那个深奥的OEM诊断或BIOS升级实用程序执行这个过程。
所以,锁在血之门之外,经过火之殿,勇敢的等待着光之英雄的觉醒…
...cOS一样。在大多数情况下,你可以解决这个问题。下面是如何修复Ubuntu启动问题。 ...
... 如何使用win10xpe创建自己的windows pe恢复光盘 ...
...被称为瘦客户机,Raspberry Pi非常适合这项工作。下面介绍如何使用Raspberry Pi瘦客户端访问远程Windows桌面。 ...
...性。下面是要注意的内容,为什么这些功能很有用,以及如何开始充分利用它们。 ...
...导。这就是“钥匙环”的想法发挥作用的地方。 相关:如何创建一个可引导的Linux USB闪存驱动器,简单的方法 MBRTool是一个安装程序,所以您需要将它安装到PC上,然后使用新安装的应用程序创建可引导闪存驱动器。 为了将Hiren...
...创建DOS可引导软盘驱动器,但不能创建USB驱动器。下面是如何绕过这个问题。 相关:您需要更新计算机的BIOS吗? DOS可能是过去的遗存,但您不知道从阅读**商为BIOS更新、固件更新实用程序和其他低级系统工具编写的指令。它们...
...分区上的引导扇区可能已损坏、损坏或丢失文件。下面是如何解决这些问题。 什么是引导扇区和主引导记录(the boot sector and master boot record)? 相关:分区驱动器时GPT和MBR有什么区别? 引导扇区是硬盘开头的一小部分,在格式化...