BusyBox

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
BusyBox
BusyBoxLogo.png
Busybox DG834Gt.PNG
Basisdaten
Maintainer Denys Vlasenko[1]
Entwickler Bruce Perens, Erik Andersen,[2] Rob Landley,[3] Denys Vlasenko[4] und andere
Aktuelle Version 1.22.1
(20. Januar 2014)
Betriebssystem Linux
Kategorie Embedded Linux
Lizenz GPLv2 (Freie Software)
Deutschsprachig Nein
www.busybox.net

BusyBox ist ein Computerprogramm, das verschiedene elementare Standard-Unix-Dienstprogramme in einem einzelnen Programm vereint. Es läuft auf verschiedenen POSIX-Umgebungen wie Linux, Android, oder FreeBSD. Viele Werkzeuge sind jedoch so gestaltet, dass sie mit den Schnittstellen eines Linux-Kernels funktionieren. BusyBox wurde geschaffen, um auf eingebetteten Betriebssystemen mit sehr beschränkten Ressourcen arbeiten zu können.

Laut der Projektseite ist BusyBox das „Schweizer Taschenmesser für embedded-Linux“. Um noch weniger Platz zu brauchen, wird BusyBox oft mit kleinen Bibliotheken wie etwa uClibc gelinkt.

Geschichte[Bearbeiten]

BusyBox wurde 1996 von Bruce Perens geschrieben. Er wollte ein auf eine einzelne Diskette passendes, vollständiges und bootbares Linux-System haben, das sowohl als Rettungssystem, als auch zur Installation eines Debian GNU/Linux-Systems verwendbar wäre. Bis 1998 wurde es von Enrique Zanardi gewartet und an die Bedürfnisse des Debian-Installationsprogramms angepasst. Danach erweiterte es Dave Cinege für das „Linux Router Project“. Zwischen 1999 und 2006 war es in den Händen von Erik Andersen, und es verbreitete sich auf dem wachsenden Markt der eingebetteten Systeme. Zur Zeit (2012) ist der Maintainer Denys Vlasenko. Gegen viele namhafte Hersteller, die BusyBox auf ihren Geräten einsetzen, wurden seit Dezember 2009 Klagen eingereicht, da laut Software Freedom Law Center (SFLC) die GPL verletzt oder gänzlich ignoriert wurde.

Anwendungsgebiete[Bearbeiten]

Dank seiner Vorteile für diese Systeme wird es zum Beispiel in Linux-Systemen auf dem Sharp Zaurus, dem Nokia 770, dem Nokia N900, dem Motorola ROKR Z6, auf OpenWrt basierenden Systemen wie dem Fon-Router La Fonera, auf AVM-FRITZ!Boxen, TomTom-Navigationsgeräten, auf gerooteten Android-Images, Dreambox-Receivern, Screenplay Multimedia-Festplatten von IOMEGA, dem Acme Systems Foxboard, fast allen Linux-Installations-CDs (beispielsweise Ubuntu, Debian) oder dem GP2X verwendet. Es ist freie Software und unterliegt der GNU General Public License Version 2 (GPLv2).

Neben der Verwendung in eingebetteten Systemen wird Busybox auch für initramfs zum Starten von Betriebssystemen sowie als Rettungsprogramm eingesetzt. Werden z. B. wichtige Systembefehle wie /bin/env gelöscht, so kann man diese durch einen Symlink auf bzw. eine Kopie von BusyBox vorübergehend ersetzen, um dann mit dem nun wieder funktionsfähigen System das betroffene Paket (in diesem Falle binutils) neu zu installieren. Besonders ein statisch gelinktes Build von BusyBox ist hierbei interessant, da das System somit auch bei der Zerstörung von glibc geladen werden kann und mit entsprechender Konfiguration in einem solchen Falle die in BusyBox integrierte Almquist Shell startet.

Weblinks[Bearbeiten]

Die folgenden Links beziehen sich auf die alte Version 0.45 aus dem Jahr 2000. Obwohl als Hintergrundinformation immer noch nützlich, ist viel vom Inhalt des Artikels veraltet. Grund: BusyBox wurde seitdem stark erweitert – es wurden viele weitere Unix-Tools integriert und es bestehen weniger Einschränkungen bezüglich ihres Funktionsumfangs.

Einzelnachweise[Bearbeiten]

  1. Denys Vlasenko, BusyBox Maintainer
  2. Website von Erik Andersen
  3. Aktuelle Projekte, Website von Rob Landley
  4. Denys Vlasenko, BusyBox Maintainer