Website-Suche

Grundlegende Linux-Befehle für Anfänger (2026)


Dieser umfassende Leitfaden erklärt grundlegende Linux-Befehle, die jeder Benutzer kennen sollte. Vom Navigieren in Verzeichnissen und Verwalten von Dateien bis hin zur Überwachung von Systemressourcen und zur Fehlerbehebung werden Ihnen diese wesentlichen Linux-Befehle helfen, die Linux-Kommandozeile mühelos zu beherrschen.

Ich habe die Befehle in verschiedene Gruppen kategorisiert, jede begleitet von praktischen Beispielen für ein besseres Verständnis. Am Ende wirst du eine solide Grundlage haben, um das Linux-Terminal mit Vertrauen zu nutzen.

1. Datei- und Verzeichnisverwaltung unter Linux

Für Linux-Benutzer ist die Arbeit mit Dateien und Verzeichnissen über die Kommandozeile eine grundlegende Fähigkeit.

Egal, ob Sie ein Neuling oder ein erfahrener Benutzer sind, die folgenden Dateiverwaltungsbefehle helfen Ihnen, Dateien und Verzeichnisse mühelos zu navigieren, zu erstellen, zu kopieren, zu verschieben und zu bearbeiten.

1.1. Auflisten von Verzeichnisinhalten

Der ls-Befehl ist Ihr bevorzugtes Werkzeug, um den Inhalt eines Verzeichnisses anzuzeigen.

Führen Sie ls in Ihrem Terminal aus, und es zeigt Ihnen die Namen der Dateien und Unterverzeichnisse im aktuellen Arbeitsverzeichnis an.

ls

Aber was, wenn Sie mehr Informationen möchten? Verwenden Sie die -l-Option für ein langes Listenformat, das Details wie Dateiberechtigungen, Eigentum, Größe und letztes Änderungsdatum anzeigt.

ls -l

Vergessen Sie nicht die versteckten Dateien, die mit einem Punkt (.) beginnen. Um die versteckten Dateien und Verzeichnisse anzuzeigen, fügen Sie die Option -a hinzu.

ls -a

Kombinieren Sie diese Optionen mit ls -al, um eine umfassende Ansicht aller Dateien und Verzeichnisse, einschließlich versteckter, in einem detaillierten Langlistenformat zu erhalten.

ls -al

Beispielausgabe:

total 80
drwxr-x--- 16 ostechnix ostechnix 4096 May 13 13:18 .
drwxr-xr-x  3 root      root      4096 May 13 13:13 ..
-rw-------  1 ostechnix ostechnix  169 May 13 13:29 .bash_history
-rw-r--r--  1 ostechnix ostechnix  220 Mar 31 14:11 .bash_logout
-rw-r--r--  1 ostechnix ostechnix 3771 Mar 31 14:11 .bashrc
drwx------ 10 ostechnix ostechnix 4096 May 13 17:50 .cache
drwx------ 12 ostechnix ostechnix 4096 May 13 17:42 .config
drwxr-xr-x  2 ostechnix ostechnix 4096 May 13 13:14 Desktop
drwxr-xr-x  2 ostechnix ostechnix 4096 May 13 13:14 Documents
drwxr-xr-x  2 ostechnix ostechnix 4096 May 13 13:14 Downloads
drwx------  2 ostechnix ostechnix 4096 May 13 13:18 .gnupg
drwx------  4 ostechnix ostechnix 4096 May 13 13:13 .local
drwxr-xr-x  2 ostechnix ostechnix 4096 May 13 13:14 Music
drwxr-xr-x  2 ostechnix ostechnix 4096 May 13 13:14 Pictures
-rw-r--r--  1 ostechnix ostechnix  807 Mar 31 14:11 .profile
drwxr-xr-x  2 ostechnix ostechnix 4096 May 13 13:14 Public
drwx------  5 ostechnix ostechnix 4096 May 13 18:00 snap
drwx------  2 ostechnix ostechnix 4096 May 13 13:14 .ssh
-rw-r--r--  1 ostechnix ostechnix    0 May 13 13:14 .sudo_as_admin_successful
drwxr-xr-x  2 ostechnix ostechnix 4096 May 13 13:14 Templates
drwxr-xr-x  2 ostechnix ostechnix 4096 May 13 13:14 Videos

Verwandte Lektüre: Verschiedene Möglichkeiten, den Inhalt eines Verzeichnisses aufzulisten, ohne den Befehl ls in Linux zu verwenden

1.2. Navigieren durch Verzeichnisse

Jetzt, da Sie wissen, wie man in Verzeichnisse schaut, ist es an der Zeit zu lernen, wie man sich darin bewegt. Hier kommt der cd-Befehl ins Spiel.

cd directory_name

Dieser Befehl ändert Ihr aktuelles Arbeitsverzeichnis zu directory_name. Zum Beispiel wird cd Documents Sie in den Ordner Documents bringen.

Aber was, wenn du eine Ebene höher gehen willst? Kein Problem! Verwende einfach cd .., um zum übergeordneten Verzeichnis zu navigieren.

cd ..

Und wenn Sie sich jemals verloren fühlen oder neu anfangen müssen, führen Sie einfach cd / aus, um zum Stammverzeichnis zurückzukehren.

cd /

Um Ihren aktuellen Standort doppelt zu überprüfen, verwenden Sie den Befehl pwd, der für „print working directory“ steht. Er zeigt den vollständigen Pfad Ihres aktuellen Arbeitsverzeichnisses an.

pwd

Verwandte Lektüre: Wie man in Linux schneller durch Verzeichnisse navigiert

1.3. Erstellen und Löschen von Verzeichnissen

Da du jetzt ein Meister im Navigieren durch Verzeichnisse bist, lass uns lernen, wie man sie erstellt und entfernt.

Um ein neues Verzeichnis zu erstellen, verwenden Sie den Befehl mkdir gefolgt vom gewünschten Verzeichnisnamen.

mkdir new_directory

Aber was ist, wenn Sie verschachtelte Verzeichnisse erstellen müssen? Kein Problem! Fügen Sie einfach die Option -p hinzu, und mkdir erstellt alle erforderlichen übergeordneten Verzeichnisse auf dem Weg.

mkdir -p /path/to/new/directory

Bitte beachten Sie, dass Sie auch Verzeichnisse aus einer Textdatei erstellen können.

Wenn es Zeit ist aufzuräumen, benutze rmdir, um ein leeres Verzeichnis zu entfernen.

rmdir directory_to_remove

Wenn Sie jedoch ein Verzeichnis und seinen gesamten Inhalt löschen müssen, verwenden Sie den rm-Befehl mit der -r-Option (sei vorsichtig mit diesem!).

rm -r directory_to_remove

1.4. Arbeiten mit Dateien

Die Verwaltung von Dateien ist genauso wichtig wie die Verwaltung von Verzeichnissen. Lassen Sie uns einige grundlegende Datei-Befehle ansehen.

Um eine neue, leere Datei zu erstellen oder den Zeitstempel einer bestehenden Datei zu aktualisieren, verwenden Sie den Befehl touch.

touch new_file.txt

Das Kopieren von Dateien ist mit dem Befehl cp ein Kinderspiel. Geben Sie einfach die Quelldatei und die Zieldatei oder das Zielverzeichnis an.

cp source_file.txt destination_file.txt
cp source_file.txt directory/

Müssen Sie eine Datei verschieben oder umbenennen? Kein Problem! Der mv-Befehl hilft Ihnen dabei.

mv source_file.txt new_name.txt
mv source_file.txt directory/

Das Löschen von Dateien ist so einfach wie die Verwendung des rm-Befehls, aber seien Sie vorsichtig – dieser Vorgang ist irreversibel.

rm file_to_delete.txt

Wenn Sie das Löschen einer Datei erzwingen müssen (z. B. wenn sie schreibgeschützt ist), fügen Sie die Option -f hinzu.

rm -f read_only_file.txt

Manchmal muss man nur einen schnellen Blick auf den Inhalt einer Datei werfen. Der cat-Befehl ist dafür genau richtig.

cat file.txt

Aber was, wenn die Datei zu lang ist, um auf Ihren Bildschirm zu passen? Verwenden Sie less für ein interaktiveres Ansehen, mit Optionen, um durch die Datei Seite für Seite zu navigieren.

less long_file.txt

Müssen Sie nur den Anfang oder das Ende einer Datei sehen? Die Befehle head und tail haben Sie abgedeckt.

head file.txt    # Shows the first 10 lines
tail file.txt    # Shows the last 10 lines

Und wenn Sie eine Protokolldatei oder eine andere ständig wachsende Datei überwachen, verwenden Sie tail -f, um neue Zeilen kontinuierlich anzuzeigen, während sie hinzugefügt werden.

tail -f log_file.log

1.5. Erstellen von symbolischen Links

Lassen Sie uns nun über symbolische Links sprechen.

Diese speziellen Dateiverweise ermöglichen es Ihnen, auf die Zieldatei von mehreren Orten aus zuzugreifen, ohne deren Inhalt zu duplizieren.

Um einen symbolischen Link zu erstellen, verwenden Sie den Befehl ln mit der Option -s, gefolgt von der Quelldatei und dem gewünschten Linknamen.

ln -s source_file.txt link_to_file

Mit diesen Befehlen wirst du im Handumdrehen ein Profi im Datei- und Verzeichnismanagement unter Linux sein!

Verwandte Lektüre: Erklärung von Softlink und Hardlink in Linux mit Beispielen

2. Sicherer Remote-Zugriff mit SSH unter Linux

Das Arbeiten aus der Ferne ist ein häufiges Szenario für viele Linux-Benutzer und Administratoren. Das Secure Shell-Protokoll, besser bekannt als SSH, ermöglicht es Ihnen, verschlüsselte Verbindungen zu entfernten Systemen über unsichere Netzwerke wie das Internet herzustellen.

Lassen Sie uns einige wichtige SSH-Befehle besprechen, die den Fernzugriff zum Kinderspiel machen.

2.1. Verbindung zu entfernten Hosts

Wie bereits erwähnt, ermöglicht uns SSH, sicher eine Verbindung zu entfernten Hosts herzustellen.

Die grundlegende Syntax ist einfach:

ssh user@host

Dieser Befehl startet eine SSH-Verbindung zum host-System und fordert Sie zur Eingabe des Passworts des user auf. Nach der Authentifizierung haben Sie eine sichere Shell-Sitzung auf dem entfernten System.

Beispiel:

ssh ostechnix@192.168.1.100

Aber was, wenn der SSH-Server auf dem entfernten Host auf einem nicht standardmäßigen Port lauscht? Kein Problem! Geben Sie einfach den Port mit der Option -p an.

ssh -p port_number user@host

Ersetzen Sie port_number durch die tatsächliche Portnummer, die der SSH-Server auf dem entfernten Host verwendet.

Beispiel:

ssh -p 2200 ostechnix@192.168.1.100

Verwandte Lektüre:

  • Wie man mehrere SSH-Verbindungen unter Linux effizient verwaltet
  • So konfigurieren Sie die SSH-Schlüsselbasierte Authentifizierung in Linux

2.2. Dynamisches Port-Forwarding

SSH ist nicht nur für interaktive Shell-Sitzungen geeignet; es kann auch für sichere Tunneling und Portweiterleitung verwendet werden.

Diese Funktion ist unglaublich praktisch, wenn Sie auf Dienste oder Ressourcen in einem entfernten Netzwerk zugreifen müssen, die möglicherweise durch Firewalls oder andere Sicherheitsmaßnahmen blockiert sind.

Dynamisches Port-Forwarding auf Anwendungsebene ermöglicht es Ihnen, beliebige Datenströme durch einen verschlüsselten SSH-Tunnel weiterzuleiten. So richten Sie es ein:

ssh -D port_number user@host

Dieser Befehl verbindet Sie mit dem entfernten host als user und richtet einen lokalen SOCKS-Proxy-Server auf dem angegebenen port_number ein.

Jede Anwendung, die so konfiguriert ist, dass sie diesen SOCKS-Proxy verwendet, wird ihren Verkehr automatisch durch den verschlüsselten SSH-Tunnel weiterleiten, wodurch effektiv alle Einschränkungen umgangen werden, die von Firewalls oder Netzwerkrichtlinien auferlegt werden.

Diese Funktion ist besonders nützlich, wenn Sie auf Webdienste, E-Mail-Server oder andere Internetressourcen innerhalb eines eingeschränkten Netzwerkumfelds, wie zum Beispiel einem Unternehmens- oder Bildungsnetzwerk, zugreifen müssen.

Mit diesen SSH-Befehlen können Sie remote Systeme sicher und einfach verwalten und darauf zugreifen, unabhängig von Ihrem Standort oder den Netzwerkbeschränkungen.

3. Wichtige Netzwerkbefehle unter Linux

Egal, ob Sie Verbindungsprobleme beheben, Dateien aus dem Internet herunterladen oder Informationen über Domains untersuchen, die folgenden Netzwerkbefehle werden zu unverzichtbaren Werkzeugen für die Netzwerkverwaltung und Fehlerbehebung unter Linux.

3.1. Testen der Netzwerkkonnektivität

Bei Netzwerkproblemen besteht der erste Schritt oft darin zu überprüfen, ob Sie einen entfernten Host erreichen können.

Geben Sie den ping-Befehl ein, Ihr zuverlässiges Netzwerkdiagnosetool:

ping host

Ersetzen Sie host durch die IP-Adresse oder den Domainnamen, mit dem Sie die Konnektivität testen möchten. Der ping-Befehl sendet Pakete an den Zielhost und meldet die Antwortzeiten zurück, wodurch Sie mögliche Netzwerkprobleme erkennen können.

Verwandte Lektüre: Wie man mehrere Hosts gleichzeitig in Linux anpingt

3.2. Untersuchung von Domain-Informationen

Neugierig auf die Details hinter einem bestimmten Domainnamen? Die Befehle whois und dig helfen Ihnen weiter.

whois domain

Dieser Befehl ruft die Whois-Informationen für die angegebene Domain ab und zeigt Details wie den Domain-Registrar, Registrierungsdaten und Kontaktinformationen an.

dig domain

Der dig-Befehl, kurz für „domain information groper“, fragt DNS-Server nach Informationen über die angegebene Domain ab. Dazu gehören IP-Adressen, Nameserver und andere mit der Domain verbundene DNS-Einträge.

Aber dig kann mehr als nur Vorwärtsabfragen durchführen. Müssen Sie herausfinden, welcher Domainname einer bestimmten IP-Adresse entspricht? Verwenden Sie die -x-Option für eine Reverse-DNS-Abfrage:

dig -x ip_address

3.3. Herunterladen von Dateien aus dem Web

Manchmal möchte man vielleicht ein Softwarepaket, eine Dokumentation oder andere Online-Ressourcen aus dem Web herunterladen. Hier kommt wget ins Spiel, Ihr Kommandozeilen-Download-Tool.

wget file_url

Geben Sie einfach die URL der Datei an, die Sie herunterladen möchten, und wget wird sie für Sie abrufen. Aber das ist nur der Anfang seiner Möglichkeiten.

Wenn Ihr Download aus irgendeinem Grund unterbrochen wird, müssen Sie nicht von vorne beginnen. Verwenden Sie einfach die Option -c, um dort fortzufahren, wo Sie aufgehört haben:

wget -c file_url

Und was, wenn Sie eine komplette Website oder Verzeichnisstruktur herunterladen müssen? wget deckt das mit seiner rekursiven Download-Funktion ab:

wget -r url

Dieser Befehl lädt Dateien rekursiv von der angegebenen URL herunter, folgt den Links und spiegelt die Verzeichnisstruktur auf Ihrem lokalen System.

Durch die Verwendung dieser Netzwerkbefehle können Sie Verbindungsprobleme diagnostizieren, Informationen über Domains untersuchen und Dateien aus dem Internet mühelos herunterladen, alles bequem von Ihrem Linux-Terminal aus.

4. Systeminformationsbefehle unter Linux

Als Linux-Benutzer oder Administrator sollten Sie wissen, wie Sie detaillierte Informationen über den Zustand und die Ressourcen Ihres Systems abrufen können.

Von der Überprüfung der Systemlaufzeit und der Benutzeraktivität bis hin zur Inspektion von Hardwaredetails und der Festplattennutzung werden Ihnen die folgenden Befehle Einblicke in das System geben und Ihnen helfen, Ihre Linux-Umgebung besser zu verstehen und zu verwalten.

4.1. Zeit- und Datumsübersicht behalten

Beginnen wir mit dem Absoluten – sich über die aktuelle Zeit und das Datum auf dem Laufenden zu halten. Der date-Befehl ist dafür Ihr Werkzeug der Wahl:

date

Müssen Sie den Kalender für einen bestimmten Monat überprüfen? Der cal-Befehl hat alles, was Sie brauchen:

cal

Sie können sogar einen anderen Monat oder ein anderes Jahr angeben, indem Sie weitere Argumente bereitstellen.

4.2. Überwachung der Systemverfügbarkeit und der Benutzeraktivität

Neugierig, wie lange Ihr System schon läuft? Der Befehl uptime gibt Ihnen diese Informationen sowie einige zusätzliche Laststatistiken:

uptime

Möchten Sie sehen, wer derzeit angemeldet ist und was er gerade tut? Der Befehl w bietet eine übersichtliche Zusammenfassung der Benutzeraktivität:

w

Nicht sicher über deinen aktuellen Benutzernamen? Kein Problem! Führe einfach whoami aus, um es herauszufinden:

whoami

4.3. Überprüfung von Hardware- und Systemdetails

Bereit, tiefer in die Hardware-Spezifikationen Ihres Systems einzutauchen? Der uname-Befehl ist Ihr Freund:

uname -a

Dieser Befehl zeigt Details wie die Kernel-Version, den Namen des Betriebssystems und die Prozessorarchitektur an.

Apropos Prozessoren, Sie können detaillierte CPU-Informationen erhalten, indem Sie die Datei /proc/cpuinfo überprüfen:

cat /proc/cpuinfo

Ähnlich liefert die Datei /proc/meminfo Einblicke in die Speicherverwendung und -konfiguration Ihres Systems:

cat /proc/meminfo

Verwandte Lektüre:

  • So überprüfen oder finden Sie CPU-Informationen in Linux
  • Finden Sie Linux-Systemhardwareinformationen mit Hwinfo
  • So finden Sie Linux-Systemdetails mit inxi
  • Linux-Systeminformationen im Terminal mit Macchina anzeigen
  • Neofetch – Zeige Linux-Systeminformationen im Terminal an
  • Finden Sie den Namen der Linux-Distribution, die Version und die Kernel-Details
  • So finden Sie Hardware-Spezifikationen unter Linux
  • Linux-Systemdetails mit Python finden

4.4. Analyse des Festplattenspeichers und der Speichernutzung

Die Überwachung des Speicherplatzes auf der Festplatte und der Speichernutzung ist entscheidend, um ein gesundes und effizientes System aufrechtzuerhalten.

Der df-Befehl zeigt Ihnen, wie viel Speicherplatz auf Ihren verschiedenen Dateisystemen verfügbar und verwendet ist:

df

Um die Ausgabe in menschenlesbarem Format anzuzeigen, fügen Sie die Option -h hinzu.

df -h

Brauchen Sie eine detailliertere Ansicht der Verzeichnisplatznutzung? Der du-Befehl hilft Ihnen dabei:

du directory_path

Für eine menschenlesbare Zusammenfassung der Größe eines Verzeichnisses fügen Sie die Optionen -sh hinzu:

du -sh directory_path

Überprüfen Sie den folgenden Link, um die Befehle df und du im Detail zu verstehen.

  • Festplattenplatzanalyse leicht gemacht: Die Befehle df und du in Linux verstehen

Und wenn es um Speicher geht, gibt Ihnen der Befehl free eine Aufschlüsselung des verfügbaren und genutzten Speichers, einschließlich Swap-Speicher:

free -m

Die -m-Option zeigt die Werte in Megabyte zur besseren Verständlichkeit an.

4.5. Auffinden von ausführbaren Dateien

Wenn Sie jemals den genauen Speicherort einer ausführbaren Datei auf Ihrem System herausfinden müssen, hilft Ihnen der Befehl which:

which application_name

Dieser Befehl durchsucht den PATH Ihres Systems und gibt den vollständigen Pfad zur angegebenen application_name-Ausführungsdatei aus.

Beispiel:

$ which firefox
/usr/bin/firefox

4.6. Zugriff auf die Befehlsverlauf

Der history-Befehl ist ein integrierter Shell-Befehl, der die zuvor ausgeführten Befehle in der aktuellen Terminal-Sitzung auflistet. Er bietet eine bequeme Möglichkeit, vorherige Befehle zu überprüfen, zu wiederholen oder zu ändern, ohne sie von Grund auf neu eingeben zu müssen.

Grundlegende Verwendung:

history

Dies zeigt eine nummerierte Liste aller in der aktuellen Sitzung ausgeführten Befehle an, wobei der zuletzt ausgeführte Befehl zuletzt aufgeführt wird.

Ausgabe begrenzen:

history 20

Dies zeigt nur die letzten 20 Befehle in der Verlaufsliste an.

Einen Befehl wiederholen:

!n

Wobei n die Zeilennummer des Befehls in der Verlaufsliste ist. Dies wird den Befehl ausführen, der mit dieser Zeilennummer verknüpft ist.

Zum Beispiel würde !515 den Befehl ausführen, der in Zeile 515 der Historie aufgeführt ist.

Nach einem Befehl suchen:

ctrl+r

Dies ermöglicht es Ihnen, in der Historie nach einem bestimmten Befehl zu suchen, indem Sie einen Teil des Befehls eingeben. Drücken Sie Strg+r wiederholt, um durch passende Befehle zu blättern.

Verlauf löschen:

history -c

Dies wird die Verlaufsliste für die aktuelle Sitzung löschen.

Der history-Befehl ist besonders nützlich, wenn Sie einen komplexen Befehl wiederholen, Ihre jüngsten Aktivitäten überprüfen oder Probleme beheben müssen, indem Sie die von Ihnen ausgeführten Befehle analysieren.

Es kann Ihre Produktivität und Effizienz beim Arbeiten mit der Linux-Befehlszeile erheblich verbessern.

Verwandter Artikel - So löschen Sie den Befehlsverlauf in Linux

4.7. Hilfe zu Befehlen erhalten

Fühlen Sie sich verloren oder unsicher, wie Sie einen bestimmten Befehl verwenden sollen? Der man (kurz für "Handbuch") Befehl ist Ihr Begleiter.

Es bietet umfassende Dokumentation und Anwendungsbeispiele für den angegebenen Befehl.

man command

Ersetzen Sie command durch den Namen des Befehls, bei dem Sie Hilfe benötigen, und das Handbuch wird direkt in Ihrem Terminal angezeigt.

Beispiel:

man uname

Verwandte Lektüre: Lerne, wie man Man-Seiten unter Linux effizient nutzt

Mit diesen Systeminformationsbefehlen werden Sie ein tiefes Verständnis des Zustands, der Ressourcen und der Hardwarekonfiguration Ihres Linux-Systems haben.

5. Linux-Prozessverwaltungsbefehle

Egal, ob Sie Systemressourcen verwalten, Probleme beheben oder einfach nur im Auge behalten, was gerade läuft, diese Befehle zur Prozessverwaltung geben Ihnen die vollständige Kontrolle über die Prozesse Ihres Systems.

5.1. Auflisten laufender Prozesse

Um einen Einblick in die derzeit auf Ihrem System laufenden Prozesse zu erhalten, können Sie den Befehl ps verwenden.

Führen Sie den ps-Befehl ohne Argumente aus, um die mit Ihrer aktuellen Shell verbundenen Prozesse zu sehen:

ps

Für eine umfassendere Ansicht verwenden Sie jedoch die aux-Optionen, um detaillierte Informationen über alle laufenden Prozesse anzuzeigen, einschließlich derjenigen, die anderen Benutzern gehören:

ps aux

Dies zeigt Ihnen detaillierte Informationen für jeden Prozess, wie den Benutzer, der ihn besitzt, die CPU- und Speichernutzung sowie den Befehl, der ihn gestartet hat.

Verwandte Lektüre: So finden Sie die übergeordnete Prozess-ID (PPID) in Linux

5.2. Prozesse beenden

Manchmal müssen Sie einen sich fehlerhaft verhaltenden oder nicht reagierenden Prozess beenden. Der kill-Befehl ist in diesen Situationen Ihr Freund:

kill pid

Ersetzen Sie pid durch die Prozess-ID (PID) des Prozesses, den Sie beenden möchten. Sie können die PID finden, indem Sie ps aux ausführen und nach dem betreffenden Prozess suchen.

Wenn Sie lieber alle Instanzen eines bestimmten Prozesses beenden möchten, verwenden Sie stattdessen den Befehl killall:

killall process_name

Dieser Befehl sendet ein Beendigungssignal an alle Prozesse mit dem angegebenen process_name.

Verwandte Lektüre: Fkill – Interaktiv Prozesse unter Linux suchen und beenden

5.3. Verwalten von Hintergrund- und Vordergrundprozessen

In Linux können Sie Prozesse im Hintergrund oder im Vordergrund ausführen. Hintergrundprozesse laufen unabhängig, sodass Sie Ihr Terminal weiterhin für andere Aufgaben verwenden können, während Vordergrundprozesse Ihr Terminal beanspruchen, bis sie abgeschlossen oder gestoppt werden.

Wenn Sie einen Prozess im Vordergrund ausführen, den Sie in den Hintergrund verschieben möchten, verwenden Sie den Befehl bg:

bg

Dies wird den zuletzt ausgeführten Hintergrundprozess fortsetzen und Ihr Terminal für andere Aufgaben freigeben.

Umgekehrt, wenn Sie einen Hintergrundprozess haben, den Sie in den Vordergrund bringen möchten, verwenden Sie den Befehl fg:

fg

Dies wird den zuletzt gestarteten Hintergrundjob in den Vordergrund bringen, sodass Sie direkt damit interagieren können.

Aber was, wenn Sie mehrere Hintergrundaufgaben haben und eine bestimmte in den Vordergrund bringen müssen? Kein Problem! Geben Sie einfach die Jobnummer an:

fg job_number

Sie können die Jobnummer finden, indem Sie den Befehl jobs ausführen, der alle Hintergrundjobs auflistet.

Durch die Verwendung dieser Prozessverwaltungsbefehle haben Sie die vollständige Kontrolle über die Prozesse Ihres Systems, sodass Sie sie einfach überwachen, beenden und verwalten können.

6. Sichern Ihrer Dateien mit Linux-Berechtigungen

Unter Linux spielen Dateiberechtigungen eine entscheidende Rolle bei der Aufrechterhaltung der Systemsicherheit und der Kontrolle des Zugriffs auf sensible Daten.

Die folgenden Befehle ermöglichen es Ihnen, Berechtigungen für Dateien und Verzeichnisse festzulegen und zu ändern, sodass nur autorisierte Benutzer sie lesen, schreiben oder ausführen können.

6.1. Verstehen von Dateiberechtigungen

Bevor wir uns den Befehlen zuwenden, lassen Sie uns kurz durchgehen, wie Dateiberechtigungen in Linux funktionieren.

Jede Datei oder jedes Verzeichnis hat drei Berechtigungssets: eines für den Eigentümer, eines für die Gruppe und eines für andere (alle Benutzer, die nicht zur Gruppe des Eigentümers gehören).

Jedes Berechtigungspaar besteht aus drei Flags:

  • r (lesen): Gewährt die Fähigkeit, den Inhalt der Datei zu lesen oder den Inhalt eines Verzeichnisses aufzulisten.
  • w (schreiben): Ermöglicht das Ändern oder Löschen der Datei oder das Erstellen neuer Dateien in einem Verzeichnis.
  • x (ausführen): Gewährt die Möglichkeit, die Datei auszuführen (wenn es ein Programm oder Skript ist) oder auf den Inhalt eines Verzeichnisses zuzugreifen.

6.2. Ändern von Dateiberechtigungen mit chmod

Der chmod-Befehl wird zum Ändern von Dateiberechtigungen verwendet. Er ermöglicht es Ihnen, Berechtigungen entweder mit symbolischer oder oktaler Notation festzulegen:

chmod octal_value file

In der Oktalnotation wird jede Berechtigungsgruppe (Besitzer, Gruppe, Andere) durch eine einzelne Ziffer dargestellt, die berechnet wird, indem die Werte der gewünschten Berechtigungen addiert werden:

  • 4 zum Lesen
  • 2 zum Schreiben
  • 1 zum Ausführen

Zum Beispiel, um Lese-, Schreib- und Ausführungsrechte für den Besitzer sowie Lese- und Ausführungsrechte für Gruppe und andere zu gewähren, würden Sie Folgendes verwenden:

chmod 755 file

Der oktale Wert 755 zerfällt wie folgt:

  • 7 (4+2+1) für den Besitzer (lesen, schreiben, ausführen)
  • 5 (4+1) für die Gruppe (lesen, ausführen)
  • 5 (4+1) für andere (lesen, ausführen)

Sie können auch symbolische Notation verwenden, um bestimmte Berechtigungen zu ändern:

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

Dieser Befehl gewährt dem Besitzer Lese-, Schreib- und Ausführungsrechte (u=rwx), der Gruppe Lese- und Ausführungsrechte (g=rx) und anderen Benutzer Leserechte (o=r).

6.3. Berechtigungen rekursiv ändern

Wenn Sie die Berechtigungen für eine gesamte Verzeichnisstruktur, einschließlich aller Unterverzeichnisse und Dateien, ändern müssen, verwenden Sie die Option -R mit chmod:

chmod -R 755 directory

Dieser Befehl wendet rekursiv die angegebenen Berechtigungen (755 in diesem Fall) auf das Verzeichnis und seinen gesamten Inhalt an.

Dateiberechtigungen sind ein wichtiger Aspekt der Linux-Sicherheit, und das Beherrschen dieser Befehle wird Ihnen helfen, eine sichere und kontrollierte Umgebung für Ihre Dateien und Verzeichnisse zu erhalten.

Denken Sie daran, diese Befehle verantwortungsbewusst zu verwenden und Ihre Einstellungen immer doppelt zu überprüfen, bevor Sie Änderungen vornehmen, um sicherzustellen, dass Sie nicht versehentlich den Zugriff auf sensible Daten gewähren oder entziehen.

Wir haben einen speziellen Leitfaden, der die Linux-Berechtigungen im Detail erklärt. Wenn Sie interessiert sind, schauen Sie bitte den folgenden Link an:

  • Ein Einsteigerleitfaden zum Verständnis von Linux-Dateiberechtigungen

7. Komprimieren und Archivieren von Dateien in Linux

Kompression und Archivierung spielen eine entscheidende Rolle beim Einsparen von Speicherplatz und bei der Erleichterung der Übertragung großer Dateien oder Dateisammlungen.

Linux bietet eine leistungsstarke Reihe von Befehlen zum Erstellen, Extrahieren und Verwalten komprimierter Archive, wodurch Sie effizient mit Ihren Daten arbeiten können.

7.1. Der tar-Befehl

Im Zentrum der Kompression und Archivierung unter Linux steht der Befehl tar, der für "tape archiver" steht.

Obwohl ursprünglich zum Erstellen von Archiven auf Bandlaufwerken entwickelt, ist tar zu einem unverzichtbaren Werkzeug zum Komprimieren und Dekomprimieren von Dateien auf modernen Systemen geworden.

7.1.1. Archive erstellen

Um ein neues Archiv zu erstellen, verwenden Sie einfach die Option c, gefolgt vom gewünschten Archivnamen und den Dateien oder Verzeichnissen, die Sie einbeziehen möchten:

tar cf archive.tar files_to_include

Dieser Befehl erstellt ein neues Archiv mit dem Namen archive.tar, das die angegebenen files_to_include enthält. Sie können mehrere Dateien und Verzeichnisse einbeziehen, indem Sie sie durch Leerzeichen trennen.

Verwandte Lektüre:

  • Wie man Dateien und Verzeichnisse unter Linux archiviert (Teil 1)
  • Wie man Dateien und Verzeichnisse in Linux archiviert (Teil 2)

7.1.2. Extrahieren von Archiven

Wenn Sie den Inhalt eines Archivs extrahieren müssen, verwenden Sie die Option x mit tar:

tar xf archive.tar

Dieser Befehl wird die Dateien und Verzeichnisse aus archive.tar in das aktuelle Arbeitsverzeichnis extrahieren.

7.1.3. Auflisten des Inhalts eines Archivs

Bevor Sie ein Archiv extrahieren, möchten Sie möglicherweise dessen Inhalt anzeigen. Die Option t ermöglicht es Ihnen, die Dateien und Verzeichnisse innerhalb eines Archivs aufzulisten:

tar tf archive.tar

Dieser Befehl zeigt den Inhalt von archive.tar an, ohne ihn tatsächlich zu entpacken, und gibt Ihnen einen Einblick, was sich darin befindet.

7.2. Archive komprimieren

Während tar großartig zum Erstellen von Archiven ist, komprimiert es die Daten standardmäßig nicht wirklich.

Um komprimierte Archive zu erstellen und Speicherplatz zu sparen, müssen Sie tar mit einem Komprimierungsprogramm wie gzip oder bzip2 kombinieren.

7.2.1. Komprimierte Archive erstellen

So können Sie ein komprimiertes Archiv mit gzip erstellen:

tar czf archive.tar.gz files_to_include

Die c-Option erstellt ein neues Archiv, z gibt an, dass das Archiv mit gzip komprimiert werden soll, und f zeigt an, dass der Archivname folgen soll.

Ebenso können Sie bzip2 für bessere Kompressionsraten (aber langsamere Kompressions-/Dekompressionsgeschwindigkeiten) verwenden:

tar cjf archive.tar.bz2 files_to_include

7.2.3 Extrahieren komprimierter Archive

Das Extrahieren komprimierter Archive folgt dem gleichen Muster wie bei unkomprimierten, aber Sie müssen das entsprechende Dekomprimierungsprogramm angeben:

tar xzf archive.tar.gz  # For gzip-compressed archives
tar xjf archive.tar.bz2 # For bzip2-compressed archives

Das Erlernen dieser Komprimierungs- und Archivierungsbefehle wird Ihnen helfen, Ihre Dateien effizient zu verwalten, Speicherplatz zu sparen und große Daten über Systeme oder Netzwerke zu übertragen.

HINWEIS: Denken Sie daran, dass Komprimierung ein zweischneidiges Schwert sein kann – sie spart zwar Platz, erhöht jedoch auch die CPU-Auslastung während der Komprimierung und Dekomprimierung. Berücksichtigen Sie immer Ihren Anwendungsfall und die Leistungsanforderungen, wenn Sie mit komprimierten Archiven arbeiten.

8. Datei- und Verzeichnissuchbefehle

Die Verzeichnisstruktur von Linux ist sehr komplex. Die Fähigkeit, bestimmte Dateien, Verzeichnisse oder Muster innerhalb von Dateien zu suchen und zu finden, ist eine unschätzbare Fähigkeit.

Egal, ob Sie nach einer Konfigurationsdatei, Debug-Protokolleinträgen oder beim Durchsuchen von Code-Repositories suchen, die folgenden Befehle werden sehr hilfreich sein.

8.1. Der grep-Befehl

Der grep-Befehl, der für "global regular expression print" steht, ermöglicht es Ihnen, nach Mustern innerhalb von Dateien, Verzeichnissen oder sogar der Ausgabe anderer Befehle zu suchen.

8.1.1. Suche innerhalb von Dateien

Um nach einem bestimmten Muster in einer oder mehreren Dateien zu suchen, verwenden Sie die folgende Syntax:

grep pattern file1 file2 ...

Ersetzen Sie pattern durch den Text oder den regulären Ausdruck, nach dem Sie suchen, und geben Sie die Dateien an, die Sie durchsuchen möchten.

8.1.2. Rekursive Verzeichnissuchen

Wenn Sie in einer gesamten Verzeichnisstruktur suchen müssen, einschließlich Unterverzeichnissen, fügen Sie die -r-Option hinzu:

grep -r pattern directory

Dieser Befehl durchsucht rekursiv nach dem angegebenen pattern innerhalb des directory und aller seiner Unterverzeichnisse.

8.1.3. Durchsuchen von Befehlsausgaben

Eine der leistungsstärksten Funktionen von grep ist seine Fähigkeit, die Ausgabe anderer Befehle zu durchsuchen. Verwenden Sie das Pipe-Symbol (|), um die Ausgabe eines Befehls in grep einzuspeisen:

command | grep pattern

Diese Technik ist besonders nützlich zum Filtern und Durchsuchen von Protokolldateien oder Befehlsausgaben in Echtzeit.

Zum Beispiel:

ps aux | grep firefox

Dies listet alle laufenden Prozesse auf, die "firefox" in ihrem Namen oder ihrer Befehlszeile haben.

Für weitere Details sehen Sie sich unser Grep-Tutorial unter folgendem Link an:

  • Das Grep-Befehls-Tutorial mit Beispielen für Anfänger

8.2. Dateien mit locate finden

Während grep hervorragend zum Suchen innerhalb von Dateien ist, ist der Befehl locate Ihr bevorzugtes Werkzeug zum Finden von Dateien und Verzeichnissen auf Ihrem System.

Der locate-Befehl verwendet eine vorgefertigte Datenbank von Dateinamen und Speicherorten, die blitzschnelle Suchen ermöglicht:

locate file_name

Dieser Befehl durchsucht die Datenbank und zeigt die vollständigen Pfade aller Dateien und Verzeichnisse an, die file_name entsprechen.

Es ist wichtig zu beachten, dass die locate-Datenbank regelmäßig aktualisiert wird, sodass sie möglicherweise nicht immer die neuesten Änderungen an Ihrem Dateisystem widerspiegelt.

Wenn Sie sicherstellen müssen, dass Sie die neuesten Daten durchsuchen, verwenden Sie den Befehl updatedb, um die Datenbank zu aktualisieren, bevor Sie locate ausführen.

Mit diesen Suchbefehlen können Sie schnell und effizient die Dateien, Verzeichnisse oder Muster finden, die Sie auf Ihrem Linux-System benötigen.

9. Zusätzliche Befehle

Die bisher behandelten Befehle sind in der Tat grundlegend und unverzichtbar für die Verwaltung von Dateien, Prozessen und Systeminformationen unter Linux.

Aber sie stellen nur die Spitze des Eisbergs dar, wenn es um die riesige Vielzahl von Befehlen und Werkzeugen im Linux-Ökosystem geht.

Für einen Anfänger und fortgeschrittenen Benutzer ist das Beherrschen dieser grundlegenden Befehle ein hervorragender Ausgangspunkt, da sie Ihnen eine solide Grundlage für das Navigieren und Verwalten Ihres Linux-Systems bieten.

Wenn Sie mehr Erfahrung und Selbstvertrauen gewinnen, werden Sie wahrscheinlich Ihr Wissen erweitern und zusätzliche Befehle und Werkzeuge lernen wollen, um fortgeschrittenere Aufgaben auszuführen.

Hier sind einige zusätzliche Befehle und Werkzeuge, die für einen Linux-Anfänger wertvoll zu lernen sein können:

Textbearbeitungsbefehle

  • nano - Ein einfacher und benutzerfreundlicher Texteditor für die Kommandozeile, perfekt für Anfänger.
  • vi oder vim - Ein leistungsstarker und allgegenwärtiger Texteditor mit einer steilen Lernkurve, aber unglaublich vielseitig, sobald man ihn gemeistert hat.

Paketverwaltungsbefehle

  • apt (Debian/Ubuntu) oder dnf (Fedora/RHEL/CentOS/AlmaLinux/Rocky Linux) - Befehle zum Installieren, Aktualisieren und Verwalten von Softwarepaketen auf Ihrer Linux-Distribution.

Benutzer- und Gruppenverwaltungsbefehle

  • useradd - Erstellt ein neues Benutzerkonto.
  • userdel - Entfernt ein Benutzerkonto.
  • groupadd - Erstellt eine neue Gruppe.
  • groupdel - Entfernt eine Gruppe.
  • usermod - Ändert Benutzerkontoeigenschaften.
  • groupmod - Ändert Gruppen-Eigenschaften.

Systemverwaltungsbefehle

  • systemctl - Verwaltet und steuert Systemdienste und Daemons.
  • journalctl - Zeigt Systemprotokolle an und verwaltet sie.
  • top oder htop - Zeigt Echtzeitinformationen über laufende Prozesse und die Nutzung von Systemressourcen an.
  • iptables oder firewall-cmd - Konfiguriert und verwaltet die Firewall-Regeln des Systems.

Netzwerkkonfigurationsbefehle

  • ip - Zeigt Netzwerkinterfaces und Routing-Tabellen an und konfiguriert sie.
  • ifconfig - Ein älterer Befehl zum Konfigurieren von Netzwerkschnittstellen (wird durch ip ersetzt).
  • netstat oder ss - Zeigt Netzwerkverbindungen, Routingtabellen und Netzwerkinterfacesstatistiken an.
  • nmap - Ein leistungsstarkes Werkzeug zur Netzwerkexploration und Sicherheitsüberprüfung.

Wenn Sie Linux weiter erkunden, werden Sie viele weitere spezialisierte Befehle und Werkzeuge für bestimmte Aufgaben entdecken, wie beispielsweise Systemüberwachung, Sicherheit, Virtualisierung und Softwareentwicklung.

Wir werden sie alle in einem separaten Artikel in der Zukunft behandeln.

Fazit

In diesem Tutorial haben wir viele grundlegende Linux-Befehle sowohl für Anfänger als auch für fortgeschrittene Benutzer behandelt. Obwohl nicht vollständig, bieten diese Grundlagen eine solide Basis.

Die Linux-Befehlszeilenschnittstelle ist ein weites und mächtiges Ökosystem, und kontinuierliches Lernen ist der Schlüssel, um sie zu beherrschen.

Denken Sie daran, dass Übung beim Erlernen neuer Befehle unerlässlich ist. Scheuen Sie sich nicht, in einer sicheren Umgebung, die nicht produktiv ist, zu experimentieren, und konsultieren Sie die umfangreiche Dokumentation und die online verfügbaren Ressourcen für Linux.

Mit Zeit und Engagement werden Sie darin geübt sein, Ihr Linux-System mithilfe der Befehlszeile zu navigieren und zu verwalten.

Verwandte Lektüre:

  • Die besten modernen Linux-Befehle für Anfänger und Experten
  • 15 essentielle Linux-Befehle, die jeder Anfänger kennen sollte
  • Linux-Befehlszeilen-Tricks für einen effizienten und schnelleren Arbeitsablauf
  • Wie man mühelos Befehle aus der Linux-Befehls-Historie wie ein Profi abruft