centos.ipxe 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  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. iseq ${manufacturer} Xen && set netcfg ip=${netX/ip} netmask=${netX/netmask} gateway=${netX/gateway} dns=${dns} ||
  10. menu ${os} ${arch}
  11. item 7.1.1503 ${os} 7.1
  12. item 7.0.1406 ${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. set dir ${menu}/${osversion}/os/${arch}
  21. set repo http://${mirror}/${dir}
  22. goto boottype
  23. :boottype
  24. set ova ${os} ${osversion}
  25. menu ${os} ${arch} boot type
  26. item graphical ${ova} graphical installer
  27. item text ${ova} text based installer
  28. item rescue ${ova} rescue
  29. item kickstart ${ova} set kickstart url [ ${ksurl} ]
  30. item kickstart_device ${ova} set ksdevice [ ${ksdevice} ]
  31. isset ${bt} || choose bt || goto centos
  32. echo ${cls}
  33. iseq ${bt} text && goto text ||
  34. iseq ${bt} rescue && goto rescue ||
  35. iseq ${bt} kickstart && goto kickstart ||
  36. iseq ${bt} kickstart_device && goto kickstart_device ||
  37. goto bootos_images
  38. :text
  39. set params text ||
  40. goto bootos_images
  41. :rescue
  42. set params rescue ||
  43. goto bootos_images
  44. :kickstart
  45. echo -n Specify kickstart URL for ${os} ${osversion}: && read ksurl
  46. set params ks=${ksurl} ksdevice=${ksdevice} ||
  47. clear bt
  48. goto boottype
  49. :kickstart_device
  50. echo -n Specify ksdevice param for ${os} ${osversion}: && read ksdevice
  51. set ksdevice ${ksdevice} ||
  52. clear bt
  53. goto boottype
  54. :bootos_images
  55. imgfree
  56. kernel http://${mirror}/${dir}/images/pxeboot/vmlinuz repo=${repo} ${params} ${netcfg}
  57. initrd http://${mirror}/${dir}/images/pxeboot/initrd.img
  58. boot
  59. goto linux_menu
  60. :linux_menu
  61. clear menu
  62. chain linux.ipxe
  63. exit 0