Linux-Befehle
Einführung
Wer sollte diesen Leitfaden lesen
Sind Sie ein Anfänger von GNU / Linux und möchten über das übliche Ziehen und Klicken mit der Maus hinausblicken? Dieses Handbuch richtet sich an Anfänger, die die Grundlagen der GNU / Linux-Befehlszeile erlernen möchten. In diesem Lernprogramm werden grundlegende Linux-Befehle in Bezug auf Navigation, Datei- und Verzeichnisverwaltung, Softwareinstallation und grundlegende Systemfehlerbehebung beschrieben.Was ist die GNU / Linux-Befehlszeile?
Wenn Sie jemanden über das GNU / Linux-Betriebssystem sprechen hören, hören Sie wahrscheinlich auch, wie er über Befehlszeilen- oder Linux-Befehle spricht. Führen Sie diesen Befehl aus und führen Sie diesen und jenen Befehl aus! Richtig?Aber warum? Warum ist das GNU / Linux-Betriebssystem fast immer mit Befehlen und Befehlszeilen verbunden? Die einfache Antwort lautet, dass die Befehlszeile ein wesentlicher Bestandteil des GNU / Linux-Betriebssystems ist und dem Benutzer somit die Möglichkeit bietet, Aufgaben effizienter, präziser und vor allem mit zusätzlichen Einsichtsinformationen über den gesamten Ausführungsprozess auszuführen.

Seien wir ehrlich zu uns selbst! Unabhängig davon, welche Entschuldigung Sie für Ihre Abneigung gegen das GNU / Linux-System und dessen Befehlszeile haben, hängt die Ursache höchstwahrscheinlich mit dem mangelnden Verständnis und der mangelnden Lernbereitschaft zusammen.
Lassen Sie uns deshalb das GNU / Linux-System nicht für unsere Mängel verantwortlich machen! Es ist hier, um zu helfen, ob Sie ein Anfänger oder ein fortgeschrittener Benutzer sind. Inwieweit das System Ihnen helfen kann, hängt nicht von der Tiefe Ihrer Brieftasche ab, wie dies bei einigen anderen proprietären Betriebssystemen der Fall ist! Die Menge an Hilfe, die Sie vom GNU / Linux-System erhalten, hängt ausschließlich von Ihrer Lernbereitschaft und Ihrer Entschlossenheit ab.
Zu diesem Zeitpunkt bin ich sicher, dass die Frage, die Sie sich stellen, lautet:Muss ich die GNU / Linux-Befehlszeile und die unzähligen Befehle lernen, um das GNU / Linux-Betriebssystem verwenden zu können? Die schnelle Antwort lautet nein! Für ein anständiges GNU / Linux-Betriebssystem mit installierter GUI muss der Benutzer nicht die Befehlszeile verwenden, um grundlegende und sogar erweiterte Aufgaben auszuführen.
Der einzige Grund, warum Sie in Betracht ziehen könnten, die GNU / Linux-Befehlszeile zu lernen, besteht darin, Ihre Effizienz zu verbessern, um das System optimal zu nutzen, und wenn die bevorstehende Aufgabe dies erfordert. Denken Sie daran, dass viele GNU / Linux-Benutzer jahrelang arbeiten, ohne zu wissen, was eine Befehlszeile ist! Die Linux-Befehlszeile nicht zu kennen ist vollkommen in Ordnung, und wenn das System das tut, was Sie brauchen, müssen Sie nicht einmal die grundlegendsten Befehle lernen.
Unabhängig davon, welche Version des GNU / Linux-Betriebssystems Sie verwenden, ob es über eine grafische Benutzeroberfläche verfügt oder nicht, die Befehlszeile ist immer in irgendeiner Form vorhanden.

Dazu muss man jedoch zumindest das rudimentäre Verständnis der GNU / Linux-Befehlszeile besitzen und einige grundlegende Funktionen einiger der angebotenen Befehle erlernen. Haben Sie keine Angst, denn genau das lernen Sie, wenn Sie dieses Tutorial zu Linux-Befehlen lesen.
Was sind Linux-Befehle?
Linux-Befehle sind die Essenz des gesamten GNU / Linux-Betriebssystems, mit dem das gesamte System verwaltet wird. Sie wissen es vielleicht nicht, aber die meisten Anwendungen, die Sie auf der grafischen Benutzeroberfläche ausführen, führen im Hintergrund Linux-Befehle für Sie aus, um die angegebene Aufgabe auszuführen.Es hat viele offensichtliche Vorteile, wenn die Anwendung Linux-Befehle automatisch für uns ausführen lässt. Der Nachteil ist jedoch, dass wir in vielen Fällen die Befehlsausführung nicht anpassen können, um sie auf das gewünschte Ergebnis abzustimmen. Wenn etwas schief geht, bleibt der Benutzer höchstwahrscheinlich im Dunkeln, ohne einen Hinweis darauf zu haben, wie er überhaupt mit der Behebung des Problems beginnen kann.
Jetzt denken Sie vielleicht: Ok, das ist alles in Ordnung, aber wie viele Befehle gibt es und sollte ich alle lernen?Die Anzahl der auf Ihrem GNU / Linux-System verfügbaren Linux-Befehle spielt keine Rolle, da die Anzahl von System zu System immer unterschiedlich ist. Wenn Sie jedoch auf der genauen Nummer bestehen, führen Sie den folgenden Befehl in Ihrem Terminal aus:
$ for i in ${PATH//:/ }; do ls $i; done | sort | uniq | wc -l

Aus diesem Grund ist es am besten, mit den Grundlagen zu beginnen. Das Absolute muss Linux-Befehle lernen, damit Sie im GNU / Linux-Dateisystem navigieren und die grundlegenden Verwaltungsaufgaben ausführen können. Sobald Sie diese Aufgabe erledigt haben und sich mit der Linux-Befehlszeile vertraut gemacht haben, wird der Rest natürlich mit minimalem Aufwand erledigt, indem Sie einfach das GNU / Linux-System verwenden. Alles was Sie brauchen ist Offenheit und Entschlossenheit.
Ok, genug mit diesem müßigen Gespräch und lasst uns loslegen!
Grundlegende Linux-Befehle für Dateisysteme und Navigation
Befehlszeilenargumente, Optionen und Parameter
Das Verständnis des Unterschieds zwischen Linux-Befehlszeilenargumenten, -optionen und -parametern ist wahrscheinlich der wichtigste Teil, wenn man die GNU / Linux-Befehlszeile jemals vollständig verstehen möchte. Überspringen Sie dieses Thema daher nicht, sondern stellen Sie sicher, dass Sie es gründlich verstanden haben, bevor Sie mit dem nächsten Abschnitt fortfahren.Das beste Werkzeug, um den Unterschied zwischen Linux-Befehlszeilenargumenten, -optionen und -parametern zu erklären, ist der Befehl ls . Machen Sie sich keine Sorgen, wenn Sie den
ls
Befehl noch nicht kennen, da dieser Befehl in späteren Abschnitten ausführlich behandelt wird. Öffnen Sie das Terminal und führen Sie den folgenden Befehl aus. Betreten Sie nicht die$
Zeichen, da dieses Zeichen nur dazu dient, Sie darüber zu informieren, dass dies ein Befehl ist, der in der Befehlszeile ausgeführt werden soll und als regulärer nicht privilegierter Benutzer ausgeführt werden soll:$ lsNachdem Sie den obigen Befehl eingegeben und die EINGABETASTE gedrückt haben, listet der Befehl alle Dateien und Verzeichnisse in Ihrem aktuellen Verzeichnis auf. Ignorieren Sie vorerst die Ausgabe des Befehls und beachten Sie, dass dieser Befehl aus einem einzigen Argument besteht, das der Befehl
ls
selbst ist. Wir bezeichnen dieses Argument als Argument 0
. Versuchen Sie als nächstes diesen Befehl:$ ls -aDer obige Befehl besteht aus zwei Argumenten. Das erste Argument, das als Argument bezeichnet wird,
0
ist der ls
Befehl selbst, und das zweite Argument ist wie 1
die ls
Option des Befehls nummeriert -a
.Mit den Befehlsoptionen kann der Benutzer die Befehlsausgabe ändern. Jeder Linux-Befehl verfügt über unterschiedliche Optionen. Die Befehlsoptionen sind im Befehl selbst fest codiert. Wie der Name schon sagt, sind die Befehlsoptionen optional und müssen vom Benutzer nicht verwendet werden. In diesem Fall wird die
ls
Option Befehl -a
weist der Befehl auch versteckte Dateien oder Verzeichnisse in unserem Verzeichnis zu drucken.Führen Sie den folgenden Befehl aus, während Sie sich noch in Ihrem Home-Verzeichnis befinden:
$ ls -l .bashrcWenn Sie folgen, wissen Sie bereits, dass der obige Befehl aus drei Argumenten besteht. Erstens gibt es das
0
Argument des Befehls selbst. Das zweite Argument, genauer gesagt, das Argument, 1
ist die ls
Option des Befehls, -l
die den ls
Befehl anweist , eine Ausgabe mit langen Listen zu erstellen, die dem Benutzer mehr Informationen über eine oder mehrere Dateien gibt. Schließlich ist die dritte Argumentnummer 2
ein Parameter, der dem ls
Befehl übergeben wird und den Befehl anweist, nur auf eine einzelne Datei mit dem Namen zu reagieren .bashrc
.
Bitte beachten Sie, dass im Fall der obigen .bashrc
Datei das Präfix .
Teil des Dateinamens ist und anzeigt, dass die Datei ausgeblendet ist. Versteckt bedeutet, dass der ls
Befehl diese Datei standardmäßig nicht als Teil seiner Ausgabe auflistet, es sei denn, die -a
Option wird verwendet.
$ ls -l -h .bashrc .bash_historyIn diesem Fall besteht unser Befehl aus fünf Argumenten. Es gibt den
ls
Befehl, zwei Möglichkeiten, nämlich sie sind -l
und -h
und schließlich gibt es zwei Dateinamen als Parameter, die .bashrc
und .bash_history
Datei.Die Reihenfolge, in der Sie alle Argumente in der Befehlszeile angeben, hängt vom Linux-Befehl ab, den Sie ausführen. Die empfohlene und universelle Regel besteht jedoch darin, alle erforderlichen Optionen nach dem Befehl gefolgt von allen erforderlichen Parametern anzugeben. Das Folgende ist beispielsweise auch ein gültiger Befehl, der dieselbe Ausgabe wie der obige erzeugt. Diese Art der Befehlssyntax sollte jedoch vermieden werden:
$ ls .bashrc -l .bash_history -hUm Ihren Befehl zu verkürzen und damit besser lesbar zu machen, können die meisten Befehle dem Benutzer ermöglichen, mehrere Optionen in einem einzigen Argument zu kombinieren. Was bedeutet , dass es möglich ist , um die Optionen zu kombinieren
-l
und -h
zu einem einzigen Argumente -lh
. Beispielsweise:$ ls -lh .bashrc .bash_historyDas folgende Video fasst den gesamten Abschnitt zusammen. Inzwischen sollten Sie ein klares Verständnis für die Befehlszeilenargumente, -optionen und -parameter haben.
Dateisystemnavigation
Dieser Abschnitt behandelt einen weiteren wesentlichen Teil der Linux-Befehlszeile, nämlich die Dateisystemnavigation. Im Laufe der Jahre haben viele Benutzer Schwierigkeiten gehabt, die Navigation des GNU / Linux-Dateisystems zu verstehen, da sie sich erheblich von den üblichenC:
oder D:
Laufwerken unterscheidet. In diesem Abschnitt lernen Sie auch die ersten beiden Linux-Befehle kennen, nämlich den cd
Befehl und den pwd
Befehl.Beginnen wir mit der folgenden Aussage: Vergessen Sie
C:
oder D:
fahren Sie von anderen proprietären Betriebssystemen.Dieses Wissen gilt hier nicht und kann Sie nur verwirren. Das GNU / Linux-Dateisystem ermöglicht den Zugriff auf jede Festplatte oder Partition aus jedem Verzeichnis im gesamten Dateisystem. Zum jetzigen Zeitpunkt sollten wir uns darüber jedoch keine Sorgen machen.Die vielleicht beste Analogie zur Beschreibung des GNU / Linux-Dateisystems ist die, die ich bereits für mein Bash Scripting Tutorial verwendet habe . Stellen Sie sich das GNU / Linux-Dateisystem als mehrstöckiges Gebäude vor. Das so genannte Stammverzeichnis (Eingangstür des Gebäudes)
/
bietet den Zugang zum gesamten Dateisystem (Gebäude) und ermöglicht so den Zugriff auf alle Verzeichnisse (Ebenen / Räume) und Dateien (Personen).Um zu Raum 1 auf Ebene 3 zu navigieren, müssen wir zuerst die Haupttür betreten
/
und dann zu Ebene 3 gehenlevel3/
und von dort betreten Sie die room1
. Daher ist der absolute Weg zu diesem bestimmten Raum innerhalb eines Gebäudes /level3/room1
. Wenn wir von hier aus Raum2 auch auf Ebene 3 besuchen möchten, müssen wir zuerst unseren aktuellen Standort, Raum1, durch Eingabe verlassen ../
und dann den Namen des Raums eingeben room2
. Wir haben einen relativen Weg zu Raum2 genommen, was in diesem Fall der Fall ist ../room2
. Wir waren bereits auf Ebene 3, so dass wir nicht das gesamte Gebäude verlassen und den absoluten Weg über den Haupteingang nehmen mussten /level3/room2
. Verwirrend? Machen Sie sich keine Sorgen, nach einigen Sitzungen mit der GNU / Linux-Befehlszeile sinkt das Wissen ein und wird für Sie zu einer zweiten Natur.Ob Sie es glauben oder nicht, das GNU / Linux-Betriebssystem bietet allen Benutzern einen Kompass, der die Navigation im Dateisystem in Form von unterstützt
pwd
( P RINT W orking d irectory) Befehl. Jedes Mal, wenn Sie sich verlaufen, geben Sie einfach den pwd
Befehl ein und er zeigt Ihnen den Pfad. Versuchen Sie es jetzt. Öffnen Sie das Terminal und geben Sie pwd
gefolgt von ENTER ein:$ pwd

pwd
Befehlsbeispiel zum Drucken des aktuellen Arbeitsverzeichnispfads./home
Verzeichnisses. Wie auf dem obigen Bild dargestellt der absolute Pfad zum Home - Verzeichnis des Benutzers linuxconfig
ist /home/linuxconfig
. Wenn Ihr System den Benutzer "john" enthält, lautet der absolute Pfad zum Home-Verzeichnis dieses Benutzers /home/john
.
Der Zugriff auf ein Benutzer-Ausgangsverzeichnis steht nur dem tatsächlichen Benutzer zur Verfügung, dem das Verzeichnis gehört, und dem Administrator, der im Fall von GNU / Linux der root
Benutzer ist.
cd
( c hange d irectory) Befehl. Mit dem cd
Befehl kann der Benutzer zu jedem im Dateisystem verfügbaren Verzeichnis navigieren, sofern der Benutzer über die entsprechenden Zugriffsberechtigungen verfügt.Versuchen Sie es, indem Sie die folgenden Befehle ausführen, und haben Sie keine Angst vor Experimenten. Vergessen Sie nicht Ihren persönlichen Kompass, den
pwd
Befehl, Ihnen sofort Ihren aktuellen Standort mitzuteilen. Bitte stellen Sie sicher, dass Sie den folgenden linuxconfig
Benutzer durch Ihren eigenen Benutzernamen ersetzen :$ cd /home
$ cd linuxconfig
$ cd /
$ cd home/linuxconfig
$ cd ../linuxconfig
$ cd ../../etc
$ cd /home/linuxconfig
Mit Ausnahme von Zeile 5 und Zeile 6 sollten die obigen Befehle selbsterklärend sein. In Zeile 5 haben wir die Verknüpfung verwendet ../
, um in ein übergeordnetes Verzeichnis des linuxconfig
Verzeichnisses zu gelangen. In Zeile 6 haben wir zwei Verzeichnisse nach oben verschoben und schließlich zum etc
Verzeichnis navigiert .
Führen Sie den cd
Befehl ohne Argumente aus, um von jedem Ort aus sofort zu Ihrem Benutzer-Ausgangsverzeichnis zu navigieren. Ausführen, cd -
um zwischen den beiden zuletzt besuchten Orten umzuschalten . In welchem Verzeichnis landen Sie nach der Ausführung von cd ~
und cd .
Befehlen?

cd
Befehl.
Können Sie den Unterschied zwischen dem absoluten und dem relativen Pfad erkennen? Wenn Sie sich das obige Bild ansehen, können Sie zählen, wie oft wir beim Navigieren im Dateisystem mit dem cd
Befehl den absoluten und den relativen Pfad verwendet haben ?
TIPP: Der absolute Pfad beginnt immer mit dem /
Zeichen.
cd
Linux-Befehl und der Navigation zwischen Verzeichnissen wohl fühlen , da dieses Wissen Ihnen in den nächsten Abschnitten gute Dienste leisten wird .Auflisten eines Verzeichnisinhalts
Zu diesem Zeitpunkt sollten Sie mit der Navigation im Dateisystem mit demcd
Befehl vertraut sein und über ein grundlegendes Verständnis der GNU / Linux-Befehlszeile im Allgemeinen einschließlich der Befehlszeilenargumente, -optionen und -parameter verfügen. Bisher haben wir gelernt, wie man zu einem Verzeichnis navigiert, aber noch nicht gelernt, wie man Verzeichnisinhalte auflistet. Das Auflisten eines Verzeichnisinhalts ist das Hauptthema dieses Abschnitts.Das Tool zum Auflisten des Inhalts eines Verzeichnisses ist der
ls
Befehl. Versuchen Sie es jetzt. Öffnen Sie das Terminal und geben Sie den ls
Befehl in Ihrem Home-Verzeichnis ohne Optionen oder Parameter ein:$ ls

ls
Befehlsausgabe.ls
Befehls ohne Optionen oder Parameter listet der Befehl den Inhalt des aktuellen Arbeitsverzeichnisses auf. Viele moderne Terminals bieten dem Benutzer zusätzliche Informationen, indem sie Verzeichnisse als blau, reguläre Dateien als weiß und ausführbare Dateien als grün färben. Beachten Sie, dass Sie diese Art von Luxus auf vielen Terminals nicht finden. Aus diesem Grund müssen wir lernen, wie Sie die verschiedenen Arten von Verzeichnisinhaltselementen manuell mit dem ls
Befehl unterscheiden können.
Die meisten Befehle werden mit einer Handbuchseite geliefert, auf der Sie mehr über die Funktion und die Argumente der einzelnen Befehle erfahren. Verwenden Sie den man
Befehl, um die Handbuchseite eines beliebigen Befehls anzuzeigen. Zum Beispiel, um eine Handbuchseite für den ls
Befehl ausführen anzuzeigen man ls
. Um die Handbuchseite zu verlassen, drücken Sie die q
Taste.
-l
fügt die Option, die auch als lange Auflistung bezeichnet wird, der Standardausgabe weitere Informationen hinzu ls
:$ ls -l

ls
Die Option -l
für die lange Auflistung von Befehlen enthält zusätzliche Informationen zu jedem Verzeichniselement. Hervorgehoben sind die Dateitypinformationen für jedes Verzeichniselement, wobei d
ein Verzeichnistyp und -
eine reguläre Datei angegeben sind.-l
Option bietet der ls
Befehl dem Benutzer zusätzliche Informationen wie Berechtigungen, Benutzer- oder Gruppenbesitz, Dateigröße und Änderungszeit.Eine weitere häufig verwendete
ls
Befehlsoption ist -a
die Auflistung aller sowie der versteckten Dateien oder Verzeichnisse im Verzeichnis. Dateien oder Verzeichnisse, denen der Name vorangestellt .
ist, werden ausgeblendet und sind daher nicht Teil der Standardbefehlsausgabe ls
.$ ls -aViele der
ls
Optionen des Befehls haben nur in Kombination mit einigen anderen Optionen eine Bedeutung. Um beispielsweise die Dateigröße einer ausgewählten Datei anzuzeigen, kann der Benutzer die ls
Befehle mit der -l
Option und dem tatsächlichen fraglichen Dateinamen als Parameter angeben. Betrachten Sie das folgende ls
Befehlsbeispiel, um die Größe der image.jpg
Datei anzuzeigen:$ ls -l image.jpg

ls
Linux-Befehl an.ls
Befehl die Dateigröße in Bytes an, sofern nicht die -h
Option (für Menschen lesbar) angegeben ist. Beachten Sie, dass die -h
Option keine Bedeutung hat, es sei denn, sie wird in Kombination mit der -l
Option bereitgestellt .An dieser Stelle ist zu beachten, dass Benutzer mithilfe von Parametern jedes Verzeichnis auflisten oder Informationen zu jeder Datei im gesamten Dateisystem finden können, ohne ihr Ausgangsverzeichnis zu verlassen. Geben Sie dazu einfach den absoluten oder relativen Pfad zu einer Datei oder einem Verzeichnis an, über die Sie weitere Informationen als Parameter für den
ls
Befehl auflisten möchten . Probieren Sie die folgenden ls
Befehlsbeispiele aus:$ ls /etc/systemd $ ls -l ../ $ ls -lh /etc/services

ls
Befehl.
Verwenden Sie die ls
Handbuchseite des Befehls und prüfen Sie, ob Sie eine Möglichkeit finden, den Inhalt des /etc
Verzeichnisses in absteigender Reihenfolge basierend auf der Dateigröße anzuzeigen.
Ein Verzeichnis erstellen
Der Zweck von Verzeichnissen besteht darin, das Dateisystem zu halten, daher sind unsere und Systemdateien organisiert. In diesem Abschnitt erfahren Sie, wie Sie Verzeichnisse mit demmkdir
Befehl in der GNU / Linux-Befehlszeile erstellen .Das Erstellen eines Verzeichnisses auf dem GNU / Linux-System ist so einfach wie das Ausführen des
mkdir
Befehls, während der gewünschte direkte Name als Argument angegeben wird. Versuchen Sie es jetzt. Öffnen Sie das Terminal und erstellen Sie ein neues Verzeichnis mit dem Namen, z. B. dir1
in Ihrem Home-Verzeichnis.$ mkdir dir1

Vermeiden Sie das Erstellen von Dateien und Verzeichnissen mit Leerzeichen als Teil ihres Namens. Unter Linux ist es möglich, ein Verzeichnis oder einen Dateinamen mit Leerzeichen zu erstellen, indem der Name beispielsweise in Anführungszeichen gesetzt wird. mkdir "my files"
Dies kann jedoch später zu Problemen führen. Vermeiden Sie dies also unbedingt! Wenn Sie Platz in der Datei oder im Verzeichnisnamen benötigen, verwenden Sie _
stattdessen einen Unterstrich .
ls
Befehl, um den Inhalt Ihres aktuellen Arbeitsverzeichnisses aufzulisten. Wenn das Verzeichnis korrekt erstellt wurde, sollten Sie es in der Befehlsausgabe sehen.Wie beim Erstellen des Verzeichnisses in Ihrem aktuellen Arbeitsverzeichnis können Sie auch an einer beliebigen Stelle im Dateisystem ein Verzeichnis erstellen, sofern Sie über die entsprechenden Berechtigungen verfügen. Lassen Sie uns nun ein neues Verzeichnis erstellen, das
example
innerhalb des /tmp
Verzeichnisses aufgerufen wird .Es gibt jetzt zwei Möglichkeiten, wie Sie sich dieser Aufgabe nähern können. Zuerst könnten wir zur
/tmp
Verwendung des cd
Befehls navigieren und einmal im Verzeichnis den mkdir
Befehl ausführen, gefolgt vom neuen Verzeichnisnamen.Die andere Lösung besteht darin, das Verzeichnis zu erstellen, indem dem neuen Verzeichnisnamen lediglich der korrekte absolute oder relative Pfad des Verzeichnisses vorangestellt wird, in dem unser neues
example
Verzeichnis erstellt werden soll. Daher müssen Sie den cd
Befehl nicht verwenden, um in das /tmp/
Verzeichnis zu wechseln, bevor der mkdir
Befehl ausgeführt wird:$ mkdir /tmp/exampleIn Bezug auf den
mkdir
Befehl gibt es nicht viel zu lernen . Solange Sie den zuvor erläuterten Unterschied zwischen absolutem und relativem Pfad verstehen, geht es Ihnen gut. Es gibt nur eine andere allgemeine Option, die in Kombination mit dem mkdir
Befehl verwendet wird, und das ist die -p
Option.Angenommen, Sie möchten ein neues Verzeichnis erstellen
dir2
in Ihrem vorhandenen Verzeichnis dir1
sowie neue schaffen dir3
innerhalb dir2
. Die erste Lösung wäre, zuerst zu erstellen, dir2
gefolgt von der Ausführung des zweiten mkdir
Befehls, der dir3
innerhalb des dir2
Verzeichnisses erstellt werden soll. Mit der -p
Option kann dies jedoch durch eine einzelne mkdir
Befehlsausführung erreicht werden:$ mkdir -p dir1/dir2/dir3

mkdir
Befehl in der GNU / Linux-Befehlszeile.
Versuchen Sie mit Ihrem Benutzerkonto, ein Verzeichnis zu erstellen, das my_dir
innerhalb des /etc
Verzeichnisses aufgerufen wird . Funktioniert es? Wenn nicht, warum?
Dateien erstellen und den Dateiinhalt lesen
Das GNU / Linux-System speichert die meisten Informationen zu Einstellungen, Konfiguration sowie Daten wie Protokollen in Form von einfachen ASCII-Textdateien. Aus diesem Grund ist es für jeden Benutzer wichtig, mindestens ein grundlegendes Verständnis der Manipulation von Textdateien zu haben.In diesem Abschnitt erfahren Sie, wie Sie Dateien erstellen, den Dateiinhalt lesen und eine Textdatei mit einem einfachen befehlszeilenbasierten Textdatei-Editor bearbeiten.
Beginnen wir mit der Erstellung einer leeren Datei mit dem Namen
file1
in unserem Home-Verzeichnis. Dazu verwenden wir den touch
Befehl. Öffnen Sie Ihr Terminal und geben Sie den folgenden Linux-Befehl ein:$ touch file1Das ist alles! Sie haben jetzt erfolgreich eine neue Datei erstellt, die
file1
in Ihrem Home-Verzeichnis aufgerufen wird . Führen Sie den ls
Befehl jetzt aus, und Sie sollten diese neue Datei in Ihrem Home-Verzeichnis sehen.
touch
..txt
oder erstellt haben .exe
. Beachten Sie, dass die Dateierweiterung auf GNU / Linux-Systemen meistens keine Bedeutung hat, abgesehen von der Tatsache, dass bei Ausführung des ls
Befehls zum Auflisten aller Dateien und Verzeichnisse sofort ersichtlich ist, dass eine Datei mit einer Erweiterung .txt
plausibel eine ASCII-Textdatei ist und eine Datei mit .png
ist wahrscheinlich eine Bilddatei.An dieser Stelle ist es wichtig darauf hinzuweisen, dass es viele Möglichkeiten gibt, eine Datei auf einem GNU / Linux-Betriebssystem zu erstellen. In der Realität ist es selten, dass Sie eine leere Datei erstellen müssen, wie wir es zuvor getan haben. Tatsächlich besteht der Hauptzweck des Befehls touch nicht darin, Dateien zu erstellen, sondern sie mit Dateizeitstempeln zu bearbeiten, was eine Geschichte für ein anderes Mal ist.
Da der Hauptzweck von Dateien darin besteht, Daten zu speichern, werden wir genau das tun. Verwenden Sie einen aufgerufenen Textdatei-Editor
nano
, um eine neue Datei mit dem Namen " todo-list.txt
Beliebiger Text " zu erstellen . Führen Sie zunächst den folgenden Befehl aus:$ nano todo-list.txtSobald Sie den
nano
Befehl ausführen , wird der Nano-Editor geöffnet und Sie können den Inhalt der neuen todo-list.txt
Datei bearbeiten . Nehmen Sie im nano
Editor nach Bedarf Änderungen am Dateiinhalt vor.Wenn Sie fertig sind, drücken Sie
CTRL+o
gefolgt von der ENTER
Taste, um die Datei zu speichern. Zu diesem Zeitpunkt wird die neue todo-list.txt
Datei erstellt. Um den nano
Editor zu verlassen, drücken Sie die CTRL+x
Tastenkombination wie in den folgenden Bildern dargestellt:
nano
Editor. Geben Sie den gewünschten Dateinamen als Parameter ein.
CTRL+o
Tastenkombination, um den aktuellen Dateiinhalt zu speichern.
ENTER
Taste.
nano
Editor durch Drücken der CTRL+x
Tastenkombination.
todo-list.txt
wird jetzt erstellt und sollte bei der ls
Befehlsausführung sichtbar sein .nano
Texteditorbefehl angeben.Bisher haben wir gelernt, wie man eine Datei erstellt und vorhandene oder neue Textdateien mit einem Befehlszeilentexteditor bearbeitet. Was wir noch nicht behandelt haben, ist das Lesen des Inhalts der Textdatei. Nun, ehrlich gesagt, da ist nicht viel dran! Sie können den Inhalt jeder Datei mit dem
cat
Befehl GNU / Linux lesen .Versuchen Sie es jetzt. Führen Sie den
cat
Befehl aus und geben Sie als Parameter den Namen der Datei an, die Sie untersuchen möchten. Beispielsweise:$ cat todo-list.txt

cat
Befehl, um den Inhalt einer beliebigen Textdatei anzuzeigen. Geben Sie einfach den Dateinamen als cat
Befehlsparameter an.
Einige Dateien können sich über Tausende von Zeilen erstrecken. Versuchen Sie, den Inhalt der /etc/services
Datei mit dem cat
Befehl nachzuschlagen. Einige Terminals haben eine begrenzte Anzahl von Zeilen und keine Bildlaufleiste. Daher wäre es nicht möglich, den Inhalt großer Textdateien einfach mit dem cat
Befehl zu lesen . Experimentieren Sie mit Befehlen wie less
oder more
, um den Inhalt der /etc/services
Datei zu lesen .
file
.Denken Sie daran, dass wir zuvor darüber gesprochen haben, dass es nicht unbedingt erforderlich ist, Dateinamen mit Erweiterungen zu versehen. Wenn dies der Fall ist, woher wissen wir dann, welcher Dateityp in unserem Home-Verzeichnis oder irgendwo im GNU / Linux-Dateisystem gespeichert ist? Hier wird der
file
Befehl nützlich. Der file
Befehl gibt den Dateityp einer beliebigen Datei aus, die ihm als Parameter übergeben wurde. Versuchen Sie es jetzt:$ file todo-list.txt

file
Befehl GNU / Linux ab.Benennen oder verschieben Sie Dateien und Verzeichnisse
Ein weiterer logischer Schritt besteht darin, zu lernen, wie Dateien und Verzeichnisse umbenannt oder verschoben werden. An dieser Stelle haben wir erläutert, wie Dateien oder Verzeichnisse erstellt werden. Wie sieht es jedoch mit dem Verschieben vorhandener Verzeichnisse oder Dateien an einen anderen Speicherort aus? Nun, Sie sollten sich freuen zu wissen, dass das Verschieben und Umbenennen von Dateien oder Verzeichnissen unter dem GNU / Linux-System im Kern im Wesentlichen dasselbe ist.Das Umbenennen und Verschieben von Dateien im GNU / Linux-Dateisystem ist eine einfache Aufgabe. Alles, was erforderlich ist, ist der
mv
Befehl und das Verständnis des absoluten und relativen Pfades, wie zuvor im obigen Abschnitt zur Navigation des Dateisystems beschrieben .Betrachten Sie das folgende Beispiel:
$ touch file1 $ mkdir dir1Mit den obigen
touch
und mkdir
Befehlen haben wir eine Datei mit dem Namen file1
und Verzeichnis erstellt dir1
. Die Nutzung der touch
und mkdir
Befehle wurden zuvor bereits abgedeckt, daher die Erklärung nicht notwendig sein sollte.Die bevorstehende Aufgabe besteht darin, mit dem Befehl
file1
in file2
und dir1
nach umzubenennen . Dazu müssen wir dem Befehl den absoluten oder relativen Pfad der Datei oder des Verzeichnisses angeben, die bzw. das wir als ersten Parameter umbenennen möchten. Der zweite erforderliche Parameter ist der absolute oder relative Pfad der Datei oder des Verzeichnisses, in das unsere Datei oder unser Verzeichnis umbenannt werden soll:dir2
mv
mv
$ mv file1 file2 $ mv dir1 dir2Hier ist zu verstehen, dass GNU / Linux keinen expliziten Befehl zum Umbenennen von Dateien hat. Stattdessen wird der
mv
Befehl (kurz für Verschieben) verwendet, um Dateien oder Verzeichnisse von einem Speicherort an einen anderen zu verschieben, während der Name geändert wird. Betrachten Sie das folgende Beispiel:$ mv file2 /tmp/file3 $ mv dir2 /tmp/dir2Der erste Befehl wurde
file2
in das Verzeichnis verschoben /tmp/
und in umbenannt file3
. Der zweite Befehl bewegt dir2
in /tmp/
und da wir das gleiche Zielverzeichnis Name bleibt das Verzeichnis geliefert haben Namen gleich.Daher verschiebt der zweite Befehl im Wesentlichen nur die Quelle
dir2
in /tmp/
das Zielverzeichnis, sodass der zweite Parameter, der den neuen Verzeichnisnamen angibt, nicht erforderlich ist und einfach wie folgt ausgeführt werden kann:$ mv dir2 /tmp/Es ist wichtig, den obigen
mv
Befehl zu verstehen , da der mv
Befehl auch mehrere Parameter akzeptieren kann. Das heißt, es ist möglich, mehrere Verzeichnisse und / oder Dateien gleichzeitig zu verschieben, indem der einzelne mv
Befehl ausgeführt wird:$ mkdir dir4 dir5 $ touch file4 file5 $ mv file4 dir4 file5 dir5 /tmp

Die einzige Regel, die bei mehreren mv
Befehlsparametern befolgt werden muss, lautet, dass mv
der zuletzt angegebene Parameter ein Verzeichnis sein muss , wenn dem Befehl mehrere Quellparameter übergeben werden .
mv
Befehl wurden mehrere Dateien und Verzeichnisse an den neuen Speicherort verschoben: das /tmp
Verzeichnis. Es ist wichtig darauf hinzuweisen, dass unabhängig davon, wie viele Quelldateien oder Verzeichnisse Sie dem mv
Befehl als Parameter zur Verfügung stellen, der zuletzt angegebene Parameter als Ziel behandelt wird.Bevor wir zu einem anderen Thema übergehen, ist es wichtig, eine möglicherweise schädliche Tatsache über den
mv
Befehl zu erwähnen .Wenn der für den
mv
Befehl angegebene Zieldateiparameter bereits vorhanden ist, kann er ohne Vorwarnung überschrieben werden. Daher kann diese Aktion Ihre Daten irreversibel löschen, ohne dass eine Wiederherstellung möglich ist. Betrachten Sie das folgende mv
Befehlsbeispiel:$ cat /tmp/sample.txt linuxconfig.org $ touch sample.txt $ mv sample.txt /tmp/sample.txt $ cat /tmp/sample.txt $Wenn Sie sich nicht sicher sind, verwenden Sie die
-i
Option, um den mv
Befehl anzuweisen , eine Warnung zu erstellen, falls die Zieldatei bereits vorhanden ist. Beispiel:$ mv -i sample.txt /tmp/sample.txt mv: overwrite '/tmp/sample.txt'?
mv
in Aktion beschriebenen Befehl in Aktion:
mv
Befehls.Kopieren Sie Dateien und Verzeichnisse
Im vorherigen Abschnitt haben wir erläutert, wie Dateien und Verzeichnisse mithilfe desmv
Befehls GNU / Linux von einem Speicherort an den anderen verschoben werden . In diesem Abschnitt wird ein ähnliches Thema zum Erstellen einer Kopie von Dateien und Verzeichnissen mit dem cp
Befehl behandelt.Das meiste Wissen aus dem vorherigen Abschnitt wird uns helfen, den
cp
GNU / Linux-Befehl zu lernen, da die Syntax für beide mv
und cp
Befehle sehr ähnlich ist. Der Hauptunterschied besteht darin, dass der cp
Befehl anstelle des Verschiebens der Dateien oder des Verzeichnisses eine exakte Kopie der Quelldatei oder des Quellverzeichnisses erstellt.Wie beim
mv
Befehl dercp
Befehl muss mit mindestens zwei Parametern geliefert werden. Der erste Parameter ist die Quelldatei oder das Quellverzeichnis und der zweite Parameter ist die Zieldatei oder das Zielverzeichnis.Beginnen wir mit einem einfachen Beispiel für das Erstellen einer Kopie der Datei in unserem Home-Verzeichnis. Zuerst
touch
erstellen wir mit dem Befehl eine neue Datei mit dem Namen file1
und erstellen dann eine exakte Kopie davon mit dem Namen file2
:$ touch file1 $ cp file1 file2Die ziemlich offensichtliche Regel hier ist, dass die dem
cp
Befehl angegebenen Quell- und Zielparameter nicht identisch sein können:$ cp file1 file1 cp: 'file1' and 'file1' are the same fileDie einzige Möglichkeit, sowohl für den Quell- als auch für den Zielparameter einen exakt gleichen Dateinamen anzugeben, besteht darin, die Datei entweder über den absoluten oder den relativen Pfad in ein anderes Verzeichnis zu kopieren. Das folgende
cp
Befehlsbeispiel erstellt eine Kopie file1
in das Verzeichnis /tmp
:$ cp file1 /tmp/file1Wenn Sie jedoch nicht beabsichtigen, den Dateinamen zu ändern, müssen Sie den Dateinamen überhaupt nicht als Zielparameter angeben. Daher kann der obige Befehl wie folgt abgekürzt werden:
$ cp file1 /tmp/

Durch Ausführen des Einzelbefehls erstellen Sie cp
eine Kopie der /etc/services
Datei in Ihr Ausgangsverzeichnis und benennen Sie sie in um port-numbers.txt
.
cp
Befehlssyntax verwenden, um auch eine Kopie eines Verzeichnisses zu erstellen. Es gibt jedoch einen signifikanten Unterschied: Um ein Verzeichnis zu kopieren, müssen Sie die -r
Befehlsoption (rekursiv) verwenden cp
. Betrachten Sie das folgende Beispiel:$ mkdir dir1 $ cp dir1 /tmp/ cp: -r not specified; omitting directory 'dir1' $ cp -r dir1 /tmpWie auch beim
mv
Befehl GNU / Linux cp
akzeptiert der Befehl auch mehrere Parameter. Dies bedeutet, dass durch Ausführen des einzelnen cp
Befehls mehrere Dateien und Verzeichnisse gleichzeitig kopiert werden können .Die Regel ist, dass der letzte Parameter ein Verzeichnis sein muss. Betrachten Sie das folgende Beispiel, in dem wir zuerst ein anderes Beispielverzeichnis und eine andere Datei erstellen. Als nächstes kopieren wir dieses Verzeichnis zusammen mit den beiden anderen Dateien in das
/tmp/
Verzeichnis:$ mkdir dir2 $ touch file1 file2 $ cp -r dir2/ file1 file2 /tmp/
Wenn der für den
cp
Befehl angegebene Zieldateiparameter bereits vorhanden ist, kann er ohne Vorwarnung überschrieben werden. Daher kann diese Aktion Ihre Daten irreversibel löschen, ohne dass eine Wiederherstellung möglich ist. In bestimmten Fällen gilt dieses Verhalten auch für Verzeichnisse! Betrachten Sie das folgende cp
Befehlsbeispiel:$ cat sample.txt linuxconfig.org $ touch /tmp/sample.txt $ cp /tmp/sample.txt sample.txt $ cat sample.txt $Wenn Sie sich nicht sicher sind, verwenden Sie die
-i
Option, um den cp
Befehl anzuweisen , eine Warnung zu erstellen, falls die Zieldatei bereits vorhanden ist. Beispiel:$ cp -i /tmp/sample.txt sample.txt cp: overwrite 'sample.txt'?
cp
in Aktion beschriebenen Befehl in Aktion:
cp
GNU / Linux-Befehlsbeispiele zum Kopieren von Verzeichnissen und Dateien auf das GNU / Linux-Dateisystem mithilfe des GNU / Linux-Befehlszeilenterminals.Entfernen Sie Dateien und Verzeichnisse
Zu diesem Zeitpunkt sollten Sie mit den Grundlagen der Linux-Befehlszeile vertraut sein. Möglicherweise haben Sie auch ein Muster bemerkt, in dem Befehle verwendet werden. Sie sollten wissen, wie Sie Dateien oder Verzeichnisse erstellen, verschieben und umbenennen. Ohne jedoch zu wissen, wie Dateien oder Verzeichnisse entfernt werden, füllt sich Ihr Dateisystem, sodass die Möglichkeit, mehr Daten zu speichern, verloren geht.In diesem Abschnitt werden zwei Befehle behandelt. Der erste Befehl ist
rmdir
und der zweite Befehl ist rm
. Wenn Sie sich die Namen der Befehle rmdir
und und rm
ansehen, können Sie schnell feststellen, dass der Befehl rmdir
zum Entfernen von Verzeichnissen und der letztere rm
zum Löschen von Dateien verwendet wird und Sie größtenteils Recht haben. Schauen wir uns zunächst den rmdir
Befehl an.Für unsere Experimente verwenden wir die folgende Verzeichnisstruktur, die mehrere Unterverzeichnisse und Dateien enthält. Unser Ziel ist es, die Verwendung
rmdir
und rm
Befehle zum Entfernen aller Dateien und Verzeichnisse zu lernen :
rmdir
und entfernen rm
.rmdir
akzeptiert der Befehl auch mehrere Argumente. Um beispielsweise dir4
alles zu entfernen , müssen wir dem rmdir
Befehlsverzeichnis den Namen des Verzeichnisses geben, das wir als Parameter entfernen möchten:$ rmdir my_files/dir4/Einfach richtig? Lassen Sie uns nun das nächste Verzeichnis entfernen und sagen
dir1
:$ rmdir my_files/dir1 rmdir: failed to remove 'my_files/dir1': Directory not emptyWie Sie sehen können, konnte mit dem obigen
rmdir
Befehl das dir1
Verzeichnis nicht entfernt werden. Die Hauptaufgabe von rmdir
ist das Entfernen von Verzeichnissen. Da das Verzeichnis dir1
Dateien enthält, hat der rmdir
Befehl dieses Verzeichnis mit einer Fehlermeldung weggelassen , in der beschwert wird, dass dieses Verzeichnis nicht leer ist.Die Logik ist gesund! Die einzige Möglichkeit, nicht leere Verzeichnisse zu entfernen, besteht darin,
rmdir
die ziemlich lange Befehlszeilenoption zu verwenden --ignore-fail-on-non-empty
. Zu diesem Zeitpunkt ist es jedoch viel einfacher, den rm
Befehl zu verwenden. Der rm
Befehl enthält eine korrekte Kombination von Optionen, mit denen eine beliebige Anzahl von Dateien und Verzeichnissen entfernt werden kann, unabhängig davon, ob das Verzeichnis leer ist oder mit einer beliebigen Anzahl von Dateien und Unterverzeichnissen gefüllt ist.Lassen Sie uns zunächst testen
rm
, um die Datei mit dem Namen zu entfernen my_file.txt
:$ rm my_files/my_file.txtUm das Verzeichnis mit zu entfernen
rm
, müssen wir die -r
Optionskombination verwenden. Die Option -r
steht für rekursiv, was bedeutet, dass der Befehl jedes Verzeichnis sowie dessen Inhalt entfernt. Mit dem folgenden Befehl wird das gesamte my_files/dir1
Verzeichnis einschließlich aller Dateien oder Unterverzeichnisse entfernt:Das Entfernen von Dateien mit dem
rm
Befehl ist eine irreversible Aktion. Dies bedeutet, dass Ihre Daten abhängig von Ihrem verwendeten Dateisystem und Ihrer Systemnutzung nicht wiederhergestellt werden können. Stellen Sie sicher, dass Sie zweimal messen und einmal schneiden, wenn Sie den rm
Linux-Befehl verwenden.$ rm -r my_files/dir1/Die Verwendung des
rm
Befehls ist recht einfach. Wie viele andere Linux-Befehle akzeptiert es mehrere Parameter und kann so leicht einzelne oder beliebig viele Dateien und Verzeichnisse entfernen.
rm
und rmdir
.
Führen Sie den einzelnen rm
Befehl aus, um das gesamte my_file
Verzeichnis in Ihrem Home-Verzeichnis zu entfernen .
Suchen Sie nach Dateien oder Verzeichnissen
An diesem Punkt sollten Sie mit der Dateisystemnavigation und der Datei- / Verzeichnisverwaltung vertraut sein. Bevor wir zum nächsten Abschnitt übergehen, der den grundlegenden GNU / Linux-Systemverwaltungsbefehlen gewidmet ist, sollten wir erläutern, wie im Falle eines solchen Bedarfs nach Dateien gesucht wird. Es gibt zwei Haupt-Linux-Befehle, mit denen ein Benutzer nach Dateien suchen kann. Es ist nämlich derlocate
Befehl und der find
Befehl.Der
find
Befehl ist ein mächtiges Werkzeug, daher kann seine Verwendung etwas überwältigend sein, insbesondere für Anfänger. Aus diesem Grund behandeln wir den locate
Befehl nur, da er viel einfacher zu verwenden ist.Die grundlegende Verwendung des
locate
Linux-Befehls ist recht einfach. Geben Sie locate
gefolgt vom Datei- oder Verzeichnisnamen als Parameter ein. Suchen wir beispielsweise nach einer Datei mit dem Namenissue
::$ locate issueDer obige Befehl erzeugt eine Liste von Dateien oder Verzeichnissen im gesamten Dateisystem, die die Zeichenfolge an einer
issue
beliebigen Stelle im Datei- oder Verzeichnisnamen enthalten. Je nachdem, wonach Sie suchen, kann diese Liste eine beträchtliche Größe erreichen.Daher führt die Suche nach einer genauen Dateinamenübereinstimmung wahrscheinlich zu einer Ausgabe, die wir eher als passend empfinden. Dazu müssen wir reguläre Ausdrücke und die
locate
Befehlszeilenoption 'verwenden -r
.Reguläre Ausdrücke gehen weit über den Rahmen dieses Tutorials hinaus. Im Moment müssen wir nur wissen, dass wir die Zeichenfolge mit
/
und umgeben müssen, um nach einem genauen Dateinamen oder Verzeichnisnamen zu suchen $
. Beispielsweise:$ locate -r /issue$

locate
Linux-Befehlsmasters befördern, wollen wir kurz erläutern, wie der locate
Befehl funktioniert. Der locate
Befehl ist bei der Suche extrem schnell, da er lediglich die vorhandene vorgefertigte Datenbankindexdatei konsultiert, die einmal täglich mit dem updatedb
Befehl aktualisiert wird .Der Nachteil ist, dass der
locate
Befehl keine Dateien oder Verzeichnisse aufnimmt, die seit der letzten updatedb
Ausführung des Befehls erstellt wurden. Um jedoch neue Dateien einzuschließen, haben die Benutzer die Möglichkeit, den updatedb
Befehl manuell auszuführen, wie unten dargestellt:$ sudo updatedb

updatedb
Beispiel für die Verwendung von Befehlen.
Versuchen Sie, mit dem locate
Linux-Befehl zu spielen, und prüfen Sie, wie Sie den Befehl anweisen können, nur in einem bestimmten Verzeichnis nach Dateien zu suchen.
Grundlegende Administration Linux-Befehle
Ausführen von Befehlen mit Administratorrechten
Die meisten Linux-Befehle, die Sie ausführen, werden ohne Administratorrechte ausgeführt. Tatsächlich wird die Ausführung von Befehlen mit Administratorrechten nur für den Fall empfohlen, dass die bevorstehende Aufgabe dies erfordert. Das Befolgen dieser einfachen Regel trägt zur allgemeinen Systemintegrität bei und ermöglicht es dem Benutzer, kostspielige und unnötige Fehler bei der Interaktion mit der Linux-Befehlszeile zu vermeiden.Es ist jedoch schwer vorstellbar, die Ausführung von Linux-Befehlen mit Administratorrechten vollständig zu vermeiden. Für die Installation neuer Software, die Konfiguration der Kernsystemdienste und mehr sind Administratorrechte erforderlich. Hier wird der
sudo
Linux-Befehl nützlich. Einem Linux-Befehl wird ein Präfix vorangestelltsudo
stellt sicher, dass der Befehl mit Administratorrechten (Root-Berechtigungen) ausgeführt wird. Versuch es selber:$ sudo whoami $ whoami

whoami
Befehl gibt immer einen Benutzernamen des Benutzers zurück, der ihn ausführt. In diesem Fall können wir sehen, dass das Präfixieren des whoami
Linux-Befehls mit dem sudo
Befehl sicherstellt, dass der whoami
Befehl als Root-Benutzer ausgeführt wird.sudo
Benutzer 5 Minuten Zeit , um sudo
nach der ersten erfolgreichen Authentifizierung wiederholt privilegierte Befehle mit dem Befehl ohne Kennwort einzugeben .
Jedes Mal, wenn Sie eine Linux-bezogene Dokumentation lesen, in der Sie aufgefordert werden, Linux-Befehle vom Terminal aus auszuführen, werden allen Befehlen entweder $
oder vorangestellt #
. Das $
Zeichen erfordert, dass bestimmte Linux-Befehle als regulärer nicht privilegierter Benutzer ausgeführt werden. Gibt andererseits an, #
dass die angegebenen Linux-Befehle mit Root- / Administratorrechten entweder direkt als Root-Benutzer oder mithilfe des sudo
Befehls ausgeführt werden sollen.
Software Installation
Die Standardinstallation Ihres GNU / Linux-Systems kann und wird häufig so angepasst, dass zusätzliche Software für Ihre Anforderungen enthalten ist. Wenn es einen Unterschied zwischen verschiedenen GNU / Linux-Distributionen gibt, ist dies die Art und Weise, wie die Software installiert wird. Die Software wird in Form von Paketen geliefert, die im entsprechenden Distributionspaket-Repository verfügbar sind.Es gibt zwei Hauptzweige von GNU / Linux-Distributionen, wenn es um die Verwaltung von Softwarepaketen geht.
Sie sind nämlich DEB und RPM . Der erste Zweig verwendet
apt
und der zweite Zweig verwendet den yum
Befehl zum Installieren der Software. Natürlich gibt es viele andere Hilfsbefehle, die bei der Installation oder Wartung der Software helfen, aber die Grundlagen werden unten erläutert.Zuerst suchen wir nach einem Paketnamen der Software, die wir installieren möchten. Angenommen, wir müssen eine Art Torrent-Client installieren, damit wir Torrent-Dateien herunterladen können. Zuerst suchen wir nach einem Paketnamen:
DEB GNU/LINUX SYSTEMS: $ apt search torrent client RPM GNU/LINUX SYSTEMS: $ yum search torrent clientDie obigen Befehle erzeugen eine Liste der Paketnamen und deren relevante Beschreibung. Lesen Sie die Beschreibungsspalte und wählen Sie in der linken Spalte ein Paket aus, das Sie installieren möchten. Nachdem Sie das zu installierende Paket ausgewählt haben, führen Sie erneut einen entsprechenden Paketverwaltungsbefehl aus, um das Paket zu installieren.
Angenommen, das Paket, das wir installieren möchten, heißt
bittorrent
. Um die Installation zu starten, muss unser Befehl mit Administratorrechten ausgeführt werden, wie im vorherigen Abschnitt beschrieben. Wenn Sie dazu aufgefordert werden, geben Sie Folgendes ein y
, um die Installation durchzuführen:DEB GNU/LINUX SYSTEMS: $ sudo apt install bittorrent RPM GNU/LINUX SYSTEMS: $ sudo yum install bittorrent

apt
Befehlszeilen-Softwarepaket-Verwaltungstools zum Installieren von Software auf dem Ubuntu Linux-System.
Die Ausführung des apt search
Befehls kann eine lange Liste von Paketen erzeugen , die nicht in der Terminal - Bildschirm passen. Um diese Unannehmlichkeiten zu überwinden, leiten Sie den Befehl an more
die Liste weiter und scrollen Sie mit der Leertaste nach unten. Beispiel:
$ apt search YOUR SEARCH KEYWORDS | moreUm zu beenden und zur Befehlszeile zurückzukehren, drücken Sie die
q
Taste.Überprüfen der Speicherplatznutzung
In diesem Abschnitt erfahren Sie, wie Sie ein Verzeichnis und die Dateigröße überprüfen und Informationen zu Ihrer aktuellen Speicherplatznutzung abrufen. Der erste Linux-Befehl, den wir in diesem Abschnitt behandeln werden, ist derdf
Befehl. Der Befehlsname df
ist eine Abkürzung für die Wörter d isk f ree.Durch Ausführen des
df
Befehls ohne Parameter gibt der Befehl Informationen zum verwendeten und verfügbaren Speicherplatz für alle Partitionen zurück, auf die in Kilobyte zugegriffen werden kann. Die Standardbefehlsausgabe gibt df
die Informationen zur Datenträgernutzung in Kilobyte aus. Dieses Verhalten kann jedoch mit der folgenden -h
Option überschrieben werden :$ df -hUm nach freiem Speicherplatz in einem beliebigen Verzeichnis zu suchen, fügen Sie einfach den vollständigen Pfad zu diesem Verzeichnis als Parameter zum
df
Befehl hinzu. Beispiel:$ df -h /home

df
Befehl im /home
Verzeichnis nach freiem Speicherplatz .df
Befehl überprüfen, werden keine Informationen zu seiner Größe angezeigt. Der df
Befehl gibt nur die Informationen zur Speicherplatznutzung einer Partition aus, in der sich das Verzeichnis befindet. Verwenden Sie zum Überprüfen der Verzeichnisgröße den du
Linux-Befehl wie unten erläutert.Um Informationen über die Dateigröße im lesbaren Format zu erhalten, können Sie den oben beschriebenen
ls
Befehl mit der Kombination aus Optionen -l
(lange Auflistung) und -h
(lesbar) und dem vollständigen oder relativen Pfad zur betreffenden Datei verwenden. Der folgende ls
Befehl gibt beispielsweise die Größe der aufgerufenen Datei swapfile
im Stammverzeichnis zurück /
:$ ls -lh /swapfileWie bei der Suche nach einer Dateigröße können wir den
du
Befehl verwenden, um die Verzeichnisgröße zu überprüfen. Standardmäßig zeigt der du
Befehl, wenn er mit dem Verzeichnisparameter geliefert wird, die Größe aller Verzeichnisse an:$ du -h /home/Verwenden Sie die
-s
Option, um eine Zusammenfassung der Gesamtgröße eines einzelnen Verzeichnisses zu erhalten . Wie in allen obigen Beispielen in diesem Abschnitt sind wir auch hier an einer für Menschen lesbaren Ausgabe interessiert und verwenden daher die -h
Option:$ du -sh /home/

du
Linux-Befehls zum Überprüfen der Größe des /home
Verzeichnisses.
Führen Sie den man ls
Befehl aus, um einen schnellen Überblick über alle möglichen ls
Befehlsoptionen zu erhalten. Können Sie eine Möglichkeit finden, mit dem ls
Befehl alle Dateien und Verzeichnisse nach ihrer Festplattengröße in absteigender Reihenfolge zu sortieren?
Datei- und Verzeichniskomprimierung
In diesem Abschnitt werden einige Möglichkeiten zum Komprimieren und Dekomprimieren von Dateien auf dem GNU / Linux-System erläutert. Die ersten Werkzeuge, die Sie lernen werden, sind die Befehletar
und gzip
. Der tar
Befehl wird meistens verwendet, um das gesamte Verzeichnis in einer einzigen Datei zu kombinieren und bei Bedarf optional eine Komprimierung durchzuführen.Das folgende
tar
Befehlsbeispiel kombiniert das gesamte Verzeichnis my_dir
in einer einzigen Datei mit dem Namen my_dir.tar
:$ tar cf my_dir.tar my_dirUm die resultierende Datei weiter zu komprimieren, können wir den
gzip
Befehl verwenden, um eine komprimierte Datei mit dem Namen zu erstellen my_dir.tar.gz
:$ gzip my_dir.tarDie meiste Zeit müssen wir das Verzeichnis jedoch trotzdem komprimieren, daher ist es möglich, das Verzeichnis zu komprimieren, indem sowohl das
tar
als auch die gzip
Tools als Alternative zu den obigen Befehlen kombiniert werden:$ tar cxf my_dir.tar my_dirDie durch die Kombination der Befehle
tar
und erzeugten Dateien gzip
werden als gzip-Tarballs oder einfach als Tarballs bezeichnet .Um einen Tarball auszupacken, können wir den Vorgang einfach rückgängig machen, aber stattdessen verwenden
gzip
wir den gunzip
Befehl. Zum Dekomprimieren des gzip-Tarballs können my_dir.tar.gz
wir beispielsweise den folgenden gunzip
Befehl verwenden:$ gunzip my_dir.tar.gzDer obige Befehl erzeugt unsere Originaldatei,
my_dir.tar
die das my_dir
Verzeichnis enthält. Mit dem tar
Befehl können wir diesen Tarball weiter entpacken, um das ursprüngliche my_dir
Verzeichnis abzurufen :$ tar xf my_dir.tar

tar
, gzip
und gunzip
Linux - Befehle.Herunterfahren und neu starten
Wenn Sie das GNU / Linux-Betriebssystem herunterfahren und neu starten möchten, müssen Sie nur einen Befehl lernen, der sowohl Neustart als auch Herunterfahren ausführt. Dieser Befehl wird intuitiv aufgerufenshutdown
.Ja, es stimmt, Sie können Ihr System beispielsweise mit dem Befehl
init 6
oder neu reboot
starten, aber wenn Sie den shutdown
Befehl lernen, erhalten Sie mehr Leistung und Optionen. Nachfolgend finden Sie einige Beispiele für den shutdown
Befehl.Das erste
shutdown
Befehlsbeispiel startet Ihr System in einer Minute neu:$ sudo shutdown -rUm Ihr GNU / Linux-System sofort neu zu starten, führen Sie Folgendes aus:
$ sudo shutdown -r nowDas Herunterfahren Ihres Systems mit dem
shutdown
Befehl folgt dem gleichen Prinzip wie die obigen Neustartbefehle. Die folgenden zwei Beispiele zeigen, wie Sie das System in einer Minute sofort und mit einer Verzögerung von 1,5 Stunden (90 Minuten) herunterfahren können:$ sudo shutdown $ sudo shutdown now $ sudo shutdown +90Wenn Sie das verzögerte Herunterfahren des Systems ausgeführt haben, können Sie den Vorgang zum Herunterfahren abbrechen, indem Sie:
$ sudo shutdown -c
Erweiterte Linux-Befehle
Fehlerbehebung bei Internet- / Netzwerkverbindung
In diesem Abschnitt werden einige grundlegende Netzwerkfähigkeiten vorgestellt. Insbesondere erfahren Sie, wie Sie eine IP-Adresse der Dienste erhalten, die zum Herstellen einer ordnungsgemäßen Internetverbindung erforderlich sind, und wie Sie Probleme mit der Netzwerkkonnektivität und einer Internetverbindung beheben.Beginnen wir mit dem Abrufen unserer lokalen IP-Adresse mithilfe des
ip
Befehls. Der ip
Befehl verfügt über eine Reihe von Optionen, darunter die Option address
oder a
kurz, um IP-Adressen anzuzeigen, die allen verfügbaren und aktivierten Netzwerkschnittstellen zugewiesen sind:$ ip aDer obige Befehl zeigt die IP-Adresse an, die derzeit vom System verwendet wird. Bitte beachten Sie, dass der Name Ihrer Netzwerkschnittstelle möglicherweise anders ist. Im nächsten Beispiel erhalten wir die IP-Adresse Ihres Gateways. Wir verwenden wieder den
ip
Befehl, diesmal jedoch mit der r
Option (route):$ ip rDas nächste Puzzleteil ist die DNS-IP-Adresse (Domain Name Server). Um zu überprüfen, auf welchem DNS-Server Ihr System Hostnamen in IP-Adressen auflöst, überprüfen Sie einfach den Inhalt der
/etc/resolv.conf
Datei mit dem cat
Befehl, wie zuvor erläutert:$ cat /etc/resolv.conf

ping
Befehl.Mit dem
ping
Befehl können wir die Verbindung zu einer beliebigen IP-Adresse oder einem beliebigen Host testen. Der ping
Befehl sendet ein Paket an einen beliebigen Host oder eine beliebige IP-Adresse und informiert uns über das Ergebnis. Standardmäßig ping
sendet der Befehl einen endlosen Ping an die ausgewählte IP-Adresse oder den ausgewählten Host. Um eine kontinuierliche Unterbrechung zu unterbrechen, ping
drücken Sie die CTRL+C
Tastenkombination. Alternativ können Sie die -c
Option mit der Kombination der Nummer verwenden, die die Anzahl der zu sendenden Pakete angibt. Beispielsweise:$ ping linuxconfig.org PING linuxconfig.org (104.24.11.18) 56(84) bytes of data. 64 bytes from 104.24.11.18 (104.24.11.18): icmp_seq=1 ttl=57 time=9.83 ms 64 bytes from 104.24.11.18 (104.24.11.18): icmp_seq=2 ttl=57 time=10.0 ms 64 bytes from 104.24.11.18 (104.24.11.18): icmp_seq=3 ttl=57 time=9.95 ms --- linuxconfig.org ping statistics --- 3 packets transmitted, 3 received, 0% packet loss, time 2002ms rtt min/avg/max/mdev = 9.833/9.933/10.008/0.073 ms $ ping -c 2 8.8.4.4 PING 8.8.4.4 (8.8.4.4) 56(84) bytes of data. 64 bytes from 8.8.4.4: icmp_seq=1 ttl=121 time=10.3 ms 64 bytes from 8.8.4.4: icmp_seq=2 ttl=121 time=10.4 ms --- 8.8.4.4 ping statistics --- 2 packets transmitted, 2 received, 0% packet loss, time 1001ms rtt min/avg/max/mdev = 10.340/10.412/10.485/0.125 msWenn Probleme mit der Internetverbindung auftreten, können Sie die Netzwerkverbindungen beheben, indem Sie alle oben genannten IP-Adressen entweder von Ihrer lokalen IP-Adresse oder von einem öffentlichen Host aus anpingen. Mithilfe dieser Strategie können Sie das mögliche Problem eingrenzen, das zu Problemen mit der Netzwerkverbindung führt (siehe Abbildung unten).

ping
Linux-Befehl.Ändern von Berechtigungen und Besitzverhältnissen
Jede Datei oder jedes Verzeichnis innerhalb des GNU / Linux-Dateisystems kann verschiedenen Benutzern sowie verschiedenen Benutzergruppen gehören. Darüber hinaus kann jede Datei oder jedes Verzeichnis so eingestellt werden, dass sie einer oder mehreren Berechtigungen wie Lesen, Schreiben und Ausführen entspricht. Das Thema bezüglich Datei- oder Verzeichnisberechtigungen oder Besitz kann ein kleines Buch abdecken. Da wir uns für Grundlagen interessieren, finden Sie hier einige Tipps für den Einstieg.Beginnen wir mit dem Abrufen der tatsächlichen Informationen zu Datei- oder Verzeichnisberechtigungen. Führen Sie dazu den bereits gelernten
ls
Befehl mit der -l
Option und einem Datei- oder Verzeichnisnamen als Parameter aus. Beispielsweise:$ ls -l dir/Die detaillierten Informationen zur Ausgabe sind in der Abbildung unten dargestellt. Bitte nehmen Sie sich etwas Zeit, um die Informationen zu verarbeiten, bevor Sie fortfahren:

ls
Befehl und seiner -l
Option für lange Listen abgerufen werden .Wie im obigen Bild bereits angegeben, gibt es drei Berechtigungstypen: Lesen , Schreiben und Ausführen . In der folgenden Tabelle sind alle Berechtigungstypen zusammen mit ihrer symbolischen und oktalen Darstellung aufgeführt:
Berechtigungsart | Oktale Darstellung | Symbolische Darstellung |
---|---|---|
Lesen | 4 | r |
Schreiben | 2 | w |
Ausführen | 1 | x |
Das Tool zum Ändern von Datei- oder Verzeichnisberechtigungen im GNU / Linux-Dateisystem ist
chmod
. Es gibt zwei Möglichkeiten, wie Sie Datei- oder Verzeichnisberechtigungen mit dem chmod
Befehl ändern können , und zwar durch oktale oder symbolische Darstellung. Von diesen beiden ist der beste Ansatz derjenige, den Sie am einfachsten merken und verwenden können.Das folgende Beispiel zeigt, wie Sie den
chmod
Befehl mit oktaler und symbolischer Darstellung verwenden, um die dir
Verzeichnisberechtigungen wie folgt zu ändern :Ziel | Anforderung | Oktale Darstellung | Symbolische Darstellung |
---|---|---|---|
Benutzer (Eigentümer) | Lesen, Schreiben und Ausführen | 7 wie in (4 + 2 + 1) | u = rwx |
Gruppe | Lesen und Schreiben | 6 wie in (4 + 2) | g = rw |
Andere | Keine Berechtigungen | 0 | o = |
Die folgenden zwei
chmod
Linux-Befehle, die die Darstellung von oktalen und symbolischen Berechtigungen verwenden, sind austauschbar und ändern die dir
Verzeichnisberechtigungen gemäß den oben genannten Anforderungen:OCTAL: $ chmod 760 dir SYMBOLIC: $ chmod u=rwx,g=rw,o= dirDas letzte Werkzeug, das in diesem Abschnitt behandelt wird, ist der
chown
Befehl. Mit dem chown
Befehl kann der Benutzer den Besitz einer Datei oder eines Verzeichnisses ändern. Jede Datei oder jedes Verzeichnis hat zwei Eigentumsarten. Dies sind nämlich die Benutzer- und Gruppenbesitzverhältnisse.Das Ändern des Eigentums mithilfe des
chown
Befehls ist recht einfach. Die allgemeine Regel zum Ändern des Datei- oder Verzeichnisbesitzes besteht darin, dem chown
Befehl zwei Parameter bereitzustellen. Der erste angegebene Parameter enthält den Benutzernamen und den Gruppennamen, deren Eigentümer diese Datei oder dieses Verzeichnis sein soll, .
und den zweiten Parameter, der den betreffenden Datei- oder Verzeichnisnamen darstellt.Das folgende
chown
Linux-Befehlsbeispiel ändert die Datei, deren Name file.txt
dem Benutzer lubos
und allen zur Gruppe gehörenden Benutzern gehört linuxconfig
:$ chown lubos.linuxconfig file.txt
chown
Linux-Befehl erfolgreich zu ändern, gelten die folgenden zwei Regeln. Erstens müssen der Benutzer und die Gruppe vorhanden sein, und zweitens root
erfordert das Ändern des Eigentums von oder zu dem Benutzer oder der Gruppe Administratorrechte. sudo
Weitere Informationen finden Sie in der obigen Befehlserklärung.
chmod
und chown
Linux - Befehle Beispiel für die Verwendung.
Experimentieren Sie mit den chmod
verschiedenen Berechtigungsvarianten des Linux-Befehls. Können Sie erklären, wie sich das Anwenden derselben Berechtigungen auf eine Datei oder ein Verzeichnis unterscheidet?
Überprüfen Sie die Kernelversion des Systems
Es gibt Zeiten, in denen Sie Probleme mit Ihrer GNU / Linux-Box beheben müssen. Daher müssen Sie Informationen zu Ihrem aktuell ausgeführten Kernel, auch bekannt als Linux, erhalten.Wenn Sie den
uname
Befehl mit einer Kombination aus verwenden, -a
werden detaillierte Informationen zu Ihrer Kernelversion und -architektur ausgegeben:$ uname -a

Das Linux- Schlüsselwort bezieht sich eigentlich nur auf den Kernel des Systems, während die Befehle des tatsächlichen Betriebssystems auf den Binärdateien der freien GNU- Software basieren. Daher ist es angemessener und technisch korrekter , das gesamte Betriebssystem als GNU / Linux oder Lignux zu bezeichnen, anstatt einfach darauf zu verweisen wie Linux .
Fazit
Das ist alles, Leute! Lassen Sie sich jedoch nicht von der Länge dieses Artikels täuschen, wenn Sie glauben, dass es nichts anderes zu lernen gibt. Im Gegenteil, dieser Artikel kratzt kaum an der Oberfläche, da der Leser nur mit einigen grundlegenden GNU / Linux-Befehlszeilentechniken vertraut gemacht werden sollte.Bitte geben Sie unten Feedback, um diesen Artikel zu verbessern. Wenn Sie weitere Fragen haben oder zusätzliche Hilfe benötigen, besuchen Sie bitte das LinuxConfig- Forum .
Was solltest du als nächstes lernen? Experimentieren Sie weiter mit den Grundlagen und versuchen Sie, Ihrem Repertoire täglich neue Linux-Befehle hinzuzufügen. Übung macht den Meister!
Wenn Sie mit den grundlegenden Linux-Befehlen vertraut sind, lesen Sie mein Bash Scripting Tutorial Anfänger erfahren, wie sie Aufgaben mithilfe von Linux-Befehlen mit der Kombination von Shell-Skripten automatisieren können.