Zum Inhalt springen

Linux Befehlsreferenz

Linux Befehle

Linux Befehle und Erläuterungen

Die wichtigsten Linux-Befehle, die man regelmäßig benötigt.


Wir listen hier die wichtigsten Linux-Befehle auf und wie man sie anwendet.
Als IRC-Server Betreiber wirst Du regelmäßig Eggdrops oder IRCDs installieren, oft über Source -Dateien.
Daher werden wir hier eine Sammlung an Unix und Linux-Befehlen auflisten, damit Du diese schnell nachschlagen kannst. Dieser Abschnitt ist der Aufwendig, Du kannst Befehle jederzeit hinzufügen.

Es ist nicht unser Ziel ein ultimativen Linux Guide zu erstellen, da es bereits tolle Referenzen und Guides gibt, die mit viel Liebe erstellt, gepflegt und kopiert wurden.

Linux Befehle

Derzeit befinden sich 75 Linux Befehle in diesem Verzeichnis

alias
Der "alias"Befehl kann genutzt werden, um zum Beispiel lange Befehle abzukürzen.
Wird der Befehl alleine ausgeführt, zeigt er alle vorhanden Alias-Einträge an< br />
alias



Anwendung:
alias zeigliste="ls -lisa"

Würde einen Kurzbefehl namens "zeigliste" hinzufügen und damit den Befehl ls -lisa ersetzen.

Es reicht also aus "zeigliste" zu schreiben anstatt "ls -lisa"
Ich nutze aliases, um kompliziertere Befehle abzukürzen, oder um die "kill -all" Befehle schneller zu setzen.

 

 

apt
apt steht für Advanced Packaging Tool . Es ist Paketverwaltungssystem, welches dpkg Paketverwaltung benutzt.
Die meisten Server laufen auf Debian.

Die Befehle müssen in der Regel als ROOT oder Admin ausgeführt werden.
Mit apt-get kann man weitere Befehle schnell und einfach nutzen:

Um auf ein Softwareupdate der installierten  Pakete zu prüfen, ist folgender Befehl möglich:

sudo apt update

Das System prüft die Ressourcenliste und aktuelisiert diese.
Mit

sudo apt update
oder
sudo apt-get upgrade
werden alle Pakete entsprechend aktualisiert


sudo apt-get  install python3.9

Würde versuchen python3.9 zu installieren, sofern diese Software von der Paketverwaltung bereitgestellt wird.

awk
Wer den Befehl grep  oder egreo genutzt hat, wird den  Befehl awk schnell verstehen.

Mit Hilfe von regulären Ausdrücken, kannst Du zum Beispiel Inhalte in Dateien finden.

awk '/irc/' testdatei.txt durchsucht die Datei testdatei.txt nach Zeilen, in denen irc vorkommt

 

Beispiel-Inhalt unserer testdatei.txt

Willkommen!
IRC Mania existiert bereits seit über 20 Jahren.
IRC FAQ
Dies ist ein IRC Portal
Diese Zeile wird nicht ausgegeben, irc ist kleingeschrieben.

 

Der Befehl :
awk '/IRC/' testdatei.txt
Würde 3 von 5 Zeilen ausgeben:

Der Befehl : awk '/irc/' testdatei.txt
hingegen nur eine einzige:

chown

echo

ifconfig

locate
locate , oder mlocate  gehört zu den sehr nützlichen Linux-Befehlen.
Sofern zuvor eine Indexierung stattgefunden hat, kannst Du Dateien über den Befehlssyntax:
class="bash">

locate [Dateiname]

oder


locate -i [Dateiname]





durchführen.
Damit locate die Dateien blitzschnell findet, müssen alle Daten zuvor indexiert werden.
Dies geschieht über
sudo updatedb

Gerade um config, oder andere Dateien zu finden,  ist dieses Werkzeit unglaublich gut.

Alle Optionsmöglichkeiten:

-A, --all only print entries that match all patterns
-b, --basename match only the base name of path names
-c, --count only print number of found entries
-d, --database DBPATH use DBPATH instead of default database (which is
/var/lib/mlocate/mlocate.db)
-e, --existing only print entries for currently existing files
-L, --follow follow trailing symbolic links when checking file
existence (default)
-h, --help print this help
-i, --ignore-case ignore case distinctions when matching patterns
-l, --limit, -n LIMIT limit output (or counting) to LIMIT entries
-m, --mmap ignored, for backward compatibility
-P, --nofollow, -H don't follow trailing symbolic links when checking file
existence
-0, --null separate entries with NUL on output
-S, --statistics don't search for entries, print statistics about each
used database
-q, --quiet report no error messages about reading databases
-r, --regexp REGEXP search for basic regexp REGEXP instead of patterns
--regex patterns are extended regexps
-s, --stdio ignored, for backward compatibility
-V, --version print version information
-w, --wholename match whole path name (default)

man

netconfig

top
Top ist einer der wichtigsten Befehle, wenn Du schnell eine Übersicht der MEM- oder CPU-Auslastung erhalten willst.

Eine sehr gute Liste aller Optionen und HotKeys findest Du unter:
https://wiki.ubuntuusers.de/top/

A

adduser
adduser - Erstellt einen neuen Benutzeraccount.
Beispiel: sudo adduser meinbenutzername erstellt einen neuen Benutzer mit dem Namen meinbenutzername.

apt
apt - Paketmanager für Debian-basierte Linux-Distributionen.
Beispiel:

sudo apt install firefox

installiert den Firefox-Webbrowser.

ar
ar - Befehl zum Erstellen und Manipulieren von Archivdateien.
Beispiel: ar rcs libtest.a test1.o test2.o erstellt eine Bibliothek namens libtest.a aus test1.o und test2.o.

 

awk
Ein leistungsfähiges Textverarbeitungsprogramm, das zum Extrahieren von Informationen aus Textdateien verwendet wird.

Beispiel: awk '{print $1}' datei.txt gibt die erste Spalte von datei.txt aus.

 

B

basename

bash
bash, man liest es so oft !
bash ist ein Unix-Shell-Interpreter.

Beispiel: bash mein_irc_skript.sh führt das Shell-Skript mein_irc_skript.sh aus.

Bash ist ein Unix-Shell-Interpreter, der auf vielen Betriebssystemen verfügbar ist. Es bietet eine schnelle und flexible Möglichkeit, mit dem Betriebssystem zu interagieren und komplexe Aufgaben auszuführen. Die Bash-Shell verfügt über viele integrierte Befehle und unterstützt auch die Verwendung von Skripten, die ausführbare Befehle und Variablen enthalten können. Es ist auch möglich, benutzerdefinierte Funktionen zu erstellen und in Skripten zu verwenden. Bash eignet sich hervorragend zum Automatisieren von Aufgaben und zur Verwaltung von Systemen auf der Kommandozeile.

Zur Info:

es gibt verschiedene Alternativen zum Bash-Shell-Interpreter. Einige Beispiele sind:

  1. Zsh (Z-Shell): Ein erweiterter Shell-Interpreter, der viele Funktionen und Konfigurationsoptionen bietet.

  2. Fish (Friendly Interactive SHell): Eine Shell, die auf eine einfache und benutzerfreundliche Benutzeroberfläche ausgelegt ist und eine automatische Vervollständigung von Befehlen und Variablen bietet.

  3. PowerShell: Eine von Microsoft entwickelte Shell, die hauptsächlich auf Windows-Systemen verwendet wird. Es ist eine leistungsstarke und erweiterbare Shell, die auf der .NET-Plattform basiert.

  4. Tcsh (Tenex C Shell): Eine verbesserte Version der C-Shell mit zusätzlichen Funktionen und Syntaxerweiterungen.


bc
bc - Ein Kommandozeilenrechner mit Unterstützung für höhere Mathematik.
Beispiel: echo "3*4" | bc gibt das Ergebnis von 3*4 aus.

Dieses Beispiel zeigt nun nicht das jeweilige Potenzial:
Vermutlich wirst Du viele Funktionen über die jeweilige Programmiersprache lösen, die Du verwendest.

Dennoch ein kleines Tutorial oder Exkurs über den Linux Befehl bc:

Der Befehl "bc" steht für "basic calculator" und ist ein Kommandozeilenrechner, der in vielen Unix-basierten Betriebssystemen verfügbar ist. Er kann verwendet werden, um mathematische Ausdrücke zu berechnen, die sowohl einfache als auch komplexe Operationen beinhalten.

Das Grundkonzept von "bc" ist einfach: Geben Sie einfach einen mathematischen Ausdruck ein und "bc" gibt das Ergebnis zurück. Zum Beispiel können wir eine einfache Addition wie folgt durchführen:

shell
Copy code
$ echo 2 + 2 | bc
4
Wie Sie sehen können, haben wir den Ausdruck "2 + 2" an den Befehl "echo" übergeben, der den Ausdruck an "bc" weitergeleitet hat. "bc" hat den Ausdruck berechnet und das Ergebnis "4" zurückgegeben.

Neben den grundlegenden arithmetischen Operationen unterstützt "bc" auch fortgeschrittenere mathematische Funktionen wie Trigonometrie, Exponentialfunktionen, Logarithmen und mehr. Hier ist ein Beispiel, das die Verwendung von "sin" (Sinus) zeigt:

$ echo "s(1)" | bc -l
.8414709848
Hier haben wir "s(1)" als Ausdruck angegeben und "-l" als Option verwendet, um die Mathematikbibliothek von "bc" zu laden. "bc" hat den Sinus von 1 berechnet und das Ergebnis zurückgegeben.

"bc" unterstützt auch Variablen, die in mathematischen Ausdrücken verwendet werden können. Hier ist ein Beispiel, das zeigt, wie man Variablen definiert und verwendet:

$ x=5
$ y=7
$ echo $x + $y | bc
12
Hier haben wir die Variablen "x" und "y" definiert und dann den Ausdruck "$x + $y" an "bc" übergeben. "bc" hat die Variablen ausgewertet und das Ergebnis zurückgegeben.

"bc" unterstützt auch die Verwendung von Schleifen und Bedingungen, was es zu einem leistungsstarken Werkzeug zum Schreiben von Skripten macht. Hier ist ein Beispiel, das zeigt, wie man eine Schleife verwendet, um die Fakultät einer Zahl zu berechnen:

$ n=5
$ fact=1
$ while [ $n -gt 1 ]; do
> fact=$(echo "$fact * $n" | bc)
> n=$(echo "$n - 1" | bc)
> done
$ echo $fact
120
Hier haben wir die Variable "n" definiert und dann eine Schleife verwendet, um die Fakultät von "n" zu berechnen. In jedem Schleifendurchlauf wird die Variable "fact" aktualisiert, indem sie mit "n" multipliziert wird, und die Variable "n" wird um eins reduziert, bis sie eins erreicht. Am Ende gibt der Befehl "echo" das Ergebnis der Fakultät aus.

Zusammenfassend ist "bc" ein leistungsstarker Kommandozeilenrechner, der eine breite Palette von mathematischen Operationen unterstützt und auch die Verwendung von Variablen, Schleifen und Bedingungen ermöglicht.

Durch den hier verwendeten Editor , sind die Beispiele etwas untergegangen.

Befehl

bg
Ein recht wichtiger Befehl. Viele Programme werden oft im Vordergrund ausgeführt.
Beendet man das Terminal, so wird auch der Prozess beendet.

Gerade, wenn man auf einer Shell arbeitet, ist dies oft nervig.
bg - Startet einen Prozess im Hintergrund.
Beispiel: firefox & startet den Firefox-Browser im Hintergrund.

Ich nutze es hauptsächlich für meine Rootkit-Scanner und Virenscanner:
zum Beispiel:

sudo rkhunter --check &
[1] 12946
$ ^C
1]+ Angehalten sudo rkhunter --check

Es verbirgt auch Risiken, weil man ggf. Rückmeldungen nicht liest. Ggf. wird der Prozess nicht korrekt geladen, dann muss man die Logfiles prüfen.

 

bind
bind - Ermöglicht das Einrichten und Ändern von Tastaturbefehlen.
Beispiel: bind -p zeigt alle aktuell gebundenen Tastenkombinationen an.

bzip2

C

cat

cd

chmod
In Unix-ähnlichen Betriebssystemen legt der Befehl chmod die Berechtigungen für Dateien oder Verzeichnisse fest.
Dateiname der  Berechtigungen für chmod- Optionen  

Angenommen , Sie sind Eigentümer einer Datei mit dem Namen myfile und möchten ihre Berechtigungen so festlegen , dass:






    1. die U ser Dose r ead, w rite, und e x ecute es;







    1. Mitglieder Ihrer g roup kann r ead und e x ecute es; und







    1. o thers nur r es ead.




 
chmod u = rwx, g = rx, o = r meineDatei

Befehl:

chmod 774 meineDatei

Allerdings kann chmod auch für USB-Ports verwenden.

In Bezug auf USB-Ports wird chmod oft verwendet, um die Zugriffsrechte für Gerätedateien im /dev-Verzeichnis zu ändern, was den Zugriff auf USB-Geräte beeinflussen kann.

Beispiele für die Nutzung von chmod bei USB-Ports



  1. Ändern der Zugriffsrechte für ein USB-Gerät: Angenommen, ein USB-Gerät ist unter /dev/ttyUSB0 gelistet. Um allen Benutzern Lese- und Schreibzugriff zu gewähren, würden Sie folgenden Befehl verwenden: sudo chmod 666 /dev/ttyUSB0.

  2. Einschränkung des Zugriffs: Um den Zugriff auf das Gerät auf den Eigentümer zu beschränken, würden Sie den Befehl sudo chmod 600 /dev/ttyUSB0 verwenden.


Weitere Anwendungen von chmod außerhalb von Datei- und USB-Port-Administration



  • Script-Ausführbarkeit: Um ein Shell-Skript ausführbar zu machen, können Sie chmod +x skript.sh verwenden. Dies erlaubt allen Benutzern, das Skript auszuführen.

  • Sicherheit von privaten Schlüsseln: Bei der Verwendung von SSH-Schlüsseln ist es wichtig, die Dateiberechtigungen richtig zu setzen. Zum Beispiel sollte ein privater Schlüssel (id_rsa) mit chmod 600 id_rsa geschützt werden, um Lese- und Schreibzugriff nur für den Eigentümer zu erlauben.

  • Webserver-Dateiberechtigungen: Bei der Verwaltung eines Webservers müssen Sie möglicherweise die Berechtigungen von Dateien und Verzeichnissen anpassen, um die Sicherheit zu erhöhen und den korrekten Zugriff zu gewährleisten. Zum Beispiel könnten Sie chmod 755 /var/www/html verwenden, um das Verzeichnis für den Eigentümer beschreibbar und für alle anderen lesbar zu machen.

  • Dateiberechtigungen für gemeinsam genutzte Ressourcen: In einer Umgebung, in der mehrere Benutzer auf gemeinsame Ressourcen zugreifen, können Sie chmod verwenden, um zu steuern, wer diese Dateien lesen, schreiben oder ausführen kann. Beispielsweise ermöglicht chmod 774 datei dem Eigentümer und der Gruppe vollen Zugriff, während andere Benutzer sie nur lesen können.



Die Berechtigungen in Unix- und Unix-ähnlichen Systemen wie Linux, die mit dem Befehl chmod (change mode) gesetzt werden, sind in einem Oktalsystem (Basis 8) kodiert, das von 0 bis 7 reicht. Jede Ziffer in diesem System repräsentiert eine unterschiedliche Kombination von Zugriffsrechten. Die Berechtigungen beziehen sich auf drei Arten von Zugriffen: Lesen (read), Schreiben (write) und Ausführen (execute). Hier ist die Bedeutung jeder Zahl von 0 bis 7:

  1. 0: Keine Berechtigungen. Dies bedeutet, dass weder der Eigentümer noch die Gruppe noch andere Benutzer irgendeinen Zugriff (Lesen, Schreiben, Ausführen) auf die Datei oder das Verzeichnis haben.

  2. 1: Ausführungsberechtigung. Erlaubt das Ausführen einer Datei (z. B. ein Programm oder ein Skript), aber weder Lesen noch Schreiben.

  3. 2: Schreibberechtigung. Erlaubt das Schreiben oder Modifizieren einer Datei, aber weder Lesen noch Ausführen.

  4. 3: Schreib- und Ausführungsberechtigungen. Erlaubt das Schreiben/Modifizieren und Ausführen einer Datei, aber kein Lesen.

  5. 4: Leseberechtigung. Erlaubt das Lesen einer Datei oder das Auflisten eines Verzeichnisses, aber weder Schreiben noch Ausführen.

  6. 5: Lese- und Ausführungsberechtigungen. Erlaubt das Lesen und Ausführen einer Datei oder das Auflisten eines Verzeichnisses, aber kein Schreiben.

  7. 6: Lese- und Schreibberechtigungen. Erlaubt das Lesen und Schreiben/Modifizieren einer Datei oder das Auflisten und Ändern eines Verzeichnisses, aber kein Ausführen.

  8. 7: Vollzugriff. Erlaubt Lesen, Schreiben/Modifizieren und Ausführen einer Datei oder das Auflisten, Ändern und Ausführen von Operationen in einem Verzeichnis.


Diese Zahlen werden oft in einer dreistelligen Kombination verwendet, wobei jede Stelle für unterschiedliche Benutzergruppen steht: der Eigentümer (user), die Gruppe (group) und andere (others). Zum Beispiel würde chmod 754 datei dem Eigentümer vollen Zugriff (7), der Gruppe Lesen und Ausführen (5) und anderen nur Lesen (4) gewähren.

chown
chown - Ändert den Eigentümer und die Gruppe von Dateien und Verzeichnissen.
Beispiel: chown meinbenutzer:meinegruppe meine_datei.txt ändert den Eigentümer der Datei auf meinbenutzer und die Gruppe auf meinegruppe.

Ebenfalls eines der wichtigsten Befehle.
Gerade wenn man mit nginx arbeitet und plötzlich zahlreiche Fehlermeldungen erhält 😉

 

chroot

Clear
Der Clear -Befehl räumt Dein Terminal auf.
Ich nutze diesen relativ selten, wenn man sich aber viele Logfiles via "Cat" anschaut, dann dient es der Übersicht

cmp

comm

cp
cp = Copy-Befehl!

Der Copy-Befehl ist wohl einer der wichtigsten Befehle.
Gerade wenn man Sicherungsdateien wiederherstellen oder anlegen möchte
class="line-numbers language-mixed code-toolbar" data-language="mixed" data-trimmed="true">cp [Originalpfad] [Zielpfad]

Beispiel :
cp config.php /home/schutzgeist/backupdateien/
Sofern Du Dich im selben Verzeichnis befindest.
Alternativ kannst Du überall den kompletten Pfad angeben
cp /home/schutzgeist/config.php /home/schutzgeist/backupdateien/

Mehrere Dateien kopieren ?
Kein Problem

cp datei1.conf datei2.conf datei3.con /home/zielordner/

Du kannst auch mit Platzhaltern etc arbeiten

cp * /home/zielordner
würde alle Datien im Ordner in den Zielordner kopieren.

Der CP-Befehl hat noch weitere Optionen.
Willst Du auch alle  Unterverzeichnisse kopieren, so kannst Du den Befehl mit der Option -R (rekursiv) kopieren..

cp * -R /home/zielordner

Der Befehl
cp --help
zeigt Dir alle möglichen Optionen an:



cp --help
Aufruf: cp [OPTION]... [-T] QUELLE ZIEL
oder: cp [OPTION]... QUELLE... VERZEICHNIS
oder: cp [OPTION]... -t VERZEICHNIS QUELLE...
Kopieren von QUELLE nach ZIEL, oder mehreren QUELLE(n) in VERZEICHNIS

Erforderliche Argumente für lange Optionen sind auch für kurze erforderlich.
-a, --archive genau wie -dpR --preserve=all
--attributes-only nicht die Dateidaten, sondern nur die Attribute
kopieren
--backup[=KONTROLLE] eine Sicherung existierender Zieldateien erzeugen
-b wie --backup, akzeptiert aber kein Argument
--copy-contents wenn rekursiv, Inhalt von Spezialdateien kopieren
-d genau wie --no-dereference --preserve=links
-f, --force wenn existierende Zieldatei nicht geöffnet werden
kann, löschen und erneut versuchen (wird bei
Verwendung der Option -n ignoriert)
-i, --interactive vor einem Überschreiben nachfragen (überstimmt
eine vorangehende Option -n)
-H symbolischen Verknüpfungen, die auf der
Kommandozeile als QUELLE angegeben sind,
folgen
-l, --link Dateien verknüpfen, statt sie zu kopieren
-L, --dereference symbolischen Verknüpfungen in QUELLE immer folgen
-n, --no-clobber keine existierenden Dateien überschreiben
(übersteuert eine vorangehende Option -i)
-P, --no-dereference symbolischen Verknüpfungen in QUELLE nie folgen
-p genau wie --preserve=mode,ownership,timestamps
--preserve[=ATTR_LIST] angegebene Datei‐Attribute erhalten wenn möglich
(Voreinstellung: mode,ownership,timestamps;
weitere Attribute: context, links, xattr, all)
-c deprecated, same as --preserve=context
--no-preserve=ATTR_LIST Angegebene Attribute nicht erhalten
--parents kompletten Quell‐Pfad an VERZEICHNIS anhängen
-R, -r, --recursive Verzeichnisse rekursiv kopieren
--reflink[=WANN] Klon/CoW Kopien kontrollieren. Siehe unten
--remove-destination jede Zieldatei vor dem Versuch, sie zu öffnen,
löschen (im Gegensatz zu --force)
--sparse=WANN Erstellung von Dateien mit Löchern (s. u.) steuern
--strip-trailing-slashes Schrägstriche vom Ende jedes QUELLE‐Arguments
entfernen
-s, --symbolic-link symbolische Verknüpfungen erzeugen anstatt
zu kopieren
-S, --suffix=ENDUNG Standard-Sicherungs‐Dateiendung ändern
-t, --target-directory=VERZ alle QUELLE‐Argumente in VERZ kopieren
-T, --no-target-directory ZIEL als normale Datei behandeln
-u, --update nur kopieren, wenn die QUELL‐Datei neuer ist
als die Zieldatei oder die Zieldatei nicht
existiert
-v, --verbose durchgeführte Tätigkeiten erklären
-x, --one-file-system in diesem Dateisystem verbleiben
-Z den SELinux-Sicherheitskontext der Zieldatei
auf den Standardtyp setzen
--context[=KTXT] Wie -Z, oder, wenn KTXT angegeben wurde, den
SELinux- oder SMACK-Sicherheitskontext auf
KTXT setzen
--help diese Hilfe anzeigen und beenden
--version Versionsinformation anzeigen und beenden

Standardmäßig werden QUELL‐Dateien mit Löchern („sparse“) durch eine einfache
Heuristik erkannt und die korrespondierenden ZIEL‐Dateien werden ebenfalls
„sparse“ gemacht. Dieses Verhalten wird mit --sparse=auto ausgewählt. Geben
Sie --sparse=always an, um „sparse“‐ZIEL‐Dateien zu erzeugen, wenn die
QUELL-Datei eine ausreichend lange Sequenz aus Null‐Bytes enthält.
Verwenden Sie --sparse=never, um das Erzeugen von „sparse“‐Dateien zu
verhindern.

Wird --reflink[=always] angegeben, wird eine leichtgewichtige Kopie gemacht,
bei der die Datenblöcke nur dann kopiert werden, wenn sie sich geändert haben.
Wenn dies nicht möglich ist, scheitert das Kopieren. Wurde --reflink=auto
angegeben, wird stattdessen eine normale Kopie angelegt.

Die Endung für Sicherheitskopien ist „~“, außer wenn sie mittels --suffix
oder SIMPLE_BACKUP_SUFFIX explizit festgelegt wurde. Die Methode der
Versionskontrolle kann mit --backup oder Umgebungsvariable VERSION_CONTROL
festgelegt werden. Mögliche Werte sind:

none, off Niemals Sicherung erzeugen (selbst wenn --backup
angegeben wurde)
numbered, t Erzeugen von nummerierten Sicherheitskopien
existing, nil Nummeriert wenn nummerierte Backups existieren, sonst einfach.
simple, never Immer einfache Sicherheitskopien erzeugen

Als Spezialfall erzeugt cp eine Sicherheitskopie von QUELLE, wenn die Optionen
„force“ und „backup“ angegeben wurden und QUELLE und ZIEL der gleiche Name für
eine vorhandene reguläre Datei sind.

cpio
cpio --help
Aufruf: cpio [OPTION...] [Zielverzeichnis]
GNU cpio kopiert Dateien in und aus Archiven

Beipiele:
# In einer Namensliste benannte Dateien ins Archiv kopieren
cpio -o < Namensliste [> Archiv]
# Dateien aus dem Archiv entpacken
cpio -i [< Archiv]
# In einer Namensliste benannte Dateien in Zielverzeichnis kopieren
cpio -p Zielverzeichnis < Namensliste

Haupt-Operationsmodus
-i, --extract Dateien aus einem Archiv entpacken (im
Hineinkopiermodus ausführen)
-o, --create Das Archiv anlegen (im Herauskopiermodus
ausführen)
-p, --pass-through Im Durchlaufmodus ausführen
-t, --list Ein Inhaltsverzeichnis der Eingabe anzeigen

In jedem Modus mögliche Operatoren:

--block-size=BLOCKGRÖßE I/O-Blockgröße auf BLOCKGRÖßE * 512 Bytes
setzen
-B I/O-Blockgröße auf 5120 Bytes setzen
-c Identical to "-H newc", use the new (SVR4)
portable format. If you wish the old portable
(ASCII) archive format, use "-H odc" instead.
-C, --io-size=NUMMER Die I/O-Blockgröße auf die angegebene ANZAHL an
Bytes festlegen
-D, --directory=VERZ Ins Verzeichnis VERZ wechseln
--force-local Archivdatei ist lokal, obwohl deren Name
Doppelpunkte enthält
-H, --format=FORMAT Angegebenes Archiv-FORMAT verwenden
--quiet Anzahl der kopierten Blöcke nicht ausgeben
-R, --owner=[BENUTZER][:.][GRUPPE]
Die Eigentumsrechte aller erzeugten Dateien auf
die angegebenen Werte für BENUTZER und/oder
GRUPPE setzen
-v, --verbose Verarbeitete Dateien ausführlich listen
-V, --dot Einen ».« für jede verarbeitete Datei ausgeben
-W, --warning=FLAG Warnanzeige. Aktuelles FLAG ist eines von
»none«, »truncate«, »all«. Mehrfach
angegebene Optionen werden gespeichert.

Im Hineinkopier- und Herauskopier-Modus gültige Operatoren

-F, --file=[[BENUTZER@]HOST:]DATEINAME
Diesen DATEINAMEN anstelle der Standardeingabe
oder -ausgabe verwenden. BENUTZER und HOST können
optional angegeben werden, wenn das Archiv auf
einem entfernten Rechner liegt
-M, --message=ZEICHENKETTE ZEICHENKETTE ausgeben, wenn des Ende des
Datenträgers oder Sicherungsmediums erreicht ist
--rsh-command=BEFEHL Statt »rsh« den BEFEHL benutzen

Nur im Hineinkopiermodus mögliche Operatoren:

-b, --swap Sowohl »Halfwords« als auch Bytes der
»Halfwords« in den Daten vertauschen.
Äquivalent zu -sS
-f, --nonmatching Nur Dateien kopieren, denen keines der angegegeben
Muster entspricht
-I [[BENUTZER@]HOST:]DATEINAME Anstelle der Standardeingabe zu verwendender
Name der Archivdatei. BENUTZER und HOST können
optional angegeben werden, wenn das Archiv auf
einem entfernten Rechner liegt
-n, --numeric-uid-gid In der ausführlichen Inhaltstabelle UID und GID
numerisch anzeigen
-r, --rename Dateien interaktiv umbenennen
-s, --swap-bytes Die Bytes jedes »Halfwords« in den Dateien
vertauschen
-S, --swap-halfwords Die »Halfwords« jedes Worts (4 Bytes) in den
Dateien vertauschen
--to-stdout Dateien auf die Standardausgabe entpacken

-E, --pattern-file=DATEI Zusätzliche Muster aus DATEI lesen, die Namen zu
entpackender Dateien enthalten
--only-verify-crc When reading a CRC format archive, only verify the
checksum of each file in the archive, don't
actually extract the files

Nur im Herauskopiermodus mögliche Operatoren:

-A, --append Dateien an ein existierendes Archiv anfügen
--device-independent, --reproducible
Geräteunabhängige (reproduzierbare) Archive
erzeugen
--ignore-devno Gerätenummern nicht speichern
-O [[BENUTZER@]HOST:]DATEINAME Anstelle der Standardausgabe zu verwendender
Name der Archivdatei. BENUTZER und HOST können
optional angegeben werden, wenn das Archiv auf
einem entfernten Rechner liegt
--renumber-inodes Inodes neu nummerieren

Nur im Durchlaufmodus mögliche Operatoren:

-l, --link Dateien verknüpfen anstatt diese zu kopieren,
wenn möglich

Im Hineinkopier- und Herauskopiermodus gültige Operatoren:

--absolute-filenames Dateisystempräfixe nicht aus den Dateinamen
entfernen
--no-absolute-filenames Alle Dateien relativ zum aktuellen Verzeichnis
anlegen

Im Herauskopier- und Durchlaufmodus gültige Operatoren:

-0, --null Dateinamen in der Liste werden von einem
Null-Zeichen anstelle eines Zeilenumbruchs beendet

-a, --reset-access-time Zugriffszeiten der Dateien nach dem Lesen
zurücksetzen
-L, --dereference Symbolische Verknüpfungen dereferenzieren
(Zieldateien anstelle der Verknüpfungen
kopieren)

Im Hineinkopier- und Durchlaufmodus gültige Operatoren:

-d, --make-directories Übergeordnete Verzeichnisse anlegen, falls
nötig
-m, --preserve-modification-time
Letze Änderungszeiten beim Erstellen von Dateien
behalten
--no-preserve-owner Die Eigentumsverhältnisse der Dateien nicht
ändern
--sparse Dateien mit großen Null-Blöcken als
Sparse-Dateien schreiben
-u, --unconditional Alle Dateien bedingungslos ersetzen

-?, --help Diese Hilfeliste ausgeben
--usage Eine kurze Aufrufmeldung ausgeben
--version Programmversion ausgeben

Notwendige oder optionale Argumente für lange Optionen sind ebenso notwendig
oder optional für die entsprechenden kurzen Optionen.

cron

curl
Wird nur noch selten genutzt oder darauf verwiesen:

curl - Ein Tool zum Abrufen von Daten von Servern.
Beispiel: curl http://example.com ruft die Homepage von example.com ab.

Die meisten verwenden wohl wget, allerdings gibt es hier starke Unterschiede.

Curl kann für viele Dinge genutzt werden und ist dadurch deutlich mächtiger!

Sowohl "curl" als auch "wget" sind Befehlszeilen-Tools, die verwendet werden, um Dateien von einem Server herunterzuladen. Der Hauptunterschied zwischen ihnen liegt in den Funktionen, die sie bieten.

"Curl" ist ein vielseitiges Werkzeug, das mehrere Protokolle unterstützt, darunter HTTP, HTTPS, FTP, SCP, SFTP und mehr. Es kann Dateien von URLs, FTP-Servern und SFTP-Servern herunterladen und unterstützt auch den Upload von Dateien. "Curl" kann auch benutzerdefinierte Header und Cookies senden und kann sogar zur Durchführung von Tests von RESTful-APIs verwendet werden.

"Wget" ist hauptsächlich ein Tool zum Herunterladen von Dateien über HTTP, HTTPS und FTP-Protokolle. Es bietet Funktionen wie das Herunterladen von Dateien im Hintergrund, das Fortsetzen von unterbrochenen Downloads und das Rekursiv-Download von Dateien. Es kann auch verwendet werden, um eine komplette Website einschließlich Unterseiten und Bilder herunterzuladen.

Ein weiterer wichtiger Unterschied zwischen "curl" und "wget" liegt in der Art und Weise, wie sie auf eine fehlerhafte Verbindung reagieren. Wenn "curl" auf eine fehlerhafte Verbindung stößt, gibt es den Fehler aus und geht zum nächsten Befehl über. "Wget" versucht dagegen, die Verbindung wiederherzustellen, bevor es aufgibt.

Insgesamt ist "curl" eine bessere Wahl, wenn Sie mehr Funktionen benötigen, wie das Senden von Cookies oder benutzerdefinierten Headern oder wenn Sie mehrere Protokolle unterstützen möchten. "Wget" ist eine gute Wahl, wenn Sie einfach Dateien von einem Server herunterladen möchten und eine bessere Unterstützung für den Download von Websites und Rekursion benötigen.

D

declare
declare ist kein typischer Befehl und wir nutzen diesen häufiger in unserem Bash-Scripting - Workshop.

Ein gute Übersicht und Einführung findest Du auf https://linuxhint.com/bash_declare_command/

demsg
demsg ist die Abkürzung für display message und eines wichtigsten Befehle, mit denen jedoch die wenigsten Linuxnutzer arbeiten.

Aber wer zum Beispiel USB- Probleme analysiert, wird neben "lusb" auch an dmesg nicht vorbeikommen.

 

Der dmesg-Befehl ist ein wesentliches Werkzeug im Arsenal eines jeden Linux-Administrators oder -Benutzers. Er steht für "display message" und ist entscheidend für die Diagnose und das Verständnis von Vorgängen im Linux-Kernel. dmesg gibt den Inhalt des Ringpuffers des Kernels aus, der Informationen über Hardware-Geräte, Treiber, Systeminitialisierungen und andere Kernel-bezogene Nachrichten enthält.

Fokus von dmesg


Der Hauptfokus von dmesg liegt in der Fehlersuche und Systemüberwachung. Es hilft, Probleme mit der Hardware-Erkennung zu diagnostizieren, Systemstarts zu überprüfen und ungewöhnliche oder fehlerhafte Vorgänge im Zusammenhang mit dem Kernel aufzuspüren.

Alternativen zu dmesg


 

Beispiele der Nutzung von dmesg


 



    1. Hardware-Probleme identifizieren: Beim Anschließen eines neuen Geräts an den Computer kann dmesg verwendet werden, um zu überprüfen, ob der Kernel das Gerät erkennt und ob Treiber korrekt geladen werden. Beispielsweise zeigt dmesg | grep USB Informationen zu USB-Geräten an.




 



    1. Boot-Probleme analysieren: dmesg ist besonders nützlich, um Probleme beim Systemstart zu diagnostizieren. Wenn ein Computer unerwartet lange zum Booten benötigt, kann die Überprüfung der dmesg-Ausgabe Hinweise auf den Verzögerungsgrund liefern.




 



    1. Treiber-Fehlersuche: Entwickler und Systemadministratoren können dmesg nutzen, um Probleme mit Treibern zu diagnostizieren. Wenn ein Treiber abstürzt oder sich unerwartet verhält, liefert dmesg oft wertvolle Informationen zur Fehlerbehebung.




 

 

Obwohl dmesg für viele Zwecke geeignet ist, gibt es Situationen, in denen andere Werkzeuge besser geeignet sein können:



    1. journalctl: Ein Teil des systemd-Systems, bietet detaillierte Log-Informationen, einschließlich der vom Kernel generierten.




 



    1. syslog/rsyslog: Diese traditionellen Loggingsysteme bieten eine breitere Palette von Logging-Informationen, nicht nur vom Kernel, sondern auch von verschiedenen Systemdiensten.




 



    1. tail -f /var/log/kern.log: Für Systeme, die ihre Kernel-Logs in eine Datei schreiben, kann tail -f verwendet werden, um Live-Updates dieser Logs zu erhalten.




 

Wofür habe ich es zuletzt verwendet.
Ich habe versucht meinen Laser-Gravierer Atomstack A10 mittels Lightburn unter Fedora 39 zu installieren.
Lightburn hat den Gravierer nicht gefunden .
Mit lsub konnte ich feststellen, ob das System den Gravierer erkannt hat,
mit "demsg" die Treiberfehler " feststellen und beheben.

 


df
Mit dem df Befehl zeigt Dir den verfügbaren Speicherplatz im Datei-System an.
Die schnellste Übersicht erhältst Du mit dem Befehl:
font-family: terminal, monaco, monospace">df -h 

eine Sortierung des gesamten Verbrauches kann man schnell über
du -h --max-depth 1 ./ | sort -h

E

eval

exec

exit

F

find

free

G

grep

gzip

H

help

history

I

ifup

info

L

less

ls

lsmod

Der Befehl lsmod (list modules)


Dieser zeigt Dir alle aktuell geladenen Kernel-Module Deines Systems an.
Kernel-Module sind essentielle Komponenten, die Funktionen wie Hardware-Unterstützung (z. B. für Grafikkarten, Netzwerkkarten) und Systemdienste bereitstellen.

Nutzung von lsmod unter Linux


Öffne ein Terminal und gib einfach lsmod ein. Du erhältst eine Liste aller Module, die aktuell im Kernel Deines Linux-Systems geladen sind.

Die Ausgabe des Befehls lsmod umfasst drei Spalten:

Module  | Name des Moduls  | Size : belegter RAM-Speichers in Bytes

Used by
Abhängige Module

Ein Teil meiner Ausgabe:

$ lsmod
Module Size Used by
xt_mark 12288 2
xt_connmark 12288 6
xt_comment 12288 10
tun 69632 2
vfat 20480 1
fat 106496 1 vfat
uinput 20480 0
rfcomm 102400 16
snd_seq_dummy 12288 0
snd_hrtimer 12288 1
nf_conntrack_netbios_ns 12288 1
nf_conntrack_broadcast 12288 1 nf_conntrack_netbios_ns
nft_fib_inet 12288 1
nft_fib_ipv4 12288 1 nft_fib_inet
nft_fib_ipv6 12288 1 nft_fib_inet
nft_fib 12288 3 nft_fib_ipv6,nft_fib_ipv4,nft_fib_inet
nft_reject_inet 12288 10
nf_reject_ipv4 16384 1 nft_reject_inet
nf_reject_ipv6 20480 1 nft_reject_inet
nft_reject 12288 1 nft_reject_inet
nft_ct 24576 8
nft_chain_nat 12288 3
ip6table_nat 12288 0
ip6table_mangle 12288 0
ip6table_raw 12288 0
ip6table_security 12288 0
iptable_nat 12288 0
nf_nat 65536 3 ip6table_nat,nft_chain_nat,iptable_nat
nf_conntrack 200704 5 nf_nat,nft_ct,nf_conntrack_netbios_ns,nf_conntrack_broadcast,xt_connmark
nf_defrag_ipv6 24576 1 nf_conntrack
nf_defrag_ipv4 12288 1 nf_conntrack



Weitere Beispiele und Nutzen von lsmod


Überprüfe geladene Module:


Ein schneller lsmod-Befehl kann Dir zeigen, ob bestimmte Treiber, wie z.B. für eine neu installierte Grafikkarte, Laser-Gravierer, korrekt geladen sind.

Fehlersuche: Hast Du Probleme mit einem Gerät? Überprüfe mit lsmod, ob der entsprechende Treiber geladen ist. Fehlt er, weißt Du, wo Du ansetzen musst.

Optimierung Deines Systems: Manchmal sind Module geladen, die Du nicht brauchst.
Mit lsmod kannst Du überprüfen, ob unnötige Module Ressourcen verbrauchen.

Lerne Dein System über den Befehl kennen, oder auch fremde Systeme.
Für Linux-Einsteiger ist lsmod eine tolle Möglichkeit, mehr über die Funktionsweise des Systems zu erfahren.

Wer für LPI-Module lernt, muss sich ebenfalls mit diesen essenziellen Befehlen beschäftigen.

Kurze Beispiele
$ lsmod | fgrep -i snd_hda_intel

Sucht Dir nur Inhalte raus, die das jeweilige Suchmuster enthalten.
$ modprobe -r snd-hda-intel

Ein Befehl zum "entladen" eines Modules und zusammenhängende Module.

Das tolle ist, Du kannst diese Module "laden" und "entladen" während Du mit dem System arbeitest.
Und.... Du kannst die Parameter dieser Module ebenfalls anpassen.
Du findest die dazu passende Datei in

/etc/modprobe.conf/

Ein Beispiel meines Systems
Ausgabe von "ls" im Ordner "/etc/modprobe.d/"



modprobe.d]$ ls
appletalk-blacklist.conf floppy-blacklist.conf lockd.conf rose-blacklist.conf
atm-blacklist.conf kvm.conf netrom-blacklist.conf sctp-blacklist.conf
ax25-blacklist.conf l2tp_eth-blacklist.conf nfc-blacklist.conf v4l2loopback.conf
batman-adv-blacklist.conf l2tp_ip-blacklist.conf nvdimm-security.conf vhost.conf
blacklist.conf l2tp_netlink-blacklist.conf nvidia-installer-disable-nouveau.conf
firewalld-sysctls.conf l2tp_ppp-blacklist.conf rds-blacklist.conf


Wir sehen hier einige conf-Files und uns fällt das Wort "blacklist" schnell ins Auge.

Hier können wir den Linux-Befehl modinfo nutzen


Modinfo gibt Informationen über die jeweiligen Module aus:
zum Beispiel  mit der Erweiterung -p

modinfo -p nouveau
Ausgabe: (Beispiel)

vram_pushbuf:Create DMA push buffers in VRAM (int)
kms_vram_pushbuf:Place EVO/NVD push buffers in VRAM (default: auto) (int)
tv_norm:Default TV norm.
Supported: PAL, PAL-M, PAL-N, PAL-Nc, NTSC-M, NTSC-J,
hd480i, hd480p, hd576i, hd576p, hd720p, hd1080i.
Default: PAL
*NOTE* Ignored for cards with external TV encoders. (charp)
mst:Enable DisplayPort multi-stream (default: enabled) (int)
tv_disable:Disable TV-out detection (int)
ignorelid:Ignore ACPI lid status (int)
duallink:Allow dual-link TMDS (default: enabled) (int)
hdmimhz:Force a maximum HDMI pixel clock (in MHz) (int)
config:option string to pass to driver core (charp)
debug:debug string to pass to driver core (charp)
noaccel:disable kernel/abi16 acceleration (int)
modeset:enable driver (default: auto, 0 = disabled, 1 = enabled, 2 = headless) (int)
atomic:Expose atomic ioctl (default: disabled) (int)
runpm:disable (0), force enable (1), optimus only default (-1) (int)

Diesen Befehl kannst Du auch für alle anderen Module verwenden, die Du geladen oder vorliegen hast.




Zurück zur blacklist.conf:


In der Datei:

/etc/modprobe.d/blacklist.conf

kannst Du die Module eintragen, die auch nicht automatisch geladen werden sollen, um Systemprobleme zu vermeiden.
Gerade bei Grafikkarten oder Treibern oft eine der am meisten genutzten Funktionen.

Allgemeine Randnotiz.
Egal, ob Du lspci, lsusb oder lsmod nutzt, die greifen auf die gespeicherten Hardwareinformationen zurück.

Diese werden in den Verzeichnissen /proc /sys gesoeichert.

Nutze den cat-Befehl für folgende Verlinkungen

/proc/cpuinfo

/proc/interrupts

/proc/dma

Zum Beispiel

 
cat /proc/cpuinfo

Meine Ausgabe:
$ cat /proc/cpuinfo
processor : 0
vendor_id : AuthenticAMD
cpu family : 21
model : 1
model name : AMD FX(tm)-6200 Six-Core Processor
stepping : 2
microcode : 0x600063e
cpu MHz : 1407.995
cache size : 2048 KB
physical id : 0
siblings : 6
core id : 0
cpu cores : 3
apicid : 16
initial apicid : 0
fpu : yes
fpu_exception : yes
cpuid level : 13
wp : yes
flags : fpu vme .......

 

und mehr.
Dasselbe kannst Du auch auf die anderen proc-Dateien cd /sys/verwenden.

Schau Dir den Ordner /proc/ mit ls an. Du wirst überrascht sein uptime, devices, vmstat version und viele anderen Informationen zu finden, die Du ggf. schon immer wissen wolltest.
Ganz einfach, auch per Text-Editor einsehbar.

Du kannst dies ebenfalls für den Sys-Ordner durchführen, allerdings sind hier die Ausgaben komplexer. Ich selbst schaue da selten/nie hinein.

Hier werden auch die Kerneldaten gespeichert.
lsmod haben wir schon etwas verlassen, aber da wir nun proc und sys -Daten besprochen haben, möchte ich noch einen kleinen Hinweis auf

den "/dev/" bzw. "/dev/hda/" geben.
Auch hier haben wir Hardwareinformationen gespeichert. Zum beispiel die IDE-Kanäle/Geräte.

Auch hier schauen wir uns das Chaos über den Linux-Befehl :
ls /dev/

einmal an.
Auffallend sind hier die tty*, usvmon*,loop* und Dateien.
In diesem Fall interessieren uns die /dev/hda*  Orte.
Dieses könnten IDE-Festplatten repräsentieren.

 

Nun haben wir den lsmod-Befehl schon etwas verlassen, sind aber noch im Bereich Hardwareinformationen geblieben.

 

lspci

Der lspci-Befehl,


kurz für list PCI, ist ein wichtiges und notwendiges Werkzeug in Linux-Distributionen wie Ubuntu, Fedora, Debian und CentOS.
Es liefert detaillierte Informationen über PCI-Geräte wie Grafikkarten, Netzwerkkarten, Soundkarten, USB-Controller und mehr.
Eben alles, was am PCI-Port angeschlossen werden kann und ist.

Grundlegende Nutzung von lspci


Um eine einfache Liste aller PCI-Geräte anzuzeigen, öffne einfach ein Terminal und gib ein:
 
lspci

Diese Eingabe liefert eine übersichtliche Liste aller PCI-Geräte, einschließlich Hersteller und Gerätetyp.

Beispielausgabe
$ lspci
00:00.0 Host bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD9x0/RX980 Host Bridge (rev 02)
00:03.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890/RD9x0 PCI to PCI bridge (PCI Express GFX port 1)
00:09.0 PCI bridge: Advanced Micro Devices, Inc. [AMD/ATI] RD890/RD9x0/RX980 PCI to PCI bridge (PCI Express GPP Port 4)

 

 

Erweiterte Optionen und Beispiele


Detaillierte Informationen: Um tiefergehende Details zu erhalten, kannst Du den Befehl

lspci -v

nutzen. Dies zeigt Informationen wie IRQ, Speicheradressen und Treiber.

Suche nach spezifischen Geräten: Möchtest Du Informationen über deine Grafikkarte?
lspci | grep VGA

filtert die Ergebnisse und zeigt nur Deine VGA-Geräte an.

Kernel-Treiber und Module:


Mit
lspci -k

siehst Du, welche Kernel-Treiber jedes Gerät nutzt – essentiell für die Fehlersuche bei Linux Treiberproblemen.

Numerische IDs und Hersteller:


Für Entwickler und fortgeschrittene Nutzer liefert

lspci -nn


numerische IDs von Herstellern und Geräten, was bei der Treibersuche hilfreich ist.

Der Nutzen von "lspci" im Troubleshooting-Alltag


Läuft mal ein angeschlossener Drucker, Laser-Gravierer oder sonstiges nicht, so lohnt es sich, die jeweiligen Konfigurationen und Integrationen anzuschauen.
Ist es Treiberproblem oder doch ein Hardwareschaden .
Befehle wie  dmesg, lsusb, lspcu usw.


lspci Befehl für die Systemdiagnose:



Schnelle Überprüfung der angeschlossenen Hardware.

Treiberkonfiguration:



  • Identifiziere Geräte, um die passenden Treiber zu finden oder zu überprüfen.

  • Systemüberwachung: Behalte die Konfiguration und Änderungen deiner Hardware im Auge.


 

lsusb
list USB - Siehe auch "demsg"

Der Befehl lsusb in Linux ist ein wichtiger Befehl, der Informationen über USB-Geräte liefert, die an Ihren Computer angeschlossen sind. Er steht für "list USB" und zeigt Details wie den Hersteller, das Produkt, die Geräte-ID und die Bus-Informationen der USB-Geräte.

Interpretation der Ausgabe von lsusb


Beispiel:
lsusb
Bus 001 Device 001: ID 1d6b:0001 Linux Foundation 1.1 root hub
Bus 001 Device 002: ID 0a12:0001 Cambridge Silicon Radio, Ltd Bluetooth Dongle (HCI mode)
Bus 001 Device 003: ID 1e7d:303e ROCCAT [unknown]


Wenn Sie lsusb im Terminal eingeben, erhalten Sie eine Liste der angeschlossenen USB-Geräte. Jede Zeile entspricht einem Gerät und enthält mehrere Informationen:

  1. Bus-ID: Zeigt an, an welchem USB-Bus das Gerät angeschlossen ist.

  2. Geräte-ID: Eine eindeutige Nummer, die dem Gerät auf diesem Bus zugewiesen ist.

  3. Geräte-ID: Besteht aus zwei Teilen - idVendor und idProduct. idVendor identifiziert den Hersteller des Geräts, während idProduct das spezifische Modell identifiziert.

  4. Weitere Informationen: Zusätzliche Details wie Herstellername, Produktname und die Geräteversion.


Erkennung und Behebung von USB-Problemen mit lsusb



  • Geräteerkennung: Wenn ein USB-Gerät nicht funktioniert, können Sie lsusb verwenden, um zu überprüfen, ob das Gerät vom System überhaupt erkannt wird.

  • Hersteller- und Produkt-ID: Die IDs helfen dabei, die richtigen Treiber für das Gerät zu finden oder zu überprüfen, ob die richtigen Treiber bereits installiert sind.

  • Problembehebung: Fehlt ein Gerät in der lsusb-Ausgabe, kann dies auf ein Problem mit dem USB-Port, dem Kabel oder dem Gerät selbst hinweisen.


Weitere wichtige Befehle zur Analyse und Behebung von Problemen mit Endgeräten



  1. dmesg: Dieser Befehl zeigt Kernel-Nachrichten und kann helfen, Probleme zu identifizieren, die während der Geräteerkennung oder beim Laden von Treibern aufgetreten sind.

  2. lsmod: Listet alle momentan geladenen Kernel-Module auf. Dies kann hilfreich sein, um zu überprüfen, ob die benötigten Treibermodule für das USB-Gerät geladen sind.

  3. modprobe: Mit diesem Befehl können Sie Module im Linux-Kernel laden oder entfernen. Nützlich, wenn Sie ein spezifisches Treibermodul für ein USB-Gerät laden müssen.

  4. udevadm: Ein Tool zur Interaktion mit dem udev-System, das dynamisch Gerätedateien im /dev-Verzeichnis erstellt und verwaltet. Besonders hilfreich, um detaillierte Informationen über ein Gerät zu erhalten und udev-Regeln zu debuggen.

  5. lspci: Ähnlich wie lsusb, aber für PCI-Geräte. Nützlich, um Probleme mit Geräten zu diagnostizieren, die an PCI-Busse angeschlossen sind, was indirekt USB-Probleme beeinflussen kann.


Diese Befehle bieten eine umfassende Grundlage für die Fehlersuche bei USB- und anderen Hardware-Problemen unter Linux. Sie ermöglichen es Ihnen, Probleme zu identifizieren und zu beheben, die von einfachen Erkennungsproblemen bis hin zu komplexen Treiber- oder Hardware-Konflikten reichen.

M

man

mkdir

mkdirhier

mv

N

netstat

notify-send

notify-send - Linux Befehl


 

notify-send gehört zum "libnotify"Bibliothekspaket und wird verwendet um Popip-Fenster oder Benachrichtigungen auf den Desktop zu senden.

Ich persönlich erinnere mich so an tägliche arbeiten und muss dafür keine unseriöse Browsererweiterung nutzen, oder Drittsoftware.
In Verbindung mit Crontabs kannst Du Dir so regelmäßig nachrichten senden : "Checke Dein Postfach, prüfe was auch immer...."

 

Einfache Benachrichtigung:


Öffne Dein Terminal und gebe folgendes ein:

notify-send "Hallo Welt"

Dieser Befehl zeigt eine einfache Benachrichtigung mit dem Text "Hallo Welt" an.

 

Benachrichtigung mit Titel und Nachricht:


 
notify-send "Erinnerung" "Prüfe die IRC-Server Logs"

Hier wird eine Benachrichtigung mit dem Titel "Erinnerung" und dem Nachrichtentext "Prüfe die IRC-Server Logs" angezeigt.

 

Benachrichtigung mit Ablaufzeit:


notify-send -t 10000 "Pause" "Relaxe für 10 Minute"

Diese Benachrichtigung wird für 10000 Millisekunden (10 Sekunden) angezeigt und verschwindet dann automatisch.

 

Benachrichtigung mit Icon:


 
notify-send -i info "Update" "Dein IRC-Server ist aktuell!  "

Zeigt eine Benachrichtigung mit einem Info-Symbol und dem Text "Dein IRC-Server ist aktuell!" an

Um eigene Bilder als Icons zu verwenden, gib einfach den vollen Pfad zum Bild an. Nehmen wir an, Du hast ein Bild namens mein-icon.png in Deinem Home-Verzeichnis. Du kannst es dann mit dem notify-send Befehl wie folgt verwenden:
notify-send -i /home/dein_username/mein-icon.png "Titel" "Nachrichtentext"

 

Die verfügbaren Icons, die Du mit notify-send -i verwenden kannst, hängen von den Icon-Themen ab, die auf Ihrem Linux-System installiert sind. Normalerweise sind diese Icons Teil der Standard-Icon-Themen wie Adwaita, Faenza, Papirus oder anderen, die Du möglicherweise installiert hast.

Um eine Liste der verfügbaren Icons zu erhalten, können Sie die Icons im Icons-Verzeichnis Ihres Systems durchsuchen. Die gängigen Pfade für diese Verzeichnisse sind:

/usr/share/icons/
~/.local/share/icons/
/usr/share/pixmaps/
In diesen Verzeichnissen findest  Du verschiedene Icons, die in unterschiedlichen Größen und für verschiedene Zwecke verfügbar sind. Du kannst den Namen eines Icons ohne die Dateierweiterung verwenden. Zum Beispiel, wenn Du ein Icon namens IRC-smile.png in einem dieser Verzeichnisse findest, kannst Du es it notify-send -i IRC-smile verwenden.

Einige allgemeine Icon-Namen, die oft verfügbar sind, umfassen:

info: Für allgemeine Informationsmeldungen.
warning: Für Warnmeldungen.
error: Für Fehlermeldungen.
dialog-information: Für detaillierte Informationsmeldungen.
dialog-warning: Für detaillierte Warnmeldungen.
dialog-error: Für detaillierte Fehlermeldungen.

Benachrichtigung mit Dringlichkeitsstufe:


notify-send -u critical "Warnung" "Niedriger Batteriestand!"

Hier wird eine kritische Benachrichtigung über einen niedrigen Batteriestand angezeigt. Dringlichkeitsstufen können low, normal oder critical sein.

Benachrichtigung mit angegebenem Kategorie:



notify-send -c "email.arrived" "Neue E-Mail" "Sie haben eine neue Nachricht erhalten"

Dieser Befehl erstellt eine Benachrichtigung in der Kategorie "email.arrived".

Benachrichtigung mit Sound:



notify-send "Erinnerung" "Vergiss nicht das die Softwareupdates!" -i dialog-information -t 5000 -a "Kalender"

Diese Benachrichtigung kommt mit einem Standard-Sound (abhängig von den Systemeinstellungen), einem Icon und einem Applikationsnamen "Kalender".

Sofern dieser noch einen Ton zur Verfügung hat.  Siehe Settings.

 

P

pinfo

ping

pwd

R

rmdir

rsync

S

sed

shutdown

slocate

snort

ssh

sudo

T

tar

traceroute

tree

V

vi

W

whatis
Whatis nutze ich selten aber gerne.
Es zeigt Dir eine Beschreibung für andere Befehle an.

Ein Beispiel :

[schutzgeist@localhost ~]$ whatis< br /> whatis was bitte?
[schutzgeist@localhost ~]$ whatis man
man (1) - eine Oberfläche für die System-Referenzhandbücher
man (7) - macros to format man pages
man (1p) - display system documentation

oder
whatis ls cp rm mv

[schutzgeist@localhost ~]$ whatis ls cp
ls (1) - Verzeichnisinhalte auflisten
cp (1) - Dateien und Verzeichnisse kopieren
ls (1p) - list directory contents
cp (1p) - copy files
[schutzgeist@localhost ~]$


 

 

Whoami
whoami  ein unscheinbarer, aber wichtiger Linux-Befehl. Gerade, wenn man mehrere Benutzeraccounts hat, zwischen denen man immer wechseln muss.
whoami zeigt den aktuellen Benutzer an.
Du kannst auch mit dem who - Befehl arbeiten.   Alle who-Befehle findest Du hier:


Übermittle ein Linux Befehl
Schlagwörter: