On 1/2/08, Carlo Calica <[EMAIL PROTECTED]> wrote:
> Hot on the heels of the 014 LiveCD release, I'd like to announce the
> 014 LiveFlash release.

Kudos! I just tested it, and indeed, it's really fast!

> Ok not a full release but an alpha.  First you need the ISO for the
> LiveCD.  Then you need:
> http://www.calica.com/gobolinux/goboflash-0.1.zip  You'll also need a
> 1GB or larger flash drive.
>
> Instructions:
>
> 1. mount ISO somewhere (mount -o loop GoboLinux-014-i686.iso /Mount/CD-ROM)
> 2. copy the contents of the ISO to your vfat formatted flash (cp -r
> /Mount/CD-ROM /Mount/Foo)

This should be:

cp -r /Mount/CD-ROM/* /Mount/Foo

(Just a warning for those who tend to copy-and-paste, like me :) )

> 3. unzip the zip into the root of your flash (cd /Mount/Foo; unzip
> ~/goboflash-0.1.zip)
> 4. one of the files you just extracted is syslinux.  Run this with
> your flash's vfat partition dev node (/Mount/Foo/syslinux/syslinux
> /dev/sdX1)
> 5. unmount you flash (umount /Mount/Foo)
> 6. boot in a machine that supports USB boot.
> 7. enjoy the speed!!!!!!

My first attempt failed because the SD card I used as media wasn't
formatted properly. It had been formatted by my digital camera, and
the partition table was incorrect. After repartitioning it (with
fdisk; cfdisk refused to use the incorrect table, but worked nicely
after fdisk cleared it) and reformatting, the steps above worked fine.

> Changes
>
> * syslinux binary and config
> * A new initrd
>     * change mountGoboLinux to insmod nls_cp437.ko
>     * change mountGoboLinux to insmod nls_iso8859-1.ko
>     * change mountGoboLinux to attempt mounting vfat on sd*[1-9]
>
> Other thoughts
>
> * Only tested on my machines
> * Only tested on a factory formatted Corsair flash drive purchased in USA
>    * people outside US may need different nls_* kernel modules, I don't know

I tested booting it in different languages and it worked just like the
CD. I think that, if needed, the other nls modules are used only after
boot, when they're already available from the mounted squashfs images.

> * There is a syslinux/syslinux.com binary for dos.  No idea if it
> works under windows.  syslinux can be built for win32 but needs MinGW.
>  If someone could provide this, I'll include the binary.
> * Please test on as many configs as possible.  Especially non US.

The first time I booted the USB disk, I had a burnt 014 CD in my drive
and it started using it instead of the squashfs in my SD card. The
modified mountGoboLinux script should stop trying to mount the CD.

The machine hostname was still "LiveCD" (these details can be fixed
with some "ifdef"ing in our tools if you choose to maintain the Flash
version). ;o)

A logical continuation of the LiveFlash idea would be to provide a
writeable $HOME that's stored persistently in Flash (or perhaps an
writable layer for the whole tree like the tmpfs we currently use.)

My first attempt was to:

mount /dev/sdb1 /Mount/Floppy
mkdir /Mount/Floppy/home
cp -a ~/* ~/.* /Mount/Floppy/home
mount --bind /Mount/Floppy/home /Users/gobo

This almost worked, but KDE refused to start. An strace run quickly
showed that the problem was that it tried to create a symlink under
~/.kde, and vfat does not support symlinks.

I wonder how other distros solve this. One possibility would be to
create a big file inside the Flash, format it as ext2 and loop mount
it; ugly, impractical, but works. Another possibility would be to do
something like the old, now-dead umsdos filesystem. FUSE instantly
comes to mind, and indeed I'm not the only one to think of this:

http://lkml.org/lkml/2005/8/22/241

A quick run through Google didn't find any implementations of that, though.

A probable third solution would be to actually format the flash drive
as ext2. This may help:

http://syslinux.zytor.com/extlinux.php

Ah, I didn't check this so you might be already doing it, but make
sure the flash drive is mounted with noatime to avoid hammering the
allocation tables (especially important in the case of vfat).

> * It is unbelievably fast.

Oh yeah :)

-- Hisham
_______________________________________________
gobolinux-devel mailing list
gobolinux-devel@lists.gobolinux.org
http://lists.gobolinux.org/mailman/listinfo/gobolinux-devel

Reply via email to