如何查明系统是否从以下位置启动PXE或来自本地硬盘或来自任何可移动媒体?
我想为一个系统编写 initramfs,该系统的功能会根据其启动方法而有所不同。
答案1
我将使用内核命令行(可在 /proc/cmdline 获取)。
如果 PXE 与本地 HDD(grub、lilo、extlinux)尚未不同,则 PXE 服务器可以添加本地 HDD 引导中永远不会出现的额外参数。此外,HDD 引导加载程序可能会引入可移动媒体引导程序中不会出现的参数。
当然,如果您试图检测故意的未经授权的引导方法,这将不起作用,因为攻击者只会添加匹配的引导参数,或者只是修改 initrd。