public inbox for gentoo-embedded@lists.gentoo.org
 help / color / mirror / Atom feed
* [gentoo-embedded] gentoo-mini-linux (2.6.X + uClibc + busybox + udev + hotplug/coldplug + *fsutils + smb/nfs+ ...) for system-setup
       [not found] <1102222658.7085.32.camel@valhalla>
@ 2004-12-07  0:51 ` Buttchereit, Axel (XLsigned)
  2004-12-07 13:51   ` Hans-Werner Hilse
  0 siblings, 1 reply; 5+ messages in thread
From: Buttchereit, Axel (XLsigned) @ 2004-12-07  0:51 UTC (permalink / raw
  To: gentoo-installer, gentoo-embedded

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hi,

is anyone (beside of me) working on this subject?

My idea/ambition is to substitute MS-DOS-based (initial) os-setup-procedures
(for x86 systems) by some kind of "gentoo-mini-linux" that ist based on a
current (2.6.9++) linux kernel and a root-filesystem consisting of uClibc,
busybox, udev, hotplug/coldplug, *fsutils, smb/nfs, ...

Installation/Setup should be initiated by PXE (PXEGRUB/PXELINUX) that loads
the kernel and root-filesystem into a ramdisk.
After partitioning of disks either a win32-setup could be started or
a gentoo-installation (GLI?).

I have already tried "gentoo genkernel" and found out that I have to
change a lot/too much...

At the moment I'm using a manual configured 2.6.9-gentoo-r4-kernel
(with lots of modules for Network and Storage access) and a customized
"buildroot" (from Erik Andersen, www.uclibc.org).

I've already managed to add the kernel-modules to the "buildroot"-root_fs,
to load kernel modules (for NICs), to run fdisk, and to mount nfs-volumes
after booting my test machine (DHCP/TFTP -> PXEGRUB -> kernel+initrd -> busybox).

Now for my (open) questions:
  1. "buildroot" obviously does not provide a "fully featured" root-fs for
     kernel-2.6, i. e. with udev, hotplug/coldplug.
     Anyone out there with experience on that?
  2. ntfsutils, smb, ... are not available in current "buildroot".
     Anyone out there that has integrated this into "buildroot" already?
     (or rather compiled/linked against uClibc manually)
  3. "buildroot" uses its own "package management" for downloading and
     compiling of sources.
     Is it possible to benefit from "gentoo-portage" and do (a kind of)
     cross-compiling and linking against uClibc?

- -Axel



-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFBtP6BWr3rpUlTqH4RAji5AKDb911nx6xTM/+9MjSbaAUoJkLqhwCghept
c/03gXdSi2HlZJuTbkz2gXw=
=NXQB
-----END PGP SIGNATURE-----

--
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [gentoo-embedded] gentoo-mini-linux (2.6.X + uClibc + busybox + udev + hotplug/coldplug + *fsutils + smb/nfs+ ...) for system-setup
  2004-12-07  0:51 ` Buttchereit, Axel (XLsigned)
@ 2004-12-07 13:51   ` Hans-Werner Hilse
  0 siblings, 0 replies; 5+ messages in thread
From: Hans-Werner Hilse @ 2004-12-07 13:51 UTC (permalink / raw
  To: gentoo-embedded

Hi,

On Tue, 07 Dec 2004 01:51:13 +0100
"Buttchereit, Axel (XLsigned)" <XL@XLsigned.net> wrote:

> Now for my (open) questions:
>   1. "buildroot" obviously does not provide a "fully featured" root-fs
>   for
>      kernel-2.6, i. e. with udev, hotplug/coldplug.
>      Anyone out there with experience on that?

I've managed to use the new embedded-stage1 from Gentoo to compile
myself a basic system, which is at least what buildroot does plus lots
of more apps. I've even managed to compile xorg (6.8.0-r4 was the only
one that worked for me right out of the box, it's currently masked).

>   2. ntfsutils, smb, ... are not available in current "buildroot".
>      Anyone out there that has integrated this into "buildroot"
>      already?(or rather compiled/linked against uClibc manually)

Try to use Gentoo, it really works quite well. I've managed to compile
samba (even the server) and ntfsprogs with the default ebuilds. The NFS
support mentioned in the subject relies on the kernel as said in recent
thread here ("can't emerge nfs-utils") but can work, too. Userspace NFS
doesn't seem to work yet because of not-glibc-like rpc support in
uclibc.

>   3. "buildroot" uses its own "package management" for downloading and
>      compiling of sources.
>      Is it possible to benefit from "gentoo-portage" and do (a kind
>      of) cross-compiling and linking against uClibc?

Yes, you've got a lot more build scripts. If they work is another
question. And I personally found it easier to use Gentoo for all this.
When building your final filesystem, you should make a copy of the build
system and delete everything that isn't needed. You can, on the other
hand, build packages when emerging and then use "ROOT=/your/target/root
emerge -K package" for everything you need.

A last tip: I wouldn't recommend to actually install busybox into your
dev environment. Just emerge it with "emerge --buildpkgonly busybox" and
then do a "ROOT=/your/target/root emerge -K busybox"

Note that gentoo won't work as a cross compilation env, AFAIK.

HWH

--
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [gentoo-embedded] gentoo-mini-linux (2.6.X + uClibc + busybox + udev + hotplug/coldplug + *fsutils + smb/nfs+ ...) for system-setup
@ 2004-12-07 17:08 Buttchereit, Axel (XLsigned)
  2004-12-07 17:39 ` Hans-Werner Hilse
  0 siblings, 1 reply; 5+ messages in thread
From: Buttchereit, Axel (XLsigned) @ 2004-12-07 17:08 UTC (permalink / raw
  To: gentoo-embedded

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1


Hans-Werner Hilse wrote:
> Hi,
>
> On Tue, 07 Dec 2004 01:51:13 +0100
> "Buttchereit, Axel (XLsigned)" <XL@XLsigned.net> wrote:
>
>
>>Now for my (open) questions:
>>  1. "buildroot" obviously does not provide a "fully featured" root-fs
>>  for
>>     kernel-2.6, i. e. with udev, hotplug/coldplug.
>>     Anyone out there with experience on that?
>
>
> I've managed to use the new embedded-stage1 from Gentoo to compile
> myself a basic system, which is at least what buildroot does plus lots
> of more apps. I've even managed to compile xorg (6.8.0-r4 was the only
> one that worked for me right out of the box, it's currently masked).
>
> A last tip: I wouldn't recommend to actually install busybox into your
> dev environment. Just emerge it with "emerge --buildpkgonly busybox" and
> then do a "ROOT=/your/target/root emerge -K busybox"
>
> Note that gentoo won't work as a cross compilation env, AFAIK.
>

Thanks!

I have just downloaded an experimental x86-uClibc stages1. :-)

For both my development system and my target system(s) are "x86",
I think that "chroot"-ing into my build environment (based on stage1)
should also work. i. e. re-use my current 2.6.9-kernel.
(The target kernel is also 2.6.9, but for generic i386)

Something like this should work. Right?

 1. extract stage1 to "rootfs/"
 2. copy modules from generic i386-kernel to rootfs/lib/modules (???, see below)
 3. configure networking (rootfs/etc/resolv.conf)
 4. chroot roofs /bin/bash
- ----------------------------------------------------------------
 5. emerge sync
 6. /usr/portage/scripts/bootstrap.sh
 7. emerge system
 8. customize and emerge ... udev hotplug coldplug ntfsutils busybox...
 9. exit
- -----------------------------------------------------------------
10. Create "small" (32MB) ext2-filesytem on flat file "rootfs,ext2"
11. mount "rootfs.ext2" using "-o loop"
12. Copy all relevant files and folders from "rootfs/" to mounted "rootfs.ext2"
13. gzip "rootfs.ext2"
14. copy "rootfs.ext2.gz" and "bzImage" (gerneric i386-kernel) to my
    PXE-Server (fli4l) and add a boot menu entry (PXEGRUB, menu.1st)

Maybe it's a better idea to emerge "gentoo-dev-sources" while "chroot"-ed
and build the kernel.

- -Axel






-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFBteNxWr3rpUlTqH4RAjm6AJ9IO3eJDelJMnHx9uMJTBaY/DzWdQCfeC2d
u3lc2CaGAMubuvo4TpRNyeY=
=xRjb
-----END PGP SIGNATURE-----

--
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [gentoo-embedded] gentoo-mini-linux (2.6.X + uClibc + busybox + udev + hotplug/coldplug + *fsutils + smb/nfs+ ...) for system-setup
  2004-12-07 17:08 [gentoo-embedded] gentoo-mini-linux (2.6.X + uClibc + busybox + udev + hotplug/coldplug + *fsutils + smb/nfs+ ...) for system-setup Buttchereit, Axel (XLsigned)
@ 2004-12-07 17:39 ` Hans-Werner Hilse
  2004-12-07 21:52   ` Buttchereit, Axel (XLsigned)
  0 siblings, 1 reply; 5+ messages in thread
From: Hans-Werner Hilse @ 2004-12-07 17:39 UTC (permalink / raw
  To: gentoo-embedded

Hi again

(on list, this time ;-)

On Tue, 07 Dec 2004 18:08:01 +0100
"Buttchereit, Axel (XLsigned)" <XL@XLsigned.net> wrote:

> Something like this should work. Right?
> 
>  1. extract stage1 to "rootfs/"
>  2. copy modules from generic i386-kernel to rootfs/lib/modules (???, see below)

not needed. Although there are packages that require an installed configured kernel tree to decide how to proceed (pcmcia comes to my mind).

>  3. configure networking (rootfs/etc/resolv.conf)
>  4. chroot roofs /bin/bash
> - ----------------------------------------------------------------
>  5. emerge sync
>  6. /usr/portage/scripts/bootstrap.sh
>  7. emerge system
>  8. customize and emerge ... udev hotplug coldplug ntfsutils busybox...
>  9. exit
> - -----------------------------------------------------------------
> 10. Create "small" (32MB) ext2-filesytem on flat file "rootfs,ext2"
> 11. mount "rootfs.ext2" using "-o loop"
> 12. Copy all relevant files and folders from "rootfs/" to mounted "rootfs.ext2"
> 13. gzip "rootfs.ext2"
> 14. copy "rootfs.ext2.gz" and "bzImage" (gerneric i386-kernel) to my
>     PXE-Server (fli4l) and add a boot menu entry (PXEGRUB, menu.1st)

Yes, this should work.

> Maybe it's a better idea to emerge "gentoo-dev-sources" while "chroot"-ed
> and build the kernel.

It should work with nearly any kernel, no need to compile again what you already have as the kernel doesn't have library dependencies (although the kernel build system may have them, so be careful not to just "mount --bind" your old sources into your chroot).

HWH

--
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [gentoo-embedded] gentoo-mini-linux (2.6.X + uClibc + busybox + udev + hotplug/coldplug + *fsutils + smb/nfs+ ...) for system-setup
  2004-12-07 17:39 ` Hans-Werner Hilse
@ 2004-12-07 21:52   ` Buttchereit, Axel (XLsigned)
  0 siblings, 0 replies; 5+ messages in thread
From: Buttchereit, Axel (XLsigned) @ 2004-12-07 21:52 UTC (permalink / raw
  To: gentoo-embedded

-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Hans-Werner Hilse wrote:
> Hi again
> 
> (on list, this time ;-)
> 
> On Tue, 07 Dec 2004 18:08:01 +0100
> "Buttchereit, Axel (XLsigned)" <XL@XLsigned.net> wrote:
> 
> 
>>Something like this should work. Right?
...
>> 7. emerge system
> 
> Yes, this should work.
> 

Yes it works, beside of an error I get, when emerging "system".
"sys-apps/module-init-tools-3.0-r2" did not build, because
of missing "gperf".

Maybe I have forgotten to do an "env-update" (after bootstrap.sh)
or it happened because I changed the profile to "uclic/x86/linux26".

Whatever!? "emerge gperf" and then again "emerge system" fixed it.

Now I'm the "lucky owner" of a shiny new
"gentoo-linux26-x86-uclibc-stage3-chroot-environment" :-)
(About 1GB, because of portage incl. distfiles...)

Now compiling a kernel...
Good occasion to write a shell-script that copies only the required
files and folders into the final mini-rootfs.

- -Axel




-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.6 (GNU/Linux)
Comment: Using GnuPG with Thunderbird - http://enigmail.mozdev.org

iD8DBQFBtiYpWr3rpUlTqH4RAskfAJ9siODlsl1WFKd8Np8vGU/Glbm/YACdGZrx
MIMtAJnTzxt7UGSs+U8pLZA=
=nc95
-----END PGP SIGNATURE-----

--
gentoo-embedded@gentoo.org mailing list


^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2004-12-07 21:54 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2004-12-07 17:08 [gentoo-embedded] gentoo-mini-linux (2.6.X + uClibc + busybox + udev + hotplug/coldplug + *fsutils + smb/nfs+ ...) for system-setup Buttchereit, Axel (XLsigned)
2004-12-07 17:39 ` Hans-Werner Hilse
2004-12-07 21:52   ` Buttchereit, Axel (XLsigned)
     [not found] <1102222658.7085.32.camel@valhalla>
2004-12-07  0:51 ` Buttchereit, Axel (XLsigned)
2004-12-07 13:51   ` Hans-Werner Hilse

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox