[Buildroot] Creating a bootable filesystem image?

Arun Reddy reddyac at gmail.com
Tue Apr 8 22:26:47 UTC 2008


Sebastian,

Thanks for the information, I do understand it much clearer now. I am
attempting to run the script and find out whether my input will result in
the bootable filesystem I want. When running build-ext-img, I input

Enter the path to the image:

I input "/root/buildroot/scripts/" since that is where the filesystem image
is located.

Enter the name of the image file:

I input "buildroot.img"

Enter the path to the root filesystem that you want to install the image

I input "/root/buildroot/binaries/uclibc/" since this is where my filesystem
image (rootfs.i386.ext2) is located.

When the script runs, it looks like everything is ok at first, but
eventually I get the warning stating Device contains neither a valid DOS
partition table, nor Sun, SGI... etc. It builds a new DOS disklabel for me,
so I go ahead and continue. I also get a warning that there is an invalid
flag 0x0000 of partition table 4 that will be corrected by w(rite) which I
go ahead an accept. I then type q to quit and continue building the bootable
FS.

I am finally left with

cp: writing /root/buildroot/scripts/temp/rootfs.i386.iso: No space left on
device.

I examined the script and noticed when installing software to the image,
${IMAGE} is mounted to ${IMAGE_PATH}/temp, then ${ROOT_PATH}/* is copied to
that location, and then the temp folder is unmounted and removed. Am I
getting that there is no space on the device because it is trying to copy to
a folder where the image is mounted? Or did I not correctly interpret the
inputs correctly above? Thanks for answering these. I should point out I am
using Snapshot from 4-1-2008.

On Tue, Apr 8, 2008 at 2:33 PM, Sebastian <bastisoft at arcor.de> wrote:

> Hello Arun,
>
> of course you can use a ext3 file system, if your kernel only uses ext2.
>
> Ext3 is fully backwards-compatible to ext2, which means you can use any
> ext2 driver to access ext3 file systems. Grub uses an ext2 file system
> driver, so it can read ext3, too. I don't know which kind of storage device
> you are using; ext3 is an ext2 file system with a journal. Journalling saves
> a lot of time when you need to fsck the device (and use a journal-capable
> [ext3]-driver for writing, of course), but the file system will write a lot
> more often onto the device, too - this matters if you use a flash device or
> something that wears out. If you read-only mount your file system, the
> journal isn't used at all.
>
> I mean: You can use the ext3 file system as-is, but you waste some KB (or
> MB for larger disks) of space. It won't hurt, though, and grub can use ext2
> and ext3.
> It's just that i personally dislike grub and wanted to say that there are
> alternatives (extlinux) around. ;-)
>
> Best regards,
> Sebastian
>
>  Hi Sebastian,
> >
> > Thank you for this email. Would you be willing to explain why I would
> > need to change ext3 in order to use grub? Can grub not work on ext3
> > filesystem? I just picked ext2 in the kernel configuration as a test but I
> > can really use any filesystem I want (ext2, ext3, etc). So if the script
> > will create for me a bootable ext3 filesystem cannot I just use that as it
> > is?
> >
> > On Tue, Apr 8, 2008 at 3:02 AM, Sebastian <bastisoft at arcor.de <mailto:
> > bastisoft at arcor.de>> wrote:
> >
> >    Hello Arun,
> >
> >     > My question is, does anyone know if there is a way to configure
> >    buildroot to make rootfs.i386.ext2 bootable? Please note that I
> >    disabled
> >    RAMDISK in the > kernel .config before compiling buildroot because I
> >    don't need to use one.
> >
> >    This is because rootfs.i386.ext2 is only a file system image, not
> >    a hard
> >    disk image. It is missing the boot sector of the disk, which contains
> >    the Master Boot Record and the partition table. The BIOS on i386 does
> >    only execute the first sector on the disk (the MBR code) which
> > usually
> >    only boots from the active partition. So you need a bootloader, as
> > the
> >    kernel itself is not able to be loaded this way.
> >
> >    Like John said, you can use GRUB. But if you only want to boot a ext2
> >    partition, you can easily get away with Extlinux. It is a syslinux
> >    derivate with support for ext2 (and ext3) instead of FAT. It installs
> >    only into the partition (not into the master boot record), which
> > means
> >    you should be fine by creating and activating the partition
> > containing
> >    your ext2 image.
> >
> >    The changes in scripts/build-ext3-img references ext3 only while
> >    creating the file system. So you only need to change that if you
> >    want to
> >    use grub.
> >
> >    Best regards,
> >    Sebastian
> >    _______________________________________________
> >    buildroot mailing list
> >    buildroot at uclibc.org <mailto:buildroot at uclibc.org>
> >    http://busybox.net/mailman/listinfo/buildroot
> >
> >
> >
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.busybox.net/pipermail/buildroot/attachments/20080408/6eb5f69c/attachment.html>


More information about the buildroot mailing list