Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
wiki:qemupxeknifehttp [2009/05/23 10:31] less1 |
wiki:qemupxeknifehttp [2009/05/23 13:59] (current) less1 |
||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== Get PXE Knife working with QEMU over HTTP ====== | + | ====== Get PxeLinux and PXE-Knife working with QEMU over HTTP ====== |
- | I am taking similar approach as I took for TFTP for which QEMU + PXE Knife combination is working if I use qemu TFTP stack. | + | Note : use latest version of Pxelinux to work over HTTP, for me version 3.80 worked. |
- | Here are the things that are working for me. | + | |
- | <code> | + | |
- | qemu -net nic -net user -fda ./gpxe.dsk -bootp /pxelinux.0 -tftp /home/myname/for_pxe_knife/ | + | |
- | </code> | + | |
- | which boots pxe-knife over tftp and | + | |
- | <code> | + | |
- | qemu -fda gpxe.dsk -net nic -net user -bootp http://10.0.0.2/gpxe/gtest.gpxe | + | |
- | </code> | + | |
- | boots gtest.gpxe which is copy of [[http://etherboot.org/gtest/gtest.gpxe]].\\ | + | |
- | But when I try and use HTTP with qemu over pxe_knife which is based on __pxelinux__, | + | Following is the way to run Pxe-knife (or any pxelinux based system) over http. |
- | it does not work. | + | |
<code> | <code> | ||
qemu -fda gpxe.dsk -net nic -net user -bootp http://10.0.0.2/pxeknife/pxelinux.0 | qemu -fda gpxe.dsk -net nic -net user -bootp http://10.0.0.2/pxeknife/pxelinux.0 | ||
</code> | </code> | ||
- | It loads pxelinux.0 successfully, but fails in loading //pxeknife/default// file with error | ||
- | <code> | ||
- | TFTP prefix: http://10.0.2.2/ | ||
- | Trying to load: pxelinux.cfg/default | ||
- | Unable to locate configuration file | ||
- | Boot failed: press a key to retry, or wait for reset... | + | or you can boot the online version of PXE-Knife using following command. |
+ | <code> | ||
+ | qemu -fda gpxe.dsk -net nic -net user -bootp http://alien.doesntexist.org/pxeknife/pxelinux.0 | ||
</code> | </code> | ||
==== With gpxe embedded script ==== | ==== With gpxe embedded script ==== | ||
- | I recompiled the gpxe with following embedded script, but still I am getting same error | + | I recompiled the gpxe with following embedded script ../contrib/scripts/forpxeknife.gpxe, |
<code> | <code> | ||
#!gpxe | #!gpxe | ||
- | echo "Hi there" | + | echo "Hi, We will be using PXEKnife from URL http://www.alien.doesntexist.org/pxeknife/" |
dhcp net0 | dhcp net0 | ||
- | set 209:string pxelinux.cfg/default | + | set 209:string /pxeknife.cfg/default |
- | set 210:string http://10.0.0.2/pxeknife/ | + | set 210:string http://www.alien.doesntexist.org/pxeknife/ |
- | chain http://10.0.0.2/pxeknife/pxelinux.0 | + | echo "Here we go" |
- | boot | + | chain http://www.alien.doesntexist.org/pxeknife/pxelinux.0 |
</code> | </code> | ||
+ | and I compile with following command | ||
+ | <code> | ||
+ | make clean && make EMBEDDED_IMAGE=../contrib/scripts/forpxeknife.gpxe | ||
+ | </code> | ||
+ | |||
+ | I execute qemu with no extra parameters at-all. | ||
+ | <code> | ||
+ | qemu -fda gpxe.dsk | ||
+ | </code> | ||
+ | |||
+ | ===== Ready to use PXE-Knife over HTTP ===== | ||
+ | If you want to try out PXE-Knife without installing then visit page [[pxeknifeOverHttp]] | ||
+ | |||
+ | |||
+ | ==== Problems ==== | ||
+ | In case you encounter any problems with this then you can refer the page [[QemuPxeKnifeHTTPProbs]] | ||