booting zipslack over nfs overview, part 1 of 4

Gregory Nowak greg at romuald.net.eu.org
Sat Nov 8 22:57:20 EST 2003


Hi all.

As promised, here is my very  brief explanation of what needs to be
done to modify zipslack to boot over nfs. As mentioned previously,
this is very brief, and could really use major expanding.

First, grab and unpack zipslack.
Since the ip address of the client I was using was 192.168.0.3, I
unpacked zipslack into /tftpboot/192.168.0.3.
While this sounds simple, in reality it isn't. This is for a couple of
reasons. The first reason is that remember that zipslack was designed
to run on top of umsdos. This means that when it unpacks, some
directory/file names will be mangled, and there will be an extra
"---linux---" file in each directory. 

So, what needs to be done, is to create a 200Mb or so file with dd,
and format the file by using mkfs.msdos. Then, mount the file via loop
back as type msdos, and unzip zipslack onto the just mounted msdos
mount point directory. Once this is done, you need to umount the loop
back device, remount it as type umsdos, and then copy the linux
directory containing zipslack into /tftpboot.
I mentioned there was another reason which makes unpacking zipslack
not so simple. This is however, no big deal. You need to simply rename
/tftpboot/linux to be /tftpboot/192.168.0.3, replacing 192.168.0.3
with the ip address your dumb terminal will be assigned, and yes, your
terminal will need to have a static ip assigned via dhcp for this
particular setup to work. I'll touch on this later on.
Also, your main directory has to be /tftpboot, and not something
else, since this is where tftpd will look for kernel images to send to
the client. The permissions of /tftpboot need to be 777, since tftpd
needs to have access to the /tftpboot directory. I mostly found this
out by looking at the tftpd man page, and by trial and error. You may
find that lesser permissions work, if this is so, then it certainly is
different from what I found to work.
Your /tftpboot/192.168.0.3 directory needs to have rwxr-xr-x
permissions. Both /tftpboot and /tftpboot/192.168.0.3 need to be owned
by root.

Now that we've got zipslack unpacked, it's time to make some
modifications to it.

First, you need to edit /tftpboot/192.168.0.3/etc/fstab. You need to
change the root device, and comment out the swap file line, since nfs
will not allow you to swap over it.


/dev/nfs         /                nfs      defaults         0   0
#/root/swapfile   swap             swap        defaults         0   0


Note that /dev/nfs is a fake root device, and I will cover this topic
later.
Before I go on, I forgot to mention that I had done this with zipslack
9.0, and linux 2.4.21.

Since I of course built my own kernel, I commented 
out in /tftpboot/192.168.0.3/etc/rc.d/rc.modules any modules which I didn't use.

Since the kernel will automagically configure your interface card,
you will not be able to run netconfig. Because of this, you may want
to edit /tftpboot/192.168.0.3/etc/hostname to reflect the proper name
of your machine.
You will also want to edit /tftpboot/192.168.0.3/etc/resolv.conf, and
put in your dns info.


-- 
Free domains: http://www.eu.org/ or mail dns-manager at EU.org





More information about the Speakup mailing list