centos.ipxe 1.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374
  1. #!ipxe
  2. # CentOS Operating System
  3. # http://www.centos.org
  4. goto ${menu} ||
  5. :centos
  6. clear osversion
  7. set os CentOS
  8. set ksdevice eth0
  9. menu ${os} ${arch}
  10. item 7.2.1511 ${os} 7.2
  11. item 7.1.1503 ${os} 7.1
  12. item 7 ${os} 7.0
  13. item 6.7 ${os} 6.7
  14. item other Choose other version [o]
  15. isset ${osversion} || choose osversion || goto linux_menu
  16. iseq ${osversion} other || goto centos_skip_read_osversion
  17. echo ${cls}
  18. echo -n Enter version: ${} && read osversion
  19. :centos_skip_read_osversion
  20. iseq ${osversion} 6.7 && set dir ${menu}/${osversion}/os/${arch} ||
  21. set dir ${menu}/${osversion}/os/x86_64
  22. set repo http://${mirror}/${dir}
  23. goto boottype
  24. :boottype
  25. set ova ${os} ${osversion}
  26. menu ${os} ${arch} boot type
  27. item graphical ${ova} graphical installer
  28. item text ${ova} text based installer
  29. item rescue ${ova} rescue
  30. item kickstart ${ova} set kickstart url [ ${ksurl} ]
  31. item kickstart_device ${ova} set ksdevice [ ${ksdevice} ]
  32. isset ${bt} || choose bt || goto centos
  33. echo ${cls}
  34. iseq ${bt} text && goto text ||
  35. iseq ${bt} rescue && goto rescue ||
  36. iseq ${bt} kickstart && goto kickstart ||
  37. iseq ${bt} kickstart_device && goto kickstart_device ||
  38. goto bootos_images
  39. :text
  40. set params text ||
  41. goto bootos_images
  42. :rescue
  43. set params rescue ||
  44. goto bootos_images
  45. :kickstart
  46. echo -n Specify kickstart URL for ${os} ${osversion}: && read ksurl
  47. set params ks=${ksurl} ksdevice=${ksdevice} ||
  48. clear bt
  49. goto boottype
  50. :kickstart_device
  51. echo -n Specify ksdevice param for ${os} ${osversion}: && read ksdevice
  52. set ksdevice ${ksdevice} ||
  53. clear bt
  54. goto boottype
  55. :bootos_images
  56. imgfree
  57. kernel http://${mirror}/${dir}/images/pxeboot/vmlinuz repo=${repo} ${params} ${netcfg}
  58. initrd http://${mirror}/${dir}/images/pxeboot/initrd.img
  59. boot
  60. goto linux_menu
  61. :linux_menu
  62. clear menu
  63. chain linux.ipxe
  64. exit 0