BusyBox

Aus Gemini-Wiki
Wechseln zu: Navigation, Suche
Deutsch.png - in Deutsch English.png - in English
BusyBox Logo

Hier geht es um die Grundlagen der Busybox und den wohl meist verwendeten Befehlen die eben die Busybox beinhaltet. Ihr seid Herzlich willkommen die Erklärungen der wichtigsten Befehle mit weiter auszubauen...

Inhaltsverzeichnis

BusyBox

Die Busybox ist eine Shell und beinhaltet alle bekannten Befehle der Dreambox.
Um sich diese näher anzusehen verbinden wir uns erstmal per Telnet
wie im Kapitel Telnet drüber erklärt mit unserer Dreambox.

Wir starten das Telnet das dann so aussehen kann:

Dreambox-konsole.jpg

Und geben hier nun den Befehl "busybox" ein, daraufhin werden uns die
bekannten Linuxbefehle die die Dreambox kennt aufgelistet.

Busybox.jpg

Befehle - für was ist der gefundene Befehl?

Was ein Befehl kann bzw. für was man diesen einsetzten könnte erfährt man, indem
man diesen eintippt und seine Optionen bzw. Aussagen aufruft. Dies erfährt man
meist mit -help oder mit -h hinter dem Befehl.

Sollte sich mal nichts tun und man kann keine Eingabe mehr machen, kann man
mit der Tastenkombination Ctrl + c das ganze abbrechen.

Der Aufruf: "chmod -help" gibt z.B. folgendes aus:

root@dm800:~# chmod -help
BusyBox v1.01 (2008.11.26-20:45+0000) multi-call binary
 
Usage: chmod [-R] MODE[,MODE]... FILE...
 
Each MODE is one or more of the letters ugoa, one of the
symbols +-= and one or more of the letters rwxst.
 
Options:
        -R      Changes files and directories recursively.

der Aufruf: "grep -h" gibt und folgendes z.B. aus:

root@dm800:~# grep -h
BusyBox v1.01 (2008.11.26-20:45+0000) multi-call binary
 
Usage: grep [-ihHnqvs] PATTERN [FILEs...]
 
Search for PATTERN in each FILE or standard input.
 
Options:
        -H      prefix output lines with filename where match was found
        -h      suppress the prefixing filename on output
        -i      ignore case distinctions
        -l      list names of files that match
        -n      print line number with output lines
        -q      be quiet. Returns 0 if result was found, 1 otherwise
        -v      select non-matching lines
        -s      suppress file open/read error messages

Wichtige Dreambox-Befehle

Beispiel: Passwort setzen per Telnet

passwd

passwd wechselt Passwörter für User- und Gruppenaccounts. Ein Normaluser darf nur sein Passwort ändern, der Superuser darf die Passwörter aller Accounts ändern. Der Administrator einer Gruppe darf das Passwort dieser Gruppe ändern. passwd kann auch die Account-Informationen wie Kommentar, Loginshell oder Passwort-Auslaufzeiten und -intervalle ändern.

init 4

init 4 ermöglich das Wechseln des Runlevels. Beim Aufruf des Befehl sendet init ein Stopsignal an alle Prozesse, die nicht für den neuen Runlevel definiert sind. Danach werden die Prozesse getötet und die Prozesse für den Runlevel, die noch nicht laufen, werden gestartet. Dieser Befehl ist insbesondere bei den Enigma2 Boxen hilfreich, wenn das System sich aufgehangen hat, oder wir die Vorgänge bei Enigma2 verfolgen wollen.

init 3

init 3 startet nach einem init 4 (siehe oben) Enigma2 wieder.

enigma2

enigma2 startet wie init 3 nach einem init 4 (siehe oben) die enigma2 wieder aber man kann in der Konsole die einzelnen Schritte verfolgen und somit evtl. Fehler besser finden.

Weitere Befehle

cat: lautet der Befehl, um Dateien anzuschauen und deren Inhalt
(Beispiel: cat /etc/resolv.conf)


