在研究网络装机的过程中,菜菜地被Syslinux、SYSLINUX和PXELINUX这些定义折磨了一下
它们有什么区别和联系?为什么配置PXELINUX要安装的是Syslinux而不是Pxelinux?最后在Syslinux Wiki里找到了答案。
Syslinux是一个Project,包含以下bootloader:
1. SYSLINUX, for MS-DOS FAT filesystems
2. PXELINUX, for network booting
3. ISOLINUX, for bootable "El Torito" CD-ROMs
4. EXTLINUX, for Linux ext2/ext3/ext4 or btrfs filesystems
5. MEMDISK, for legacy operating systems (such as DOS) from nontraditional media
网络启动使用的自然是PXELINUX了,而我们下载的release安装包是整个Syslinux Project,所以网络装机需要用到的pxelinux.0是yum install syslinux获得的。
还有个很眼熟的ISOLINUX,这个在系统安装光盘里可以找到,而网络装机所需要的pxelinux.cfg/default就是拷贝isolinux.cfg直接生成的。之所以可以这么任性地改个名字就用,是因为对于所有的Syslinux bootloader,其基本配置是相同的(这个可以在Syslinux wiki里看到介绍,配置可以参考“SYSLINUX中文介绍”)。