GNU/Linux >> LINUX-Kenntnisse >  >> Linux

BusyBox:Das Schweizer Taschenmesser von Embedded Linux

Busybox wird auf seiner Handbuchseite als das Schweizer Taschenmesser von Embedded Linux beschrieben. Es kombiniert kleine Versionen gängiger UNIX-Dienstprogramme in einer einzigen kleinen ausführbaren Datei. Es bietet rund 400 Implementierungen von Linux-Befehlen wie more, less, head, tail, grep, awk, sed, dpkg, die alle in einer einzigen Binärdatei kompiliert sind.

Diese ausführbare Datei ist klein (unter 1 MB) und daher in Situationen nützlich, in denen wir in Bezug auf den Speicherplatz begrenzt sind, z

Busybox schaut auf den Namen, unter dem es aufgerufen wird, und verhält sich entsprechend dem gewünschten Programm, zum Beispiel wenn wir busybox über einen symbolischen Link ls aufrufen , wird es eine Aktion ähnlich dem Befehl ls ausführen, wenn wir es über mkdir aufrufen symbolischer Link, führt es ähnliche Aktionen wie mkdir aus .

BusyBox unter Linux installieren

Unter Linux , können Sie BusyBox installieren Verwenden Sie Ihren Standard-Paketmanager wie gezeigt.

$ sudo apt install busybox         [On Debian, Ubuntu and Mint]
$ sudo yum install busybox         [On RHEL/CentOS/Fedora and Rocky Linux/AlmaLinux]
$ sudo emerge -a sys-apps/busybox  [On Gentoo Linux]
$ sudo pacman -S busybox           [On Arch Linux]
$ sudo zypper install busybox      [On OpenSUSE]  
$ sudo apk add busybox             [On  Alpine] 
$ docker run cmd.cat/busybox busybox  [On Docker]  

Wenn Ihre aktuelle Linux-Distribution hier nicht erwähnt wird, können Sie den Link im Abschnitt „Referenzen“ zur Installation überprüfen.

So verwenden Sie BusyBox unter Linux

Führen Sie zunächst den Befehl busybox aus ohne Optionen oder Flags.

# busybox

Die Ausgabe ist eine Liste aller Befehle, die von der busybox unterstützt werden, zusammen mit anderen nützlichen Optionen.

Um die genauen Befehle anzuzeigen, können wir sie wie folgt auflisten:

# busybox --list

Um die Dateigröße der Binärdatei anzuzeigen, schreiben wir.

# cd /usr/sbin/ && du -h busybox  

Ein viel klareres Bild ergibt sich, wenn wir die Optionen eines Befehls aus der Linux-Shell und der Busybox-Shell vergleichen.

# grep --help          [Shell]
# busybox grep --help  [Busybox]

Wie Sie der Ausgabe beider Ausführungen entnehmen können, sind einige der Optionen der Linux-Shell in der Ausgabe von busybox nicht verfügbar. In den meisten Fällen werden wir feststellen, dass die Busybox-Optionen alles sind, was wir brauchen, um bestimmte Aufgaben in gängigen Anwendungen wie IoT-Geräten auszuführen.

Um busybox nutzen zu können Befehlen schreiben wir die Befehle, denen das Schlüsselwort busybox vorangestellt ist, zum Beispiel, um mit dem grep-Befehl, den wir schreiben, nach einer Zeichenkette zu suchen.

# busybox grep "SearchString" file.txt

Der obige Befehl funktioniert ähnlich wie der in einer Linux-Shell.

Alternativ können wir auch auf die busybox-Shell zugreifen und vermeiden, jedes Mal das busybox-Schlüsselwort zu verwenden, wenn wir Befehle wie folgt ausführen müssen.

# busybox sh

In der Shell können wir Befehle ganz normal ausführen, als wären wir in einer Linux-Shell.

# grep "SearchString" file.txt 

Um die Shell zu verlassen, schreiben Sie.

# exit

Busybox wurde unter Berücksichtigung begrenzter Ressourcen und Größenoptimierungen geschrieben. Seine Modularität ermöglicht das Ein- und Ausschließen von Befehlen/Funktionen zur Kompilierzeit, da wir nur Komponenten einschließen können, die wir benötigen, und dies macht es daher einfach, seine Implementierung in Systemen wie mobilen, eingebetteten usw. anzupassen.

Im Allgemeinen brauchen wir in unseren Linux-Systemen keine Busybox, da wir bereits das vollständige Paket haben, wie erwähnt, ist es in Fällen nützlich, in denen wir nur eine begrenzte Menge an Speicherplatz zum Arbeiten haben.


Linux
  1. So verwenden Sie BusyBox unter Linux

  2. Linux vs. Unix:Was ist der Unterschied?

  3. Meistern Sie den Linux-ls-Befehl

  4. Pensela:Das Schweizer Taschenmesser der Screen Annotation Tools

  5. Der Befehl locate unter Linux

Was ist die Shell unter Linux?

Meistern Sie die Linux-Befehlszeile

Das Jahr der Linux-Unzufriedenheit

MX Tools neu aufgelegt - Ein Schweizer Taschenmesser der Pinguine

Der Timer-Befehl in Linux

Die 15 besten Linux-Bootloader für Heim- und eingebettete Systeme