Marc Reichelt: Embedded Linux: Root-Dateisystem unter 5 MB

Beitrag lesen

Hallo LX,

Es gibt mehrere gute Hilfsmittel für embedded Linux. Busybox ist nur eins davon, wenn auch ein sehr wesentliches. Weiterhin solltest Du darüber nachdenken, die libc durch uclibc zu ersetzen - das sollte auch einige MBs sparen.

Das ist schon mal ein Ansatz. Nach kurzer Recherche scheint es aber so zu sein, dass die uclibc nicht als Debian-Paket verfügbar ist, busybox aber schon. Und busybox scheint von der libc abzuhängen...
Ich suche hier vor allem nach einer einfachen Lösung. Wenn ich mit der normalen libc auch auf ein System unter 5MB kommen könnte wäre dies für mich die beste Variante. Immerhin würde ich JFFS2 verwenden, womit ich Kompression nutzen kann.

Als nächstes wäre es möglicherweise eine gute Idee, unbenötigte Programme zu deinstallieren (Du wirst bspw. kaum einen gcc auf Deinem embedded device brauchen und wenn doch, nehme besser den tcc). Multiple Scriptsprachen wie perl oder python sind auch nicht allesamt notwendig - im Zweifelsfall reicht eine oder sogar gar keine.

Klingt sinnvoll. Wie mache ich das am Besten? Ist es sinnvoll, hierfür einfach "apt-get purge <Paketname>" zu verwenden?

Um nochmal mein Vorhaben zu verdeutlichen: Ich würde hier gerne eine möglichst einfache und stabile Lösung wählen. Genial wäre es, wenn ich debootstrap die nicht nötigen Pakete mit --exclude=... und die zusätzlichen Pakete über --include=... angeben könnte - dies wird mit der uclibc aber wohl nicht möglich sein, da nicht verfügbar. Perfekt wäre es, wenn es ein Tool gibt mit dem ich direkt ein absolut minimales Debian (oder auch ein anderes Linux für Armel-Architektur) anlegen könnte.

Ich werde heute Abend mal austesten, inwieweit ich die Größe des Debians mit "apt-get purge <Paketname>" und "rm -Rf <Ordnername>" reduzieren kann - vielleicht komme ich mit diesen Mitteln und JFFS2 ja bereits unter 5 MB.

Vielen Dank schon mal an dieser Stelle!

Freundliche Grüße

Marc Reichelt || http://www.marcreichelt.de/

--
DPRINTK("Last time you were disconnected, how about now?");
        linux-2.6.6/drivers/net/tokenring/ibmtr.c
Selfcode: ie:{ fl:| br:> va:} ls:< fo:} rl:( n4:( ss:) de:> js:| ch:? sh:| mo:) zu:)