cp: ist ein kopier Befehl um Daten auf der Box zu kopieren.
Beispiel

cp /tmp/DATEINAME /etc/

Zuerst wird er Ursprungsort angegeben und dann das Zielverzeichnis.


mv: steht für "move" als zum Datei verschieben / umbenennen
Beispiel:

mv /etc/TESTNAME /etc/TESTNAME_NEU


fdisk: Partitionierungprogramm


mkfs: wird zum Formatieren benutzt


fsck: Befehl für Dateisystemüberprüfungen


chmod: Dateiattribure ändern (Zugriffsrechte)

Beispiel:

chmod 755 /usr/bin/mc

Damit machen wir die Datei mc ausführbar.


mc: ist ein Dateimanager (Midnight Commander)
der sich bereits auf der Dreambox befindet.


free: Speicherplatz anschauen (Arbeitsspeicher)


df -h: Speicherplatz anschauen


grep: Nach Zeichenketten in Ausgaben (Dateien oder Pipes) filtern.
Beispiele:

  1. grep "http" /etc/services, um aus der Datei (/etc/services) nur Zeilen mit Zeichenkette http auszugeben.
  2. grep -v "^#\|^$" /etc/services, um die Datei (/etc/services) ohne (-v) Kommentarzeilen (^#) und (\|) ohne (-v) Leerzeilen (^$) auszugeben. ^ steht für den Zeilenanfang und $ für das Zeilenende.


find . | grep FILENAME: ist der Befehl zum Auffinden einer Datei


exportfs -v zeigt die Freigaben der NFS-Server an Beispiel:

root@dm8000:~# exportfs -v
/media/hdc1     192.168.0.0/255.255.255.0(rw,async,wdelay,root_squash,all_squash,anonuid=0,anongid=0)
root@dm8000:~#
Beispiel einer Ausgabe von route
Beispiel einer Ausgabe von ifconfig

vi FILENAME zum Editieren einer Datei direkt auf der Box
Eine Anleitung (die man auch wirklich braucht) dazu findet man hier http://www.my-space.li/schule/editor_VI.pdf


date: das Datum und die Uhrzeit anzeigen oder manuell setzen.


rdate: das Datum und die Uhrzeit über das Time Protokoll setzen.


IPKG list | grep dvb-modules ist der Befehl der die dvb-modul (treiberversion) anzeigt.


IPKG list | grep secondstage ist der Befehl der die Version des secondstage anzeigt.


route ist der Befehl zum Einstellen/Auslesen der Netzwerkrouten. Mit route -n erhält man das Standardgateway in der letzten Zeile.


ifconfig ist der Befehl zum Einstellen/Auslesen von Netzwerkparametern. Mit ifconfig erhält man Informationen über die IP-Adresse, Hardwareadresse, übermittelte Datenmenge etc..


opkg update && opkg upgrade ist der Telnet-Befehl um die Paketquellen neu einzulesen und eure Box per Telnet up zu daten...

Tipps und Tricks

Farbige Verzeichnisinhalte anzeigen

Bei OE 2.0 / OE 2.2 basierenden Images von DMM ist das Anzeigen des Verzeichnisinhalts mit dem ls Befehl einfarbig. Wenn ihr ein bisschen Farbe in die Shell zaubern wollt, dann gebt die folgenden beiden Befehle via Telnet oder SSH ein.

echo 'alias ls="ls --color"' >> ~/.profile
 
source ~/.profile

Weiterführende Links und Informationen

BusyBox bei Wikipedia

Offizielle Webpräsenz (englisch)

Weitere Informationen und Beispielanwendungen zu den ganzen Befehlen kann man in den verschiedenen Dreamboxforen, oder da es ja Linux ist auch in den Linuxforen bzw. Linux-Onlinehilfen wie Wikis, HowTo`s und Büchern nachlesen.

An dieser Stelle noch ein Link ins IHAD Forum, wo ein PDF mit einer Zusammenstellung von Linuxbefehlen [1] gepostet wurde, sowie folgender Link zur Beschreibung einfacher Unix Befehle [2]