Zum Inhalt springen
< Alle Themen
Drucken

Linux Befehlsreferenz

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

Es gibt 18 Linux Befehle in diesem Verzeichnis, die mit dem Buchstaben S beginnen.
S

sed

setxkbmap

setxkbmap


 

Ein Befehl, der verwendet wird, um das Tastaturlayout und die Tastaturoptionen auf einem X-Server (wie in grafischen Linux-Umgebungen verwendet) zu konfigurieren. Mit diesem Befehl kannst du das Tastaturlayout ändern, die Tastaturbelegung anpassen und zusätzliche Optionen wie die Belegung der Caps Lock- oder Alt-Tasten festlegen.

Linux-Befehl: setxkbmap


Anwendungsbeispiel:
Wechsle das Tastaturlayout auf Deutsch (Deutschland) mit setxkbmap de.

Fallbeispiel im Bereich IRC (Internet Relay Chat):


Angenommen, du betreibst einen IRC-Server unter irc.irc-mania.net und verwendest eine spezielle Tastaturbelegung für bestimmte Sprachen oder Symbole während der Konfiguration oder Verwaltung des Servers. Wenn du häufig zwischen verschiedenen Tastaturlayouts wechseln musst, kann der Befehl setxkbmap helfen, das Layout schnell anzupassen.

Beispiel: Wechseln des Tastaturlayouts auf US-amerikanisch (QWERTY), wenn du gerade in einer Sitzung auf irc.irc-mania.net arbeitest:


setxkbmap us


Mit diesem Befehl stellst du sicher, dass deine Tastatur auf das US-Layout eingestellt ist, was nützlich sein kann, wenn du beispielsweise Konfigurationsdateien bearbeitest oder Skripte ausführst, die eine spezifische Tastenbelegung erfordern.

Ähnliche Linux-Befehle:

  • xmodmap: Verwendet zum Anpassen von Tastaturzuweisungen unter X.

  • localectl: Verwendet zum Festlegen von System-Locale und Tastaturlayout-Einstellungen.

  • loadkeys: Lädt ein Tastaturlayout für die Konsole (nicht für X).


Schalteroptionen und ihre Funktionen:



  • setxkbmap [layout]: Legt das Tastaturlayout fest, z.B. setxkbmap us für das US-Layout.

  • setxkbmap -layout layout: Gibt das Layout explizit an, z.B. setxkbmap -layout de für das deutsche Layout.

  • setxkbmap -model model: Legt das Tastaturmodell fest, z.B. setxkbmap -model pc105.

  • setxkbmap -option option: Fügt eine oder mehrere Optionen hinzu, z.B. setxkbmap -option ctrl:nocaps für die Verwendung der Caps Lock-Taste als zusätzliche Strg-Taste.

  • setxkbmap -variant variant: Verwendet eine spezielle Variante eines Layouts, z.B. setxkbmap -variant dvorak für das Dvorak-Layout.


MAN-Überschriften:



  1. NAME
    Beschreibung des Befehls.

  2. SYNOPSIS
    Die grundlegende Syntax für die Verwendung von setxkbmap.

  3. DESCRIPTION
    Detaillierte Beschreibung, was der Befehl tut.

  4. OPTIONS
    Beschreibung aller verfügbaren Schalteroptionen.

  5. ENVIRONMENT
    Hinweise auf Umgebungsvariablen, die setxkbmap beeinflussen können.

  6. FILES
    Hinweise auf relevante Dateien, die von setxkbmap verwendet werden.

  7. SEE ALSO
    Verweise auf verwandte Befehle und Dokumentationen.

  8. AUTHOR
    Informationen über den Autor des Befehls.

  9. BUGS
    Informationen zu bekannten Fehlern und deren Behebung.


Handbuch für den Befehl: man setxkbmap
Eingereicht durch: Schutzgeist

shutdown

SKEL (Skeleton Directory)

SKEL (Skeleton Directory):


Das Verzeichnis /etc/skel enthält Vorlagendateien und -verzeichnisse, die in jedes neue Benutzerverzeichnis kopiert werden, wenn ein neues Benutzerkonto erstellt wird. Dies stellt sicher, dass alle Benutzer standardmäßige Konfigurationsdateien erhalten.

Linux-Befehl: cp -r /etc/skel/* /home/newuser/

Anwendungsbeispiel:
Wenn ein neuer Benutzer mit useradd username erstellt wird, werden alle Dateien aus /etc/skel in das Home-Verzeichnis des neuen Benutzers kopiert.

Weitere Befehle und Optionen:

  • ls /etc/skel: Zeigt den Inhalt des skel-Verzeichnisses an.

  • cp /etc/skel/.bashrc ~/.bashrc: Kopiert die .bashrc-Datei aus dem skel-Verzeichnis in das Home-Verzeichnis des aktuellen Benutzers.


MAN-Befehl: man useradd (Abschnitt über /etc/skel)

slocate

snort

source
source: Kopie
Lädt und führt eine Datei im aktuellen Shell-Kontext aus, wodurch alle darin definierten Variablen und Funktionen in der aktuellen Sitzung verfügbar werden. Ähnlich dem .-Befehl.

Linux-Befehl: source

Anwendungsbeispiel:
Lade eine Konfigurationsdatei neu mit source ~/.bashrc, damit Änderungen ohne Neustart der Shell wirksam werden.

Weitere Befehle und Optionen:

  • source filename: Führt die Datei filename aus, sodass ihre Inhalte im aktuellen Shell-Kontext verfügbar werden.

  • source /path/to/script.sh: Führt ein bestimmtes Skript im aktuellen Shell-Kontext aus.


Handbuch für den Befehl: man bash (Abschnitt über Shell-Builtins)

source .bashrc

source .bashrc:


Dieser Befehl lädt die .bashrc-Datei neu in die aktuelle Shell-Sitzung. Die .bashrc-Datei enthält benutzerspezifische Konfigurationen, wie Aliase, Funktionen und Umgebungsvariablen, die bei jedem Start einer neuen Bash-Shell ausgeführt werden.

Linux-Befehl: source .bashrc
Anwendungsbeispiel:

Nach dem Ändern der .bashrc-Datei, wie z.B. dem Hinzufügen eines neuen Aliases, führe source ~/.bashrc aus, um die Änderungen sofort in der aktuellen Sitzung wirksam werden zu lassen, ohne die Shell neu zu starten.

Handbuch für den Befehl: man bash (Abschnitt über Shell-Builtins)
Eingereicht durch: Schutzgeist

Sourcing von Dateien

Sourcing von Dateien mit .


Bourne Shell Builtins


 

Sourcing von Dateien mit . (Punkt):


Der Punkt . ist ein Bash-Befehl, der verwendet wird, um eine Datei in die aktuelle Shell-Umgebung zu laden, anstatt eine neue Shell zu starten. Alle in der Datei definierten Variablen und Funktionen stehen danach in der aktuellen Sitzung zur Verfügung.

Linux-Befehl: .

Anwendungsbeispiel:
Lade eine Konfigurationsdatei mit . ~/.bashrc, um Änderungen in der aktuellen Shell-Sitzung anzuwenden.


Weitere Befehle und Optionen:

  • . ./skript.sh: Führt skript.sh im aktuellen Shell-Kontext aus.

  • source ./skript.sh: Ein alternativer Befehl zu . mit der gleichen Funktionalität.


MAN-Befehl: man bash (Abschnitt über "Bourne Shell Builtins")

 

SPICE (Simple Protocol for Independent Computing Environments):

SPICE (Simple Protocol for Independent Computing Environments):


Ein Open-Source-Protokoll, das für die Bereitstellung von Remote-Desktop-Funktionalitäten entwickelt wurde. SPICE ermöglicht es, die Benutzeroberfläche von virtuellen Maschinen (VMs) über das Netzwerk bereitzustellen, sodass Benutzer mit diesen Maschinen interagieren können, als ob sie sich direkt davor befänden. SPICE bietet eine verbesserte Benutzererfahrung durch Unterstützung für Audio, Video, USB-Umleitung und mehr.

 

SPICE (Simple Protocol for Independent Computing Environments) ist ein Protokoll und eine Technologie, die für die Bereitstellung von Remote-Desktop-Umgebungen entwickelt wurde. SPICE ermöglicht es Benutzern, auf virtuelle Maschinen (VMs) zuzugreifen und diese so zu steuern, als säßen sie direkt vor einem physischen Computer. SPICE wurde von Red Hat entwickelt und wird hauptsächlich in Virtualisierungsumgebungen wie KVM (Kernel-based Virtual Machine) und QEMU verwendet.

Hauptmerkmale von SPICE:



  1. Remote-Desktop-Zugriff:

    • SPICE ermöglicht den Zugriff auf den Desktop einer virtuellen Maschine von einem entfernten Standort aus. Der Benutzer kann dabei den Desktop der VM interaktiv nutzen, inklusive der Steuerung von Maus und Tastatur.



  2. Hohe Leistung und Effizienz:

    • SPICE bietet eine effiziente Übertragung von Bildschirminhalten, indem es verschiedene Kompressionstechniken und Protokolloptimierungen verwendet. Dadurch werden die benötigte Bandbreite minimiert und die Reaktionszeiten verbessert.



  3. Multimedia-Unterstützung:

    • SPICE unterstützt Multimedia-Inhalte, einschließlich Audio und Video, und sorgt dafür, dass diese Inhalte synchron und in hoher Qualität übertragen werden.



  4. Unterstützung von USB-Geräten:

    • Benutzer können USB-Geräte an ihren lokalen Rechner anschließen und diese über SPICE auf die virtuelle Maschine durchreichen, als wären die Geräte direkt mit der VM verbunden.



  5. Mehrere Monitorunterstützung:

    • SPICE unterstützt Umgebungen mit mehreren Monitoren, was es ermöglicht, virtuelle Maschinen in komplexen Arbeitsplatzkonfigurationen zu verwenden.



  6. Sicherheit:

    • SPICE bietet Verschlüsselung für die Datenübertragung, um sicherzustellen, dass die Kommunikation zwischen dem Client und der VM geschützt ist.



  7. Offene und plattformunabhängige Lösung:

    • SPICE ist ein Open-Source-Projekt und bietet plattformübergreifende Unterstützung, sodass sowohl Linux- als auch Windows-VMs mit dem SPICE-Protokoll arbeiten können.




Einsatzgebiete von SPICE:



  • Virtuelle Desktop-Infrastrukturen (VDI):

    • SPICE ist besonders nützlich in VDI-Umgebungen, wo viele Benutzer auf virtuelle Desktops zugreifen müssen. Es bietet eine robuste und performante Möglichkeit, virtuelle Arbeitsplätze bereitzustellen.



  • Entwicklung und Test:

    • Entwickler und Tester können SPICE verwenden, um auf virtuelle Maschinen zuzugreifen, die in einem isolierten Netzwerk oder einer anderen Umgebung laufen, ohne physisch vor dem Hostsystem zu sitzen.



  • Remote-Arbeit:

    • SPICE ermöglicht es Benutzern, von entfernten Standorten aus auf ihre Arbeitsumgebung zuzugreifen, wodurch es ideal für Remote-Arbeitsmodelle ist.




SPICE-Client und -Server:



  • SPICE-Client:

    • Der SPICE-Client ist die Software, die auf dem Computer des Benutzers installiert ist und die Verbindung zu der virtuellen Maschine herstellt. Ein beliebter SPICE-Client ist virt-viewer.



  • SPICE-Server:

    • Der SPICE-Server läuft auf dem Host, der die virtuelle Maschine betreibt, und kümmert sich um die Übertragung der Bildschirminhalte, die Steuerungseingaben und andere Daten an den SPICE-Client.




 :


SPICE ist ein leistungsstarkes und flexibles Protokoll für Remote-Desktop-Umgebungen, das speziell für Virtualisierungsumgebungen entwickelt wurde. Es bietet eine effiziente, performante und sichere Möglichkeit, auf virtuelle Maschinen zuzugreifen und diese zu steuern. SPICE ist besonders nützlich in Szenarien, in denen Benutzer von entfernten Standorten aus auf VMs zugreifen müssen, sei es für Entwicklungszwecke, in VDI-Umgebungen oder für Remote-Arbeit.

 

 

Anwendungsbeispiel:
Verwende SPICE, um eine Verbindung zu einer virtuellen Maschine herzustellen, die auf einem KVM-Hypervisor läuft, und interagiere mit ihr, als ob sie lokal wäre.

Fallbeispiel im Bereich IRC (Internet Relay Chat):


Angenommen, du betreibst einen IRC-Server unter irc.irc-mania.net und möchtest den Server innerhalb einer virtuellen Maschine betreiben, auf die du von einem entfernten Standort aus zugreifen kannst. Mit SPICE kannst du eine nahtlose und performante Verbindung zu dieser virtuellen Maschine herstellen, um den Server zu verwalten oder darauf zu arbeiten, ohne physisch vor Ort zu sein.

Beispiel: Zugriff auf eine virtuelle Maschine mit einem SPICE-Client:

  1. Stelle sicher, dass der SPICE-Server auf der virtuellen Maschine aktiviert ist.

  2. Verwende einen SPICE-Client wie virt-viewer, um die Verbindung herzustellen:


    virt-viewer --spice --connect qemu+ssh://user@host/system vm_name



Dieser Befehl stellt eine SPICE-Verbindung zu der virtuellen Maschine vm_name her, die auf einem Remote-Host läuft. Du kannst die virtuelle Maschine dann verwalten, als ob du direkt an der Konsole sitzt, was besonders nützlich ist, wenn du den IRC-Server irc.irc-mania.net in einer isolierten und sicheren Umgebung betreiben möchtest.

Ähnliche Technologien und Befehle:

  • VNC: Eine weitere Technologie für Remote-Desktop-Zugriff, jedoch ohne die erweiterten Funktionen von SPICE wie USB-Umleitung.

  • RDP (Remote Desktop Protocol): Ein Protokoll von Microsoft für den Fernzugriff auf Desktops, das ähnliche Funktionen bietet.

  • virt-manager: Ein grafisches Tool zur Verwaltung von virtuellen Maschinen, das auch SPICE unterstützt.

  • qemu-system-x86_64 -spice: Startet eine virtuelle Maschine mit SPICE-Unterstützung unter QEMU.


Vorteile von SPICE:



  • Nahtlose Benutzererfahrung: Bietet eine hohe Leistung bei Remote-Desktops, inklusive Unterstützung für Multimedia-Inhalte.

  • Erweiterte Funktionen: Unterstützt USB-Umleitung, Audio, Video und Dateifreigaben.

  • Integration: Funktioniert nahtlos mit KVM/QEMU-Virtualisierungstechnologien.


MAN-Überschriften (für verwandte SPICE-Tools wie spice-client):



  1. NAME
    Beschreibung des SPICE-Tools oder -Protokolls.

  2. SYNOPSIS
    Die grundlegende Syntax für die Verwendung des SPICE-Clients oder -Servers.

  3. DESCRIPTION
    Detaillierte Beschreibung, was das SPICE-Tool tut und wie es verwendet wird.

  4. OPTIONS
    Beschreibung aller verfügbaren Schalteroptionen für den SPICE-Client oder -Server.

  5. SEE ALSO
    Verweise auf verwandte Befehle und Dokumentationen, z.B. virt-manager, qemu, vnc.

  6. AUTHOR
    Informationen über die Entwickler von SPICE.

  7. BUGS
    Informationen zu bekannten Fehlern und deren Behebung.


Dokumentation: Da SPICE eine Technologie ist und nicht nur ein einzelner Befehl, findest du spezifische Anleitungen und manuelle Seiten in den entsprechenden Tools, die SPICE verwenden, wie virt-viewer, spice-client, oder qemu.
Eingereicht durch: schutzgeist

ssh

SSH (Secure Shell)

SSH (Secure Shell):


Ein Protokoll, das eine sichere Verbindung zu einem entfernten Server oder Computer ermöglicht. Es wird häufig für den Fernzugriff auf Server, die Verwaltung und den Dateitransfer verwendet.

Linux-Befehl: ssh Anwendungsbeispiel:


Stelle eine Verbindung zu einem entfernten Server her mit ssh Root@IRC-Mania.de .

Weitere Befehle und Optionen:


ssh -p port user@hostname: Verbindet sich mit einem Server über einen bestimmten Port.
ssh -i /path/to/key user@hostname: Verwendet einen spezifischen privaten Schlüssel für die Authentifizierung.
ssh -N -L local_port:remote_host:remote_port user@hostname: Erstellt einen SSH-Tunnel ohne Remote-Befehle auszuführen.
ssh -X user@hostname: Aktiviert X11-Weiterleitung für grafische Anwendungen.
Handbuch für den Befehl: man ssh
Eingereicht durch: Schutzgeist

ssh-add:

ssh-add:


Ein Befehl, der verwendet wird, um private SSH-Schlüssel zum SSH-Agenten (ssh-agent) hinzuzufügen. Der SSH-Agent speichert die privaten Schlüssel im Speicher, sodass du dich bei SSH-Servern authentifizieren kannst, ohne bei jeder Verbindung dein Passwort oder die Passphrase des Schlüssels eingeben zu müssen.

Linux-Befehl: ssh-add

 

Anwendungsbeispiel:
Füge einen privaten SSH-Schlüssel zum SSH-Agenten hinzu mit ssh-add ~/.ssh/id_rsa.

Fallbeispiel im Bereich IRC (Internet Relay Chat):


Angenommen, du betreibst einen IRC-Server unter irc.irc-mania.net und verwendest SSH-Schlüssel zur Authentifizierung, um sicherzustellen, dass nur autorisierte Benutzer Zugriff auf den Server haben. Du kannst ssh-add verwenden, um deinen privaten Schlüssel zum SSH-Agenten hinzuzufügen, damit du dich bequem und sicher verbinden kannst, ohne jedes Mal deine Passphrase eingeben zu müssen.

Beispiel: Hinzufügen des privaten Schlüssels id_rsa zum SSH-Agenten:


ssh-add ~/.ssh/id_rsa


Dieser Befehl lädt den privaten Schlüssel id_rsa in den SSH-Agenten, sodass du dich bei deinem IRC-Server irc.irc-mania.net oder anderen Servern, die denselben Schlüssel verwenden, authentifizieren kannst, ohne die Passphrase jedes Mal erneut eingeben zu müssen.

Ähnliche Linux-Befehle:

  • ssh-agent: Startet einen neuen SSH-Agenten, der die SSH-Schlüssel im Speicher verwaltet.

  • ssh-keygen: Erzeugt neue SSH-Schlüsselpaare und verwaltet bestehende Schlüssel.

  • ssh: Verwendet zur Herstellung von Verbindungen zu entfernten Servern über das SSH-Protokoll.

  • ssh-copy-id: Kopiert öffentliche SSH-Schlüssel auf einen Remote-Server zur vereinfachten Authentifizierung.


Schalteroptionen und ihre Funktionen:



  • ssh-add [file]: Fügt den angegebenen privaten Schlüssel dem SSH-Agenten hinzu.

  • ssh-add -l: Listet alle derzeit dem SSH-Agenten hinzugefügten Schlüssel auf.

  • ssh-add -d [file]: Entfernt den angegebenen privaten Schlüssel aus dem SSH-Agenten.

  • ssh-add -D: Entfernt alle Schlüssel aus dem SSH-Agenten.

  • ssh-add -t lifespan [file]: Legt eine Lebensdauer (in Sekunden) für den Schlüssel fest, nach deren Ablauf der Schlüssel automatisch aus dem Agenten entfernt wird.

  • ssh-add -c: Fordert eine Bestätigung an, bevor der Schlüssel verwendet wird.

  • ssh-add -q: Führt den Befehl im stillen Modus aus, ohne unnötige Ausgaben anzuzeigen.


Wichtige Hinweise:



  • Sicherheit: Da ssh-add den privaten Schlüssel im Speicher speichert, ist es wichtig sicherzustellen, dass der SSH-Agent ordnungsgemäß konfiguriert und vor unbefugtem Zugriff geschützt ist. Ein gesperrter Bildschirm, wenn du den Computer unbeaufsichtigt lässt, kann die Sicherheit zusätzlich erhöhen.


MAN-Überschriften:



  1. NAME
    Beschreibung des Befehls.

  2. SYNOPSIS
    Die grundlegende Syntax für die Verwendung von ssh-add.

  3. DESCRIPTION
    Detaillierte Beschreibung, was der Befehl tut, insbesondere in Bezug auf die Verwaltung von SSH-Schlüsseln mit dem SSH-Agenten.

  4. OPTIONS
    Beschreibung aller verfügbaren Schalteroptionen.

  5. FILES
    Hinweise auf relevante Dateien wie SSH-Schlüssel, die von ssh-add verwendet werden.

  6. SEE ALSO
    Verweise auf verwandte Befehle und Dokumentationen, z.B. ssh-agent, ssh-keygen.

  7. AUTHOR
    Informationen über den Autor des Befehls.

  8. BUGS
    Informationen zu bekannten Fehlern und deren Behebung.


Handbuch für den Befehl: man ssh-add
Eingereicht durch: schutzgeist

su

su (Substitute User)


Wechselt zu einem anderen Benutzerkonto, in der Regel zum Root-Benutzer.

Linux-Befehl: su

Anwendungsbeispiel:
Wechsle zum Root-Benutzer mit su - und gib das Root-Passwort ein.

Weitere Befehle und Optionen:

  • su - username: Wechselt zu einem anderen Benutzer und lädt dessen Umgebung.

  • su -c "command": Führt einen Befehl als ein anderer Benutzer aus, ohne die Shell zu wechseln.


MAN-Befehl: man su

sudo

Syslog Facilities Exkurs
Syslog Facilities sind Kategorien oder "Einrichtungen" innerhalb des Syslog-Protokolls, die verwendet werden, um Log-Nachrichten zu klassifizieren und zu gruppieren. Das Syslog-Protokoll ist ein Standard für das Senden und Empfangen von Log-Nachrichten in Unix- und Linux-Systemen sowie in Netzwerkgeräten wie Routern und Switches. Jede Log-Nachricht, die über Syslog gesendet wird, ist mit einer Facility und einem Schweregrad (Severity Level) versehen.

Zweck von Facilities:



  • Kategorisierung von Log-Nachrichten: Facilities ermöglichen es, Log-Nachrichten nach ihrer Quelle oder ihrem Zweck zu kategorisieren. Das hilft Administratoren dabei, die Logs effizienter zu verwalten und zu analysieren.

  • Trennung der Logs: Durch die Zuweisung von Facilities zu verschiedenen Log-Typen können diese Logs in separaten Dateien gespeichert oder unterschiedlich behandelt werden.


Standard-Syslog-Facilities:


Hier sind einige der gängigsten Syslog-Facilities und ihre typischen Verwendungszwecke:

  1. auth:

    • Logs von Authentifizierungsprozessen (z.B. Login-Versuche).



  2. authpriv:

    • Logs von Authentifizierungsprozessen, die sensible Informationen enthalten (z.B. detaillierte Login-Daten, die nur für privilegierte Benutzer zugänglich sein sollten).



  3. cron:

    • Logs, die von Cron-Diensten stammen, also von geplanten Aufgaben.



  4. daemon:

    • Logs von Systemdiensten oder Daemons, die keine spezifische Facility haben (z.B. Hintergrundprozesse).



  5. kern:

    • Kernel-Nachrichten, die direkt vom Linux-Kernel generiert werden.



  6. lpr:

    • Logs, die von Druckdiensten (Line Printer Daemon) stammen.



  7. mail:

    • Logs von Mailservern und E-Mail-Diensten.



  8. news:

    • Logs von Usenet-News-Diensten.



  9. syslog:

    • Logs, die vom Syslog-Daemon selbst stammen.



  10. user:

    • Logs, die von Benutzern und Benutzeranwendungen generiert werden. Dies ist die Standard-Facility, wenn keine andere angegeben ist.



  11. uucp:

    • Logs von UUCP-Diensten (Unix-to-Unix Copy Protocol), die heute selten verwendet werden.



  12. local0 bis local7:

    • Benutzerdefinierte Facilities, die für beliebige Zwecke verwendet werden können. Diese sind nützlich, wenn spezifische Logs in benutzerdefinierte Kategorien eingeteilt werden sollen.




Beispiel für eine Syslog-Nachricht:


Eine typische Syslog-Nachricht hat das folgende Format:


timestamp hostname application[PID]: message



  • PRI: Kombiniert die Facility und den Schweregrad.

  • timestamp: Der Zeitpunkt, zu dem die Nachricht erzeugt wurde.

  • hostname: Der Hostname des Systems, das die Nachricht generiert hat.

  • application[PID]: Die Anwendung und deren Prozess-ID, die die Nachricht erzeugt haben.

  • message: Der eigentliche Inhalt der Log-Nachricht.


Verwendung von Facilities in Konfigurationsdateien:


In Konfigurationsdateien wie /etc/rsyslog.conf (für rsyslog) oder /etc/syslog.conf (für ältere Syslog-Daemons) kannst Du Facilities verwenden, um zu steuern, wohin die Nachrichten geschrieben werden sollen:


authpriv.* /var/log/secure
mail.* /var/log/mail.log
cron.* /var/log/cron.log
local0.* /var/log/local0.log



  • Facility: Der Teil vor dem Punkt (authpriv, mail, etc.).

  • Schweregrad: Der Teil nach dem Punkt (* bedeutet alle Schweregrade).

  • Ziel: Die Datei oder der Ort, wohin die Nachrichten geschrieben werden sollen.



Syslog Facilities sind ein wesentliches Konzept im Syslog-Protokoll, das es ermöglicht, Log-Nachrichten nach ihrer Quelle oder Art zu kategorisieren. Sie helfen Administratoren dabei, Logs effektiv zu verwalten und gezielt zu analysieren. Durch die Verwendung von Facilities in Syslog-Konfigurationsdateien kann die Log-Ausgabe flexibel organisiert und unterschiedliche Log-Typen in separaten Dateien gespeichert werden.
Eingereicht durch: schutzgeist

systemctl:

systemctl:


Ein Befehl, der zum Verwalten von Systemdiensten, Einheiten und dem Systemzustand auf Linux-Systemen verwendet wird, die das systemd-Init-System nutzen. Mit systemctl kannst du Dienste starten, stoppen, neustarten, aktivieren, deaktivieren und den aktuellen Status von Diensten sowie anderen systemd-Einheiten abfragen.

Linux-Befehl: systemctl

Anwendungsbeispiel:
Starte den Dienst nginx neu mit systemctl restart nginx.

Fallbeispiel im Bereich IRC (Internet Relay Chat):


Angenommen, du betreibst einen IRC-Server unter irc.irc-mania.net und möchtest den IRC-Dienst nach einer Konfigurationsänderung neu starten, um sicherzustellen, dass die Änderungen wirksam werden. Mit systemctl kannst du den IRC-Dienst direkt verwalten.

Beispiel: Neustarten des IRC-Dienstes ircd nach einer Konfigurationsänderung:


sudo systemctl restart ircd


Dieser Befehl startet den IRC-Dienst ircd neu, wodurch die neue Konfiguration geladen wird und der IRC-Server irc.irc-mania.net die Änderungen übernimmt. Dies ist nützlich, um sicherzustellen, dass der Server reibungslos funktioniert und auf die neuesten Einstellungen reagiert.

Ähnliche Linux-Befehle:



  • service: Verwendet zum Starten, Stoppen und Neustarten von Diensten auf älteren Systemen ohne systemd.

  • journalctl: Zeigt Protokolldateien an, die von systemd gesammelt wurden, nützlich zur Fehlersuche bei Diensten.

  • ps aux: Zeigt alle laufenden Prozesse an, einschließlich Dienste, die von systemctl verwaltet werden.

  • systemd-analyze: Analysiert den Startprozess des Systems und liefert detaillierte Informationen.


Schalteroptionen und ihre Funktionen:



  • systemctl start service_name: Startet den angegebenen Dienst.

  • systemctl stop service_name: Stoppt den angegebenen Dienst.

  • systemctl restart service_name: Startet den angegebenen Dienst neu.

  • systemctl reload service_name: Lädt die Konfigurationsdateien des Dienstes neu, ohne ihn neu zu starten.

  • systemctl enable service_name: Aktiviert den Dienst, sodass er beim Systemstart automatisch startet.

  • systemctl disable service_name: Deaktiviert den Dienst, sodass er beim Systemstart nicht mehr automatisch startet.

  • systemctl status service_name: Zeigt den Status des Dienstes, einschließlich aktueller Aktivität und Protokollauszügen.

  • systemctl is-active service_name: Prüft, ob der Dienst aktiv ist.

  • systemctl is-enabled service_name: Prüft, ob der Dienst aktiviert ist.

  • systemctl list-units: Listet alle aktiven Einheiten auf.

  • systemctl list-unit-files: Zeigt alle installierten Einheiten und deren Aktivierungsstatus an.

  • systemctl isolate target: Wechselt in einen anderen Systemzustand (Runlevel), z.B. rescue.target für den Rettungsmodus.

  • systemctl reboot: Startet das System neu.

  • systemctl poweroff: Fährt das System herunter.


Wichtige Hinweise:



  • Verwalten von Diensten: systemctl ist ein leistungsfähiges Werkzeug, um alle Aspekte von Systemdiensten zu steuern. Es wird häufig in Skripten und zur Automatisierung von Aufgaben in der Systemadministration verwendet.


MAN-Überschriften:



  1. NAME
    Beschreibung des Befehls.

  2. SYNOPSIS
    Die grundlegende Syntax für die Verwendung von systemctl.

  3. DESCRIPTION
    Detaillierte Beschreibung, was der Befehl tut.

  4. OPTIONS
    Beschreibung aller verfügbaren Schalteroptionen.

  5. COMMANDS
    Eine Übersicht über die wichtigsten Befehle, die mit systemctl ausgeführt werden können.

  6. FILES
    Hinweise auf relevante Dateien wie systemd-Einheitsdateien, die von systemctl verwaltet werden.

  7. SEE ALSO
    Verweise auf verwandte Befehle und Dokumentationen, z.B. systemd, journalctl.

  8. AUTHOR
    Informationen über den Autor des Befehls.

  9. BUGS
    Informationen zu bekannten Fehlern und deren Behebung.


Handbuch für den Befehl: man systemctl
Eingereicht durch: Schutzgeist

systemd-run




systemd-run:


Ein Befehl, der verwendet wird, um Befehle oder Skripte als systemd-Dienst zu starten. Mit systemd-run kannst du temporäre Dienste oder zeitlich geplante Aufgaben ausführen, die vom systemd-Init-System verwaltet werden. Es ermöglicht, Befehle in einer isolierten Umgebung oder unter speziellen Bedingungen zu starten, ohne dass du eine dauerhafte systemd-Service-Unit erstellen musst.

Linux-Befehl: systemd-run


Anwendungsbeispiel:
Starte einen Befehl als isolierten systemd-Dienst mit systemd-run --scope --unit=meinbefehl.service Befehl.

Fallbeispiel im Bereich IRC (Internet Relay Chat):


Angenommen, du betreibst einen IRC-Server unter irc.irc-mania.net und möchtest ein Skript oder einen Befehl temporär als eigenen Dienst ausführen, um beispielsweise spezielle Wartungsaufgaben zu erledigen, die in einer isolierten Umgebung laufen sollen. Mit systemd-run kannst du dies leicht erreichen.

Beispiel: Starte ein Skript, das den Speicher des IRC-Servers überwacht, als isolierten Dienst:


sudo systemd-run --scope --unit=ircd-monitor.service /path/to/memory_monitor.sh


Dieser Befehl startet das Skript memory_monitor.sh als einen temporären systemd-Dienst mit dem Namen ircd-monitor.service. Der Vorteil dieses Ansatzes ist, dass der Befehl unter den vollen Kontrolle von systemd ausgeführt wird, was bedeutet, dass du die Ressourcennutzung steuern und den Dienst bei Bedarf einfach überwachen oder stoppen kannst.

Ähnliche Linux-Befehle:

  • systemctl: Verwendet zur Verwaltung von systemd-Diensten, einschließlich Start, Stopp und Statusabfragen.

  • cron: Verwendet zur Planung regelmäßiger Aufgaben, im Gegensatz zu den einmaligen, temporären Diensten von systemd-run.

  • at: Verwendet zur Planung von einmaligen Aufgaben zu einem bestimmten Zeitpunkt.

  • nohup: Führt Befehle so aus, dass sie nach dem Logout weiterhin laufen, jedoch ohne die Integration in systemd.


Schalteroptionen und ihre Funktionen:



  • systemd-run --unit=name: Gibt den Namen für die systemd-Service-Unit an, unter der der Befehl ausgeführt wird.

  • systemd-run --scope: Startet den Befehl in einem eigenen systemd-Scope, der sich von anderen Einheiten abhebt und nicht als vollständiger Dienst behandelt wird.

  • systemd-run --user: Führt den Befehl unter dem Benutzerkontext anstelle des Systemkontexts aus.

  • systemd-run --on-active=seconds: Startet den Dienst nach einer bestimmten Verzögerung in Sekunden.

  • systemd-run --on-calendar=time: Startet den Dienst zu einem bestimmten Zeitpunkt oder nach einem Zeitplan.

  • systemd-run --remain-after-exit: Hält den Dienst aktiv, selbst nachdem der Befehl ausgeführt wurde, was es ermöglicht, den Dienststatus auch nach Abschluss des Befehls abzufragen.

  • systemd-run --description="text": Fügt eine Beschreibung zum gestarteten Dienst hinzu, um ihn später leichter identifizieren zu können.

  • systemd-run --property=key=value: Setzt eine bestimmte systemd-Eigenschaft für die ausgeführte Einheit.


Wichtige Hinweise:



  • Integration mit systemd: Durch die Ausführung von Befehlen als systemd-Dienste erhältst du die volle Kontrolle und Überwachungskapazität, die systemd bietet, einschließlich Logging, Ressourcenbeschränkungen und Neustartmechanismen.


MAN-Überschriften:



  1. NAME
    Beschreibung des Befehls.

  2. SYNOPSIS
    Die grundlegende Syntax für die Verwendung von systemd-run.

  3. DESCRIPTION
    Detaillierte Beschreibung, was der Befehl tut und wie er in systemd integriert wird.

  4. OPTIONS
    Beschreibung aller verfügbaren Schalteroptionen.

  5. FILES
    Hinweise auf relevante Dateien, wie systemd-Einheiten, die von systemd-run verwaltet werden.

  6. SEE ALSO
    Verweise auf verwandte Befehle und Dokumentationen, z.B. systemctl, systemd.

  7. AUTHOR
    Informationen über den Autor des Befehls.

  8. BUGS
    Informationen zu bekannten Fehlern und deren Behebung.


Handbuch für den Befehl: man systemd-run




Eingereicht durch: Schutzgeist


Übermittle ein Linux Befehl
Schlagwörter:
Inhaltsverzeichnis