GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Einige nützliche Tools für Linux-Systemadministratoren

Dieses Handbuch enthält eine Liste nützlicher Tools für Linux-Systemadministratoren. Diese Liste enthält keine komplexen Programme (wie Ansible, Puppet), deren Einrichtung und Verwendung in der Produktion eine steile Lernkurve erfordern. Die meisten der hier angegebenen Tools sind nur Skripte und sehr einfach zu installieren und in Echtzeit zu verwenden. Wenn Sie ein angehender Linux/Unix-Systemadministrator mit begrenzter Erfahrung sind, nutzen Sie diese Programme, um die Arbeit einfach und schnell zu erledigen. Diese Tools sind möglicherweise nicht immer nützlich, aber einige von ihnen können hilfreich sein.

Über Sysadmin-util

Sysadmin-util ist eine Sammlung von Skripten, die unerfahrenen Systemadministratoren und Benutzern helfen, verschiedene Aufgaben auszuführen.

Sysadmin-util besteht aus den folgenden Skripten:

  1. vorher
  2. chronisch
  3. cidr2ip
  4. zusammenklappen
  5. Tölpel
  6. leeres Verzeichnis
  7. expand-ipv6
  8. Flush-Firewall
  9. graphite_send
  10. ipadr
  11. vielleicht
  12. mk-passwd-hash
  13. Multi-Ping
  14. mysql-slave-check
  15. pyhttpd
  16. Randpass
  17. seit
  18. ausbreiten
  19. ssh-auth-types
  20. ssh-test
  21. ssl-ablaufdatum
  22. Zeitüberschreitung
  23. bis zum Fehler
  24. bis zum Erfolg
  25. wenn unten
  26. nach Ablauf
  27. welche Schale
  28. mit-Schloss

Lassen Sie uns fortfahren und anhand von Beispielen sehen, wie einige dieser Tools installiert und verwendet werden.

Installieren Sie sysadmin-util unter Linux

Wie ich bereits sagte, ist die Installation aller hier aufgeführten Tools trivial. Tatsächlich ist keine Installation erforderlich. Klonen Sie einfach sein Repository und verwenden Sie die Tools im Handumdrehen.

$ git clone https://github.com/skx/sysadmin-util.git

Der obige Befehl klont den gesamten Inhalt des Sysadmin-util-Repositorys im aktuellen Verzeichnis. Cd in dieses Verzeichnis und führen Sie alle Tools Ihrer Wahl aus. So einfach ist das!

Sysadmin-util Stellt die folgenden nützlichen Tools für Linux-Systemadministratoren bereit

Vorher

Dieses Tool hilft Ihnen herauszufinden, wie lange es her ist, dass eine Datei oder ein Verzeichnis in einem für Menschen lesbaren Format geändert wurde.

Stellen Sie sicher, dass Sie sich im sysadmin-util-Verzeichnis befinden:

$ cd sysadmin-util

Um herauszufinden, wann eine Datei oder ein Verzeichnis geändert wurde, geben Sie einfach den Pfad wie unten angegeben an.

$ ./ago <path-to-file/directory>

Beispiele:

$ ./ago /home/sk/sysadmin-util/
/home/sk/sysadmin-util/ 23 hours ago
$ ./ago /etc/
/etc/ 3 days ago

Wie Sie sehen können, /home/sk/sysadmin-util wurde vor 23 Stunden geändert und /etc/ Verzeichnis wurde vor 3 Tagen geändert .

Verwandte Lektüre:

  • Überwachen von Dateiänderungen mit fswatch unter Linux
  • Suchen und Sortieren von Dateien basierend auf Zugriff, Änderungsdatum und -zeit in Linux

Chronisch

Das Chronic-Tool führt einen Befehl leise aus, es sei denn, er schlägt fehl, d. h. es führt einen Befehl aus und blendet STDOUT und STDERR aus, wenn er erfolgreich abgeschlossen wird. Es ist nützlich für Cron-Jobs . Anstatt zu versuchen, den Befehl leise zu halten und sich mit Mails auseinandersetzen zu müssen, die versehentliche Ausgaben enthalten, wenn er erfolgreich ist, und nicht ausführlich genug, wenn er fehlschlägt, können Sie ihn einfach immer ausführlich ausführen und chronisch verwenden, um die erfolgreiche Ausgabe zu verbergen.

Beispiel:

Verwenden Sie beim Erstellen eines neuen Cron-Jobs anstelle der folgenden Zeile:

0 1 * * * backup >/dev/null 2>&1

Sie können verwenden:

0 1 * * * chronic backup

Cidr2ip

Es wandelt CIDR-Blöcke in ihre konstituierenden IP-Adressen um.

Beispiel:

$ ./cidr2ip 192.168.225.0/24
192.168.225.0
192.168.225.1
192.168.225.2
192.168.225.3
192.168.225.4
192.168.225.5
[...]

Minimieren

Das Reduzieren-Tool entfernt Leerzeilen und Zeilen, die Leerzeichen enthalten, aus der/den angegebenen Datei(en).

Beispiel:

$ echo -e "Linux is not an OS.\n It is a Kernel. \n\nGnu/Linux is the OS.\n\n\n\n" | ./collapse
Linux is not an OS.
It is a Kernel. 
Gnu/Linux is the OS.

Duplikate

Das Dupes-Tool meldet die Dateien, die identisch sind. Es hilft Ihnen, doppelte Dateien mit demselben Inhalt rekursiv über SHA1-Hash zu finden.

Beispiel:

$ ./dupes 
./.git/logs/HEAD
./.git/logs/refs/remotes/origin/HEAD
./.git/logs/refs/heads/master

Verwandte Lektüre:

  • So finden und löschen Sie doppelte Dateien in Linux

Leeres Verzeichnis

Dieses Tool testet, ob das angegebene Verzeichnis leer ist oder nicht.

Beispiel:

Das folgende Beispiel zeigt, ob das angegebene Verzeichnis /home/sk/ostechnix leer ist oder nicht.

$ if ./empty-dir /home/sk/ostechnix; then echo "It is empty" ; fi
It is empty

Wenn das Verzeichnis nicht leer ist, sehen Sie keine Ausgabe.

Expand-ipv6

Dieses Tool erweitert die angegebenen abgekürzten/komprimierten IPv6-Adressen auf ihre vollständige Form. Dies kann beim Einrichten von DNS-Einträgen hilfreich sein.

Beispiel:

$ ./expand-ipv6 fe80::a00:27ff:feff:d2e0
fe80:0000:0000:0a00:27ff:feff:d2e0

Multiping

Es ist ein Multiprotokoll-Ping-Wrapper. Es wird verwendet, um die Konnektivität eines entfernten Hosts zu testen, unabhängig davon, ob es sich um einen IPv6- oder IPv4-Host handelt. Bedeutung – wenn die Fernbedienung IPv4 verwendet, ruft sie den Befehl „ping“ auf, um die Konnektivität zu testen. Wenn der entfernte Host IPv6 verwendet, ruft er den Befehl „ping6“ auf.

Das Multi-Ping-Dienstprogramm erfordert Net::DNS Perl-Modul. Wenn Sie es noch nicht installiert haben, lesen Sie die folgende Anleitung.

  • So installieren Sie Perl-Module unter Linux

Pingen Sie jetzt jede Domain mit dem Multi-Ping-Tool, wie unten gezeigt.

Beispiel:

$ ./multi-ping google.com
Host google.com - 216.239.36.117 - alive
Host google.com - 216.239.32.117 - alive
Host google.com - 216.239.38.117 - alive
Host google.com - 216.239.34.117 - alive
Host google.com - 2001:4860:4802:34:0:0:0:75 - alive

Verwandte Lektüre:

  • So pingen Sie mehrere Hosts gleichzeitig in Linux
  • Mehrere Server anpingen und die Ausgabe in einer Top-Text-Benutzeroberfläche anzeigen
  • Prettyping – Machen Sie die Ausgabe des Ping-Befehls hübscher und leichter lesbar

Pyhttpd

Es ist ein einfacher Python-HTTP-Server, mit dem Sie sofort einen einfachen Dateiserver einrichten können.

Beispiele:

 $ ./pyhttpd 8080
 Serving HTTP on 0.0.0.0 port 8080 ...

Wenn Sie zulassen möchten, dass der Server nur an localhost gebunden wird, anstatt auf allen Schnittstellen zu lauschen, führen Sie Folgendes aus:

 $ ./pyhttpd 127.0.0.1:8080
 Serving HTTP on 127.0.0.1 port 8080 ...

Verwandte Lektüre:

  • So richten Sie einen einfachen Dateiserver mit simpleHTTPserver ein

Randpass

Wie der Name schon sagt, wird das Dienstprogramm randpass verwendet, um ein zufälliges Passwort von der Befehlszeile aus zu generieren.

Beispiele:

$ ./randpass 
Gb39KTBu

Verwenden Sie -n, um ein Passwort mit einer bestimmten Länge zu generieren Flagge.

$ ./randpass -n 15
Xa7ZMA38tfOt7O2

Verwandte Lektüre:

  • Verschiedene Methoden zum Generieren eines starken Passworts unter Linux

Seit

Es zeigt alle neuen Inhalte seit dem letzten Lesen einer Datei. Es ist nützlich, um Protokolldateien zu verfolgen.

Beispiel:

Entfernen Sie den Inhalt der Datei apt history.log:

$ ./since /var/log/apt/history.log >/dev/null

Installieren oder entfernen Sie nun alle Anwendungen. Ich entferne den Vim-Editor:

$ sudo apt remove vim

Prüfen Sie nun den Inhalt der Datei history.log:

$ ./since /var/log/apt/history.log

Start-Date: 2020-01-28 11:52:59
Commandline: apt remove vim
Requested-By: sk (1000)
Remove: ubuntu-server:amd64 (1.417.3), vim:amd64 (2:8.0.1453-1ubuntu1.1)
End-Date: 2020-01-28 11:53:05

Das 'since'-Tool zeigt nur die neu hinzugefügten Inhalte in einer Datei seit der letzten Ausführung an. Wenn keine Inhalte hinzugefügt werden, wird dieses Skript stillschweigend beendet und Sie sehen keine Ausgabe.

Ssl-Ablaufdatum

Es zeigt das Ablaufdatum des SSL-Zertifikats der angegebenen Domain oder des Hosts an.

Beispiele:

$ ./ssl-expiry-date google.com
google.com
    Expires: Mar 31 15:47:12 2020 GMT
    Days: 63

Sie können auch mehrere Domains durch Leerzeichen getrennt angeben:

$ ./ssl-expiry-date google.com ostechnix.com
google.com
    Expires: Mar 31 15:47:12 2020 GMT
    Days: 63
ostechnix.com
    Expires: Oct  9 12:00:00 2020 GMT
    Days: 254

Verwenden Sie -d, um nur die Anzahl der verbleibenden Tage auf dem Zertifikat anzuzeigen Möglichkeit:

$ ./ssl-expiry-date -d google.com ostechnix.com
google.com: 63
ostechnix.com: 254

Zeitüberschreitung

Es erlaubt dem Benutzer, einen Befehl für ein bestimmtes Intervall auszuführen und ihn zu beenden.

Beispiel:

$ ./timeout -t 10 top

Wie Sie sehen können, beendet der obige Befehl den Befehl „top“ nach 10 Sekunden.

Beende einen Befehl nach 10 Minuten und 10 Sekunden:

$ ./timeout -t 10:10 top

Beende einen Befehl nach 10 Stunden, 10 Minuten und 10 Sekunden:

$ ./timeout -t 10:10:10 top

Bitte beachten Sie, dass das Timeout-Dienstprogramm standardmäßig auch als Teil von GNU Coreutils verfügbar ist Paket. Daher wird das Timeout-Programm aus dem sysadmin-uti-Paket wahrscheinlich nicht benötigt.

Verwandte Lektüre:

  • So führen Sie einen Befehl für eine bestimmte Zeit in Linux aus
  • So finden Sie die Ausführungszeit eines Befehls oder Prozesses in Linux
  • So führen Sie für immer alle X Sekunden einen Linux-Befehl aus
  • So fügen Sie Linux-Befehle zur Warteschlange hinzu und führen sie einzeln aus

Es sind einige weitere Tools verfügbar, z. B. Until-error & Bis zum Erfolg - Befehle wiederholen, bis es fehlschlägt/erfolgt, when-down &wenn-oben - wartet bis ein Host down/up ist, mysql-slave-check - Finden Sie heraus, ob der aktuelle Host ein Slave ist oder nicht, what-shell - Finden Sie die Shell, unter der wir laufen, etc.

Weitere Informationen zu allen Tools finden Sie auf der GitHub-Seite des Projekts.

  • Sysadmin-util GitHub-Repository

Weitere nützliche Tools für Linux-Systemadministratoren und Noobs

Abgesehen von Sysadmin-util gibt es viele andere Tools, die sowohl für Linux/Unix-Systemadministratoren als auch für Neulinge nützlich sein könnten. Einige davon haben wir bereits behandelt.

1. Cockpit - Webbasiertes Systemüberwachungstool

Cockpit ist ein kostenloses Open-Source-Serververwaltungstool, mit dem Sie Linux-Server (einzeln oder mehrere) einfach über einen Webbrowser überwachen und verwalten können. Es hilft den Systemadministratoren bei einfachen Verwaltungsaufgaben wie dem Starten von Containern, dem Verwalten von Speicher, dem Konfigurieren des Netzwerks, dem Überprüfen von Protokollen und so weiter. Überprüfen Sie den folgenden Link, um Cockpit unter Linux zu installieren und zu verwenden.

  • Cockpit – Überwachung und Verwaltung von Linux-Servern über einen Webbrowser

2. Netutils-linux - Netzwerk-Fehlerbehebungs- und Leistungsoptimierungs-Tools für Linux

Netutils-linux ist eine Sammlung nützlicher Dienstprogramme, die in Python geschrieben sind und zur Vereinfachung der Fehlerbehebung und Leistungsoptimierung von Linux-Netzwerken verwendet werden können. Weitere Informationen zu diesen Tools finden Sie in der folgenden Anleitung.

  • Eine Sammlung von Dienstprogrammen zur Vereinfachung der Fehlerbehebung und Leistungsoptimierung von Linux-Netzwerken

3. Moreutils - weitere nützliche Unix-Utilities

Wenn Sie ein Linux-Systemadministrator sind, werden Sie sicherlich von GNU-Kerndienstprogrammen gehört haben . Es ist in allen Linux-Distributionen vorinstalliert. Aber was ist mit Moreutils ? Die moreutils sind eine Sammlung nützlicher Unix-Dienstprogramme, die nicht standardmäßig in den Unix-ähnlichen Betriebssystemen enthalten sind. Diese Dienstprogramme sind oft hilfreich, um verschiedene Vorgänge auf Ihrem Linux-Server einfach und schnell auszuführen. Weitere Einzelheiten finden Sie unter dem folgenden Link.

  • Moreutils – Eine Sammlung nützlicherer Unix-Utilities

4. Bash-Snippets - Nützliche BASH-Skripte für starke Commandline-Benutzer

Bash-Snippets ist eine Sammlung nützlicher BASH-Skripte für anspruchsvolle Benutzer der Befehlszeile, die den ganzen Tag im Terminal leben. Möchten Sie das Wetter an einem Ort überprüfen, an dem Sie leben? Es gibt ein Skript, um es schnell zu überprüfen. Sie fragen sich, was ein bestimmter Aktienkurs ist? Auch dafür gibt es ein Skript. Sich gelangweilt fühlen? Sie können sich einige YouTube-Videos ansehen. Alles von der Kommandozeile!! Sie müssen keine schweren, ressourcenintensiven GUI-Anwendungen installieren. Klicken Sie auf den folgenden Link, um zu erfahren, wie Sie diese Skripte verwenden.

  • Eine Sammlung nützlicher BASH-Skripte für anspruchsvolle Benutzer der Befehlszeile

5. Debian-Goodies - Kommandozeilen-Tools für Debian und Derivate

Debian-Goodies ist eine weitere Sammlung nützlicher Dienstprogramme für DEB-basierte Systeme. Wie moreutils bietet auch Debian-goodies einige zusätzliche nützliche Befehle, die standardmäßig nicht verfügbar sind. Mit diesen Tools können die Systemadministratoren eine ganze Reihe von Aufgaben erledigen, wie zum Beispiel;

  • welche Programme mehr Speicherplatz verbrauchen,
  • welche Dienste nach der Aktualisierung des Systems neu gestartet werden müssen,
  • nach einer Datei suchen, die einem Muster in einem Paket entspricht,
  • liste die installierten Pakete basierend auf der Suchzeichenfolge auf und vieles mehr.

Überprüfen Sie den folgenden Link, um mehr über diese Extras zu erfahren.

  • Debian-Goodies – Eine Reihe nützlicher Dienstprogramme für Debian- und Ubuntu-Benutzer

6. Einige gute Alternativen zu Manpages

Manpages sind großartig! Es besteht kein Zweifel daran. Viele Manpages sind jedoch umfassend und es mangelt an nützlichen Beispielen. Möglicherweise müssen Sie die gesamte Manpage durchgehen, um die Details einer bestimmten Option oder eines Flags zu finden. Dies ist eine wirklich zeitaufwändige Aufgabe, wenn Sie mithilfe von Manpages ein praktisches Beispiel für einen bestimmten Unix-Befehl lernen möchten. Nicht mehr! Ich kenne ein paar gute Alternativen zu Manpages, die sich hauptsächlich auf Beispiele konzentrieren und alle anderen umfassenden Textteile überspringen. Lesen Sie den Link unten, um mehr über sie zu erfahren.

  • Gute Alternativen zu Manpages, die jeder Linux-Benutzer kennen sollte

7. Cli-fyi – Ein Befehlszeilentool zum Abrufen von Informationen über IP, E-Mail, Domain und mehr

Cli.Fyi ist ein Befehlszeilen-Abfragetool zum Abrufen von Informationen über IPs, E-Mails, Domains, Kryptowährungen, Medien/URL, UTC-Datum/-Uhrzeit, Land und Programmiersprache usw. Sie können alle diese Details entweder über die Befehlszeile oder den Browser abrufen, wie im Folgenden beschrieben verlinken.

  • Cli.Fyi – Ein CLI-Tool zum Abrufen von Informationen über IPs, E-Mails, Domänen und vieles mehr

8. ExplainShell – Ein webbasiertes Tool, das jedes Argument eines Linux-Befehls erklärt

ExplainShell ist eine großartige Ressource für diejenigen, die Linux-Befehlszeilenargumente und -optionen schnell und einfach lernen möchten, ohne auf Manpages verweisen zu müssen. Es schlüsselt den gegebenen Befehl auf und erklärt, was jeder Teil eines Linux-Befehls tut. Alles, was Sie tun müssen, ist einfach einen Linux-Befehl zu kopieren und auf der ExplainShell-Website einzufügen, und es wird sofort angezeigt, was jeder Teil eines Linux-Befehls bedeutet.

  • ExplainShell – Finden Sie heraus, was jeder Teil eines Linux-Befehls tut

9. Kmdr - Holen Sie sich eine Erklärung der CLI-Befehle in Ihr Terminal

Kmdr ist ähnlich wie ExplainShell, aber mit einigen zusätzlichen Funktionen. Die ExplainShell hilft Ihnen nur beim Erlernen von Linux-Befehlen. Aber was ist, wenn Sie andere CLI-Befehle lernen möchten, zum Beispiel Python? In ExplainShell finden Sie keine Erklärung zu Python-Befehlen. Hier kommt Kmdr zur Rettung. Kmdr bietet Erklärungen für viele CLI-Befehle, einschließlich ansible , conda , Docker , git , gehen , kubectl , mongo , mysql , npm ,Rubin-Edelsteine , Landstreicher und Hunderte anderer Programme, wie die in bash eingebauten . Hört sich gut an? Toll! Unter folgendem Link erfahren Sie, wie Sie Kmdr verwenden.

  • Kmdr – Erläuterung der CLI-Befehle im Terminal anzeigen

Wie ich bereits sagte, sind alle oben genannten Tools möglicherweise nicht immer nützlich. Probieren Sie eines nach dem anderen aus und finden Sie heraus, ob es Ihnen in irgendeiner Weise bei Ihrer täglichen Arbeit hilft.

Diese Tools sind nicht nur für Systemadministratoren, sondern für alle, die ihre Linux-Befehlszeilenfähigkeiten im Allgemeinen verbessern möchten. Ich werde dieser Liste weitere nützliche Tools und Anwendungen hinzufügen. Wenn Sie der Meinung sind, dass ein anderes Tool in diese Liste aufgenommen werden sollte, können Sie es mir gerne im Kommentarbereich unten mitteilen. Ich werde die Liste entsprechend prüfen und aktualisieren.


Linux
  1. 4 Tools zum Erstellen von eingebetteten Linux-Systemen

  2. 8 Tipps für eine zuverlässige Linux-Systemautomatisierung

  3. 80 Linux-Überwachungstools für SysAdmins

  4. 3 Nützliche Linux-Befehle für Systemadministratoren

  5. Übertaktungstools unter Linux

Top 10 der besten Farbauswahl-Tools für Linux-Systeme

Top 10 der besten Scan-Tools für Linux-Systeme

Top 10 der besten Wetter-Tools für Linux-Systeme

Die 10 Open-Source-Dateinavigationstools für Linux-Systeme

Die 10 besten E-Mail-Benachrichtigungstools für Linux-Systeme

Die 15 besten E-Mail-Verschlüsselungstools für Linux-Systeme