Hi,
I am working on booting Debian over http, and I faced few problems and
I attempted to solve them.
Following is the approach I took and the the questions I have.
I hope that you will find this work useful.

I have been trying to use "httpfs" option to boot
"debian-live-501-i386-gnome-desktop.iso".
But I could not locate the httpfs program in initramfs.  So I added
httpfs and fusermount from
http://httpfs.sourceforge.net to /bin of initramfs.  With this
modifications debian was able to boot
from filesystem.squashfs hosted on remote webserver.

I also wanted to be able to boot from
"debian-live-501-i386-gnome-desktop.iso" in addition to
"filesystem.squashfs".  I attempted this by modifying "do_httpmount"
to recognize ".iso" extension.
I mount the iso on "${rootmnt}/iso" this iso is then mounted on "${mountpoint}".

Here is the code snippet
<code>
if [ "${extension}" = "iso" ]
    then
    modprobe fuse
    modprobe loop
    mkdir -p "${rootmnt}/iso"
    httpfs "${url}" "${rootmnt}/iso"
    FILEPATH=`ls "${mountpoint}"/iso/*.iso`
    mount -t iso9660 $FILEPATH "${mountpoint}" -o loop -o ro
    return 0
    fi
 </code>

I chose the location "${rootmnt}/iso" so that "run-init" will not try
to delete it in "nuking initramfs" step.
But still I am getting error
"run-init: nuking initramfs contents: Directory not empty"

I modified and re-compiled "run-init" for not ignoring the failure of
nuke_dir("/") and included it in my initramfs.
With this ugly hack, I did managed to get past the error, but I got
strange error when gnome GUI started.
<error>
There was an error starting the GNOME Settings Daemon.

Some things, such as themes, sounds, or background settings may not
work correctly.

The last error message was:

Did not receive a reply. Possible causes include: the remote
application did not send a reply, the message bus security blocked the reply,
the reply timeout expired, or the
network connection was broken

GNOME will still try to restart the Settings Daemon next time you log in.

                             X Close
</error>


I wanted to know where can I mount the ISO image so that I will not
come in the path of nuke_dir.

You can find the modified "live" script here
http://rom.etherboot.org/share/pravin/BKO/pxeknife/debian/debian-live-501-i386/live

and Initramfs is generated from orignal initramfs using following script
http://rom.etherboot.org/share/pravin/BKO/pxeknife/debian/debian-live-501-i386/generate_initrd.sh

All the files needed to boot debian over http can be located at
http://rom.etherboot.org/share/pravin/BKO/pxeknife/debian/

You test the debian booting over http by downloading gpxe from following URL
http://rom.etherboot.org/share/pravin/BKO/

It is still under development, and hence may not work properly.
Any suggestions and feedback are welcome.

-- 
Pravin


-- 
To UNSUBSCRIBE, email to debian-live-requ...@lists.debian.org
with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org

Reply via email to