Busybox und deren Befehle
Inhaltsverzeichnis
Einleitung
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 weiter mit auszubauen, bzw. anzupassen.
Busybox
Die Busybox ist ein Programm, das vor allem bei Embedded Systemen zum Einsatz kommt und viele aus der UNIX/Linux Welt bekannte Befehle/Programme in einem einzigen Programm vereint. Die dabei zur Verfügung gestellten Befehle sind aber in der Regel gegenüber ihrem GNU Pendant in ihrer Funktionalität eingeschränkt.
Um sich diese näher anzusehen, verbinden man sich per Telnet mit der Vu+, was dann etwas so aussieht:
Geben wie hier nun "busybox" als Komando ein, werden uns die bekannten Linuxbefehle, die die Vu+-Busybox kennt, aufgelistet:
Zurück zum Inhaltsverzeichnis:
Befehle - für was ist der gefundene Befehl?
Was ein Befehl kann bzw. für was man diesen einsetzten könnte erfährt man, in dem man diesen eintippt und seine Optionen bzw. Aussagen aufruft. Dies erfährt man meist mit "-help", "--help" oder mit "-h" hinter dem Befehl.
Sollte sich mal nichts tun und man kann keine Eingabe mehr machen, kann man
mit der Tastenkombination <Strg> + <C> das ganze abbrechen.
Der Aufruf: "chmod -help" gibt z.B. folgendes aus:
root@vuultimo:~# chmod -help BusyBox v1.15.3 (2011-12-12 17:21:41 CET) 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 Recurse directories
der Aufruf: "grep -h" gibt und folgendes z.B. aus:
root@vuultimo:~# grep -h BusyBox v1.15.3 (2011-12-12 17:21:41 CET) multi-call binary
Usage: grep [-HhrilLnqvsoeFEABC] PATTERN [FILE]...
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 -r Recurse subdirectories -i Ignore case distinctions -l List names of files that match -L List names of files that do not match -n Print line number with output lines -q Quiet. Return 0 if PATTERN is found, 1 otherwise -v Select non-matching lines -s Suppress file open/read error messages -c Only print count of matching lines -o Show only the part of a line that matches PATTERN -m MAX Match up to MAX times per file -F PATTERN is a set of newline-separated strings -E PATTERN is an extended regular expression -e PTRN Pattern to match -f FILE Read pattern from file -A Print NUM lines of trailing context -B Print NUM lines of leading context -C Print NUM lines of output context
Zurück zum Inhaltsverzeichnis:
Wichtige Vu+ Befehle
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
ermöglicht den Wechseln in den Runlevel 4.
Beim Aufruf des Befehl sendet init ein Stopsignal an alle Prozesse,
die nicht für den neuen Runlevel definiert sind. Danach werden die Prozesse
gekillt und die Prozesse für den Runlevel, die noch nicht laufen,
werden gestartet. Dieser Befehl ist insbesondere bei den Vu+ Boxen
hilfreich, wenn das System sich aufgehangen hat, oder wir die Vorgänge
bei der dvbapp verfolgen wollen.
init 3
startet nach einem init 4 (siehe oben) wieder in den Runlevel 3 und startet somit die dvbapp wieder.
enigma2
startet wie init 3 nach einem init 4 (siehe oben) die dvbapp wieder aber man kann in der Konsole die einzelnen Schritte verfolgen und somit evtl. Fehler besser finden.
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
mkfs
wird zum erstellen von Dateisystemen benutzt. Der durch Anstellen eines ".ext3" hinter "mkfs" das Dateisystem ext3 erzeugt
chmod
Dateiattribure ändern (Zugriffsrechte).
Beispiel (Damit machen wir die Datei mc ausführbar):
chmod 755 /usr/bin/mc
mc
ist ein Dateimanager (Midnight Commander)
der bereits auf der Vu+ installiert ist.
free
Speicherverbrauch anschauen (Arbeitsspeicher (RAM) )
df -h
Speicherplatzbedarf anschauen (Flashspeicher, Festplattenspeicher, Netzwerkspeicher ...)
grep
Nach Zeichenketten in Ausgaben (Dateien oder Pipes) filtern.
Beispiele:
- grep "http" /etc/services, um aus der Datei (/etc/services) nur Zeilen mit Zeichenkette http auszugeben.
- 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
Sucht Dateien im Dateisystem
Beispiel: find /media/hdd -name '*findemich.txt*'
Findet alle Dateien im Verzeichnis (inkl. Unterverzeichnisse) /media/hdd die findemich.txt im Dateinamen enthalten
vi DATEINAME
zum Editieren einer Datei direkt auf der Box
Eine Anleitung (die man auch wirklich braucht) dazu findet man hier http://www.fehcom.de/pub/viref.pdf
Eine Alternative zu vi stellt
mcedit DATEINAME
dar.
date
das Datum und die Uhrzeit anzeigen oder manuell setzen
opkg list | grep dvb-modules
ist der Befehl der die dvb-modul (Treiberversion) anzeigt. Der Befehl opkg ist sehr umfangreich, weshalb ein Blick auf die Hilfeseiten von opkg sehr hilfreich ist.
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..
Link zum Forum ⇒ Eine Anleitung mit Telnet-Befehlen für Anfänger
Zurück zum Inhaltsverzeichnis:
Zurück zur Hauptseite