Well, I spent lot of time on my nslu2 and formating also.
I can say now I’m not bad in unslinging process.
The pb is that the fdisk tools provided is linksys specific and dont’ let you do custom partition
The first thing is to do a unslung on stick formated with web interface. just to have ipkg functionning. after that the tip is to get a real fdisk tool. So what I’v done :
ipkg install busybox-base (base do not create links, just have the executable)
after that copy on the internal flash of the slug but do not overwrite the original (Version 0.6)
current version of busybox is 1.3 so I do
cp /opt/bin/busybox /bin/busybox1.3
So like this in any case you boot your slung (even with no disk attached) you can do a real fdisk (if you have a disk sure) doing :
busybox1.3 fdisk -l /dev/sda
list all partition table. But you can create partition as you wish and size you want.
After that, boot with no disk. after boot, plug your stick and partition it like you want.
After, to format stick drive that can be seen by slug you really need to format it with web interface. but it will not work because web interface invokes linksys specific fdisk. So the tip is to fake the linksys fdisk
go here to section faking the slug
So with that you can use real fdisk to partition as you want and resling
here what I have on my slug /sbin
# cd /sbin
# ls -al fd*
-rwxr-xr-x 1 root root 10 May 8 2004 fdisk
-rwxr-xr-x 1 root root 64064 Jan 1 1970 fdisk.old
-rwxr-xr-x 1 root root 10 May 8 2004 fdisk.sh
# cat fdisk
# /bin/busybox1.3 fdisk -l /dev/sda
Disk /dev/sda: 3253 MB, 3253469184 bytes
255 heads, 63 sectors/track, 395 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 327 2626596 83 Linux
/dev/sda2 328 360 265072+ 83 Linux
/dev/sda3 361 395 281137+ 82 Linux swap