In den letzten zehn Jahren hat sich Linux von einem alternatives Betriebssystem für Enthusiasten zu einem unverzichtbaren Werkzeug für den Betrieb einiger der robustesten Software-Infrastrukturen der Welt.
Mit der täglich wachsenden Breite dieser Dienste ist auch die Nachfrage nach Personen, die sich mit der Verwaltung dieser Systeme auskennen, gestiegen. Mit der Linux Hands On-Reihe versuchen wir, dem Weg zu diesem Level ein paar Schritte näher zu kommen.
Seit den letzten zwei Wochen beschäftigen wir uns von Grund auf mit dem Linux-Terminal. Wir begannen mit dem grundlegende Linux-Befehle und Linux-Installation auf einer virtuellen Maschine im ersten Teil und dann haben wir darauf mit dem aufgebaut Zwischen-Linux-Befehle und eine kurze Einführung in Linux-Prozesse und wie man sie anzeigt und beendet im zweiten Teil.
Für diese Woche werden wir endlich unser Spiel verstärken!
Was wirst du lernen
- Steigerung der Produktivität mit Befehls-Aliasing
- Überprüfen der Festplattennutzung basierend auf Volumes und Dateitypen
- Herunterladen von Dateien über das Netzwerk
- Grundlagen der Netzwerk-Fehlerbehebung
- Dienste und wie man sie verwaltet
- Benutzerzugriffskontrolle/Sitzungsverwaltung
- Herunterfahren und Neustarten des Systems
Diese Woche werden wir die erweiterten Terminalbefehle behandeln. Diese Befehle drehen sich um Dinge, die Sie während der Systemadministration meistens benötigen. Wir haben auch einige Befehle, die Ihnen helfen, Ihre Bearbeitungszeit zu verkürzen und Ihre Produktivität zu steigern.
1. Befehls-Aliasnamen
Der allererste Punkt, den wir behandeln werden, sind Aliase und das wird den Produktivitätsteil des Beitrags treffen. Immer wieder werden Sie feststellen, dass Sie von Zeit zu Zeit bestimmte Befehle wiederholen. In diesen Situationen die Befehlsverlaufstechnik, die ich im ersten Teil behandelt habe. Der Befehlsverlauf wird Ihnen helfen, Zeit zu sparen, indem Sie vermeiden, den Befehl einzugeben, er wird beim Scrollen ausgeglichen. Mit dem Befehlsalias können Sie all diesen Ärger vermeiden. Aliasing ist praktisch, wenn Sie mit Befehlen arbeiten, die besonders schwer einzugeben sind und wenn Sie kein Autovervollständigungs-Plugin auf Ihrem Terminal verwenden.
Bevor Sie Aliase erstellen, sehen wir uns an, wie Sie sie auflisten. Ein Alias (im Kontext von Linux-Terminal) ist eine Abkürzung für einen traditionellen Terminalbefehl. Dies gilt jedoch nicht nur für Linux-Terminalbefehle. Sie können fast jeden erdenklichen Befehl mit einem Alias versehen.
Hier ist ein Beispiel. Für die Übergabe an ein Git-Repo verwenden wir Git Commit mit dem Flag -m. Im Durchschnitt verwenden Sie diesen Befehl mindestens 10 bis 20 Mal pro Woche. Das Ganze abzutippen macht keinen Sinn, hier kommt Aliasing ins Spiel. Indem Sie einen Alias wie beispielsweise gitcmt verwenden, sparen Sie sich die Mühe, das Ganze einzugeben. Fügen Sie diese Ersparnis über ein paar Monate und Jahre hinzu und Sie haben ein paar zusätzliche Stunden. Beeindruckt dich, nicht wahr?
In Ordnung, sehen wir uns an, wie Sie nach Aliasen suchen und diese erstellen.
Um die bereits vorhandenen Aliasnamen aufzulisten, geben Sie einfach die alias Befehl ohne Flags und drücken Sie die Eingabetaste. Und die Liste der Aliasnamen wird Ihnen zurückgegeben.
Diese Aliase sind meist globale Aliase auf Systemebene, die für alle Benutzer des Systems gelten.

Da wir nun wissen, wie man alle Aliase auf einem System sieht, können wir einen erstellen.
Um einen Alias zu erstellen, ist hier die Syntax.
Alias ALIASNAME="ACTUAL_COMMAND_NAME"
In unserem Fall werden wir also nur zu Demonstrationszwecken einen Alias für den echo-Befehl verwenden.
Geben Sie einfach Folgendes ein und drücken Sie die Eingabetaste.
alias ec="echo"

Jetzt statt zu verwenden Echo, wir können einfach tippen ec stattdessen.
Beachten Sie jedoch, dass dieser Alias nur eine Sitzung dauert, dh wenn Sie das Terminal schließen und erneut öffnen, funktioniert es nicht mehr. Um es dauerhaft zu machen, müssen Sie Ihre Shell-Konfigurationsdatei bearbeiten, die auf gespeichert ist ~ / .bashrc
Öffnen Sie die Datei in nano, platzieren Sie den Befehl in dieser Datei wie im Screenshot unten gezeigt und beenden Sie.

Geben Sie nach dem Beenden den folgenden Befehl aus:
Quelle ~ /. Bashrc

Sobald dies erledigt ist, ist Ihr Befehlsalias dauerhaft.
Sehen wir uns nun an, wie Sie den Alias eines Befehls aufheben können. Der gegenteilige Effekt wird durch die Ausgabe der Unalias Befehl
Das Unalias Befehl entfernt nicht nur den Alias aus der aktuellen Sitzung, sondern auch aus der Shell-Konfigurationsdatei.

2. whereis-Befehl
Wenn Leute Software schreiben, pflegen sie oft zwei verschiedene Umgebungen. Eine Entwicklungsumgebung, die der Einrichtung des Produktionsservers ähnelt, und einer regulären lokalen Umgebung, die den Anforderungen des Benutzers entspricht. Um diese beiden Bereiche isoliert / voneinander getrennt zu halten, verwenden die meisten Leute entweder Docker oder Vagrant, aber einige Leute bevorzugen auch einen manuellen Ansatz. Wenn Sie in die zweite Hälfte fallen, ist es sehr wahrscheinlich, dass Sie doppelte Binärdateien oder dieselben Binärdateien mit unterschiedlichen Versionen auf demselben Computer haben. Dieser nächste Befehl hilft Ihnen, alle Installationen einer bestimmten Binärdatei aufzulisten. Der Befehl heißt whereis und listet den Ort auf, an dem eine bestimmte Binärdatei zusammen mit ihrer Dokumentation gespeichert ist.
Hier ist die Syntax für die wo ist Befehl:
wo ist BINARY_NAME
Nachdem wir nun die Syntax gesehen haben, sehen wir uns an, wie der Befehl whereis verwendet wird:

Wie Sie sehen können, ist der Speicherort der Git-Binärdatei auf dem System gespeichert.
Dieser Befehl, auch wenn er noch so einfach ist, wird von immenser Hilfe sein, wenn Sie beim Erstellen von Kompatibilitätsproblemen auftreten.
3. Dienstbefehl
Ein lang andauernder Vorgang im Hintergrund wird unter Linux als Dienst bezeichnet. Das Linux-Betriebssystem enthält eine Vielzahl von Diensten, die Sie herausfinden können, indem Sie in das Verzeichnis /etc/init.d navigieren. Wir können zwar nicht behandeln, wie man einen benutzerdefinierten Dienst erstellt, da dies den Rahmen dieses Beitrags sprengt, aber eine einfache Suche in StackOverflow würde definitiv dazu führen, wie man einen erstellt. Wir werden jedoch über die Verwaltung von Diensten sprechen. Dazu gehören das Starten, Stoppen des Neustarts und Überprüfen des Status der Dienste.
Die Syntax von serviceorientiert Befehl wäre wie folgt:
Dienst SERVICE_NAME starten
Für dieses Beispiel arbeiten wir mit dem sshd Dienst, bei dem es sich um einen sicheren Shell-Server von OpenBSD.
Um einen Dienst zu starten, verwenden wir service start gefolgt vom Dienstnamen (hier sshd).
Dienst sshd starten
Lassen Sie uns es unten in Aktion sehen. Und wenn beim Drücken der Eingabetaste nichts auf dem Terminal angezeigt wird, bedeutet dies, dass es erfolgreich funktioniert hat.

Lassen Sie uns nun den Status desselben Dienstes überprüfen. Dazu verwenden wir die Status Option zusammen mit dem Dienstbefehl. Wie unten zu sehen.
Service-Sshd-Status
Dies würde zusammen mit anderen hilfreichen Details anzeigen, ob der Dienst aktiv ist oder nicht.

Nachdem wir nun wissen, wie man einen Dienst startet und seinen Status überprüft, sehen wir uns an, wie wir ihn stoppen können.
Dazu verwenden wir die Stop-Option zusammen mit dem service-Befehl. Wenn Sie den Status jetzt überprüfen, wird Ihnen mitgeteilt, dass er inaktiv ist.
service sshd stopp

Nun gut, für den letzten Teil werden wir den Dienst neu starten. Und um dies zu tun, verwenden wir überraschenderweise die Neustartoption.
sshd Dienst neu zu starten

Gehen wir weiter.
4. df-Befehl
Da es in diesem Teil der Serie darum geht, zu lernen, wie man ein Linux-System über das Terminal verwaltet, lernen wir eine der häufigsten Aufgaben kennen, die wir bei der Verwendung eines Betriebssystems ausführen. Wir werden sehen, wie Sie den Speicherplatz direkt vom Terminal aus überprüfen können. Dazu verwenden wir den Befehl df. Es steht für Disk-Dateisystem und es wird verwendet, um den verfügbaren Speicherplatz auf einem Dateisystem anzuzeigen.
Beginnen wir mit der Syntax des df-Befehls:
df [OPTION]... [DATEI]...
Sehen wir uns den df-Befehl in Aktion an. Standardmäßig listet der Befehl df ohne Angabe von Optionen die Größe einzelner Volumes in einem Format auf, das nicht ganz lesbar ist.

Um das zu vermeiden, verwenden wir die -h Flag, das für das menschenlesbare Format steht. Geben Sie den folgenden Befehl ein
df -h

Und jetzt, wie Sie sehen können, hat es die Volume-Größe in aufgeführt MEgabyte und Gigabyte. Es gibt eine Reihe weiterer Optionen, die der Befehl df unterstützt, und ich würde vorschlagen, dass Sie sie mit dem Befehl man überprüfen.
5. du Befehl
Wir haben gesehen, wie wir die Speicherplatzstatistiken für unseren Computer überprüfen können, aber das ist nur ein Schritt zur vollständigen Kontrolle. Wie wäre es, wenn wir den von einzelnen Dateien belegten Speicherplatz überprüfen. Dazu verwenden wir den Befehl du, der den von Dateien verwendeten Speicherplatz schätzt.
Hier ist die Syntax für den du-Befehl:
du [OPTION]... [DATEI]...
Standardmäßig können wir ohne die angegebenen Optionen sehen, dass der Befehl die Dateien und den von ihnen belegten Speicherplatz in einem nicht lesbaren Format auflistet.

Um mehr Sinn aus ihnen zu machen, verwenden wir die -h Option erneut, die die Dinge in einem für Menschen lesbaren Format anzeigt.
du h
Wie Sie unten sehen können, wird jetzt der von allen Dateitypen belegte Speicherplatz in uns bekannten Einheiten aufgelistet.

Wir können auch fortfahren und die von einem bestimmten Dateityp in einem Verzeichnis belegte Größe mit dem -s Flagge. Lassen Sie uns im aktuellen Verzeichnis nach Textdateien suchen.
du -s *.txt

6. passwd-Befehl
Der nächste Schritt, um die volle Kontrolle über das System zu haben, wäre die Möglichkeit, das Passwort tatsächlich zu ändern. Ich meine, was nützt ein Systemadministrator, wenn er von seinem eigenen Computer ausgesperrt wird, richtig? cool, also werden wir uns ansehen, wie man das Passwort ändert und dazu verwenden wir die passwd Befehl.
Hier ist die Syntax für den passwd-Befehl:
passwd [OPTION] [BENUTZER]
Und jetzt verwenden wir den Befehl passwd so:
passwd

Nun zeigen Linux und Unix offensichtlich aus Sicherheitsgründen das Passwort nicht in Form von Sternchen auf der Konsole, denn wenn Sie die Länge eines Passworts kennen, können Sie dem Brute-Force-Zwang einen Schritt näher kommen, aber nehmen Sie mein Wort dafür und probiere es aus, es funktioniert.
Okay, lass uns weitermachen.
7. wget-Befehl
Als Nächstes sehen wir uns an, wie Sie Dateien direkt von Ihrem Terminal herunterladen können. Wenn Sie sich selbst schon sagen: "Gibt es etwas, das er für die UI hinterlassen wird?", danke, aber ich werde versuchen, es nicht zu tun.
Um Dateien aus dem Internet herunterzuladen, verwenden wir den Befehl wget, der für web get steht. Und es ist ein Befehlszeilen-Dienstprogramm, um die Datei über ein Netzwerk herunterzuladen. Es ist sehr einfach, den Befehl wget zu verwenden. Sie müssen nur die URL der herunterzuladenden Datei nach dem Befehl wget angeben.
Der Struktur halber hier die Syntax:
wget URL_OF_FILE
Und hier ist eine Beispielverwendung.

Das Interessante an wget ist, dass es den Download fortsetzen kann, wenn er aufgrund eines Netzwerkproblems oder aus anderen Gründen fehlschlägt.
8 wer befehligt
Für einen Systemadministrator ist die Zugriffskontrolle eine weitere wichtige Rolle. Sie müssen den Zugriff auf das Hauptsystem verwalten und die Aktivitäten der derzeit angemeldeten Personen überprüfen und überwachen. Mit diesem nächsten Befehl können Sie überprüfen, wer derzeit beim System angemeldet ist. Der Befehl heißt wer und hier ist die Syntax dafür.
wer [ OPTION ]... [ DATEI ] [ bin ich ]
Sehen wir uns an, wie der Befehl who funktioniert:

Da ich mich auf einem Einzelbenutzer-Rechner befinde und ihn gerade benutze, bin ich der einzige Benutzer, den Sie auf dem Screenshot sehen können. Angenommen, Sie verwalten einen Produktionsserver mit mehreren 100 gleichzeitig angemeldeten Benutzern, dann werden sie in derselben Liste angezeigt. Stellen Sie sicher, dass Sie alle verfügbaren Optionen testen, die den Befehl man verwenden.
9. Ping-Befehl
In Ordung. Mit diesem nächsten Befehl prüfen wir, ob ein Remote-Host online ist oder nicht. Dazu verwenden wir den Ping-Befehl. In der primitivsten technischen Erklärung bedeutet dies, dass der Befehl gesendet wird ICMP ECHO_REQUEST Pakete an den Host, um seine Verfügbarkeit zu überprüfen. Wenn der Host verfügbar ist, antwortet er mit einer Bestätigung und wenn nicht, werden die Pakete verworfen. Sehen wir uns an, wie Sie den Ping-Befehl verwenden.
Die Syntax ist ziemlich einfach.
ping [-LRUbdfnqrvVaAB] [-c count] [-m mark] [-i interval] [-l preload] [-p pattern] [-s packetsize] [-t ttl] [-w Deadline] [-F flowlabel] [-I Schnittstelle] [-M Hinweis] [-N nioption] [-Q tos] [-S sndbuf] [-T Zeitstempeloption] [-W Timeout] [Hop ...] Ziel
Und hier ist eine Beispielverwendung.
ping google.com

Dieser Befehl wird hauptsächlich verwendet, wenn versucht wird, Netzwerkprobleme zu beheben. Die Ausgabe des Ping-Befehls enthält verschiedene Statistiken. Erstens enthält es die ICMP Sequenznummer, die die Paketnummer angibt. Daneben enthält es auch die TTL Feld, das die Lebensdauer eines Pakets angibt, dh die Anzahl der Router, zu denen es springen kann, bevor es tatsächlich verworfen wird.
10. Befehl zum Herunterfahren
Okay, wir sind endlich am Ende dieses Teils. Lassen Sie uns diese formal mit dem Erlernen des Herunterfahrens des Systems über das Terminal schließen. Wir werden auch sehen, wie Sie das System direkt vom Terminal aus neu starten können. Da dieser Befehl die Maschine nun tatsächlich herunterfährt, zeige ich eine Demo auf meinem Server, auf die ich über eine sichere Shell über meinen Host-Rechner zugreifen werde. Hier ist die Syntax für den Befehl zum Herunterfahren:
shutdown [-akrhPHfFnc] [-t Sek] Zeit [Nachricht]
Zum Abschalten der Maschine geben wir einfach die Schließung Befehl ohne Optionen. Und um es neu zu starten, können Sie die -r Flagge. So sähe es mit dem aus -r Flagge.
Herunterfahren -r

Und nun, in der Demo gibt es nicht viel zu „sehen“, außer der Tatsache, dass Ihr System heruntergefahren wird. Sie können sich das obige Video ansehen, in dem ich zeige, wie sich mein Server nach der Ausführung des Befehls tatsächlich abschaltet.
Fazit
Okay, Leute, wir sind am Ende von Teil 3 der Linux Hands On-Reihe angelangt. Teil 1 die Grundlagen abgedeckt, dann haben wir darauf aufgebaut in Teil 2 und in Teil 3 haben wir uns auf den Aspekt der Systemadministration von Linux konzentriert. Wie immer empfehle ich Ihnen dringend, diese erweiterten Linux-Terminalbefehle auszuprobieren, anstatt nur den Beitrag zu lesen oder die Videos anzusehen. Eines der Dinge, die ich sehr schätze, ist das Können und das kommt mit umfangreicher Übung. Stellen Sie sicher, dass Sie dies tun und wenn Sie auf Fehler stoßen oder eine Frage haben, schreiben Sie uns im Kommentarbereich oder auf Twitter. Wir sehen uns nächste Woche mit dem letzten Teil dieser Serie wieder und Junge, es wird ein Spaß werden. Nehmen Sie sich etwas Zeit und üben Sie diese Befehle, während ich Teil 4 entwerfe. Bis zum nächsten Mal! Viel Spaß beim Codieren!
Hinterlassen Sie eine Nachricht
Haben Sie etwas zu diesem Artikel zu sagen? Fügen Sie Ihren Kommentar hinzu und starten Sie die Diskussion.