Menschen sind Gewohnheitstiere. Diese Behauptung hat sowohl gute als auch schlechte Konnotationen. Das Gute ist, dass wir dazu neigen, die Dinge jedes Mal auf die gleiche Weise zu tun. Der schlechte Teil ist, dass wir nicht dazu neigen, uns aus unseren Routinen herauszuwagen. Diese Routine hält Änderungen konsistent und Überraschungen auf ein Minimum. Das Letzte, was ein Systemadministrator tun kann möchte einen anderen Systemadministrator sagen hören:"Hoppla". Aber das ist eine ganz andere Geschichte. Das heutige Thema sind unbekannte Befehle. Sechs unbekannte Befehle, um genau zu sein. Ich denke, diese werden Ihnen gefallen, weil sie nützlich sind und außerhalb des peripheren Blickfelds der meisten Systemadministratoren liegen. Sie werden in alphabetischer Reihenfolge angezeigt.
[Das könnte Ihnen auch gefallen: 11 Linux-Befehle, ohne die ich nicht leben kann]
1. ac (Buchhaltung)
Der Benutzerabrechnungsbefehl ac
, gibt die Sysadmin-Verbindungszeitstatistik für alle Systembenutzer an, wie sie aus /var/log/wtmp
gelesen werden Datei. Dies ist nützlich, wenn ein Systemadministrator oder Manager die Verbindungszeit eines Nutzers auf einem System protokollieren möchte. Natürlich wird nur die Konnektivität und nicht die Aktivität verfolgt. Gehen Sie also nicht davon aus, dass ein Nutzer, der sechs Stunden lang als verbunden angezeigt wird, tatsächlich die gesamten sechs Stunden an einer bestimmten Aufgabe gearbeitet hat.
Jeder Benutzer kann ac
ausführen Befehl. Die nützlichsten Optionen dafür sind -dp
. Das -d
Option zeigt "Tagessummen" der Verbindungszeit an. Das -p
Option bietet Verbindungsstatistiken pro Benutzer. Sie können die Optionen einzeln oder kombiniert verwenden, um eine detailliertere Analyse zu erhalten.
$ ac -d
Apr 21 total 8.16
Apr 26 total 119.99
Apr 27 total 18.41
Today total 0.06
$ ac -p
bob 2.28
root 140.48
khess 3.87
total 146.62
$ ac -dp
root 8.16
Apr 21 total 8.16
root 119.99
Apr 26 total 119.99
root 12.33
bob 2.28
khess 3.80
Apr 27 total 18.41
khess 0.12
Today total 0.12
Wie Sie sehen können, ist der ac
Der Befehl bietet Ihnen einige interessante und nützliche Informationen zur Konnektivität. Die aussagekräftigste Statistik aus der obigen Anzeige ist, wie viel Verbindungszeit der Root-Benutzer protokolliert hat. Die Folgen sind, dass sich ein Systemadministrator während seiner Abwesenheit bei einem System angemeldet hat oder dass es eine Sicherheitsverletzung gegeben hat. In beiden Fällen muss die Situation weiter untersucht werden.
2. delv
Elf, zwölf, graben und tauchen oder so geht der Kinderreim. Es scheint zu passen, dass dig
und delv
sind beide DNS-bezogen, also gehe ich damit. Die delv
Der Befehl bezieht sich auf dig
und nslookup
aber vertieft weiter in den DNS-Eintrag hinein, indem Sie eine DNS-Abfrage nicht nur senden, sondern auch validieren.
Sie werden wahrscheinlich viele nicht signierte Antworten erhalten Nachrichten in Ihren Antworten. Wenn eine DNS-Zone keine DS-Einträge enthält (erforderlich, wenn (DNS-Sicherheit) DNSSEC aktiviert ist), wird davon ausgegangen, dass es sich um nicht signiertes DNS und nicht um DNSSEC handelt. Antworten werden als vollständig validiert, unsigniert oder ungültig angegeben. Wenn Sie in Ihrer Abfrage keinen DNS-Server angeben, delv
verwendet die in Ihrer lokalen /etc/resolv.conf
. Wenn ein Datensatz ungültig ist, delv
normalerweise gibt einen Grund an, warum der Datensatz ungültig ist.
Ich behaupte nicht, alle Details von DNSSEC oder delv
zu kennen , ich weiß nur für diejenigen, die es wissen müssen, es ist ein sehr nützlicher Befehl. Hier sind drei Beispiele für praktisches delv
Verwendungszweck. Das erste ist ein Beispiel für eine vollständig validierte Domain, dnsworkshop.org.
$ delv dnsworkshop.org mx +multi
; fully validated
dnsworkshop.org. 3600 IN MX 10 smtp5.strotmann.de.
dnsworkshop.org. 3600 IN MX 200 smtp3.strotmann.de.
dnsworkshop.org. 3600 IN RRSIG MX 8 2 3600 (
20210530204044 20210430195221 63654 dnsworkshop.org.
t+sjQNNTOD0q3cCAqUlmzs2OaRapez++9HnjQ0zbYYP7
go3pu6xUjFmGP1OrDhI+Udhfma1BGxqmHTwHo7UotXDx
S9emNuDZVESV6D07HxHbhNqFYjt2jHc8dpLtKjAOmWpA
Lf8fhHRjfNpkng5zoTBKLmghWlLnBPpXy0p6gU8= )
Die zweite, eine unsignierte, die vielleicht häufiger zu sehen ist:
$ delv pbs.org mx +multi
; unsigned answer
pbs.org. 300 IN MX 10 mxb-00303201.gslb.pphosted.com.
pbs.org. 300 IN MX 10 mxa-00303201.gslb.pphosted.com.
Die dritte ist ein Beispiel für eine "geparkte" Domain.
$ delv sillygoose.org mx +multi
;; resolution failed: ncache nxrrset
; negative response, unsigned answer
; sillygoose.org. 300 IN \-MX ;-$NXRRSET
; sillygoose.org. SOA ns1.namefind.com. dns.jomax.net. 2019022600 28800 7200 604800 300
Bitte zögern Sie nicht, delv
zu erkunden weiter für all Ihre DNS- und DNSSEC-Anforderungen.
3. Verzeichnis
Nein, das ist keiner meiner schlechten Dad-Witze. Das dir
Befehl ist echt. Ja, es ist wirklich eine Kopie des ls
Befehl, aber es ist für diejenigen unter Ihnen, die versehentlich dir
eingeben statt ls
weil Sie mit der Microsoft Windows-Befehlszeile gearbeitet haben und die Gewohnheit nicht ablegen können.
$ ls -la /usr/bin/dir
-rwxr-xr-x. 1 root root 143368 Apr 14 2020 /usr/bin/dir
$ ls -la /usr/bin/ls
-rwxr-xr-x. 1 root root 143368 Apr 14 2020 /usr/bin/ls
Und nein, es ist kein Hardlink. Die beiden Befehle haben unterschiedliche Inode-Nummern. Bitte testen Sie das, wenn Sie mir nicht glauben.
4. dos2unix
Hier ist ein weiterer Befehl, der versucht, bei der plattformübergreifenden Kompatibilität zu helfen. Mir ist es öfter passiert, als ich zählen kann, dass ich eine unter Microsoft Windows erstellte Datei erstelle oder erhalte, die anscheinend fehlschlägt, wenn ich sie unter Linux verwende. Textdateien haben oft unsichtbare "Steuerzeichen" am Ende der Zeilen, die das Parsen unter Linux verhindern. Hier ist die dos2unix
Kommandant eilt herein, um solche Dinge zu reparieren. Dos2unix
entfernt diese ^M und ^V Steuerzeichen am Ende von Zeilen, die Sie möglicherweise sehen, wenn Sie vi
/vim
eine Datei. Sicher, Sie können sie entfernen, wenn Sie wissen, wie man solche Zeichen global durch vi
ersetzt , aber ansonsten tut es weh.
one^M^V
two^M^V
three^M^V
four^M^V
five^M^V
oder
one^M
two^M
three^M
four^M
five^M
Diese "Steuerzeichen" werden oft in einer anderen Farbe angezeigt, die ich hier nicht reproduzieren kann. Die dos2unix
Befehlsstreifen diese für Sie. Bevor ich es entdeckte, musste ich hineingehen und sie manuell mit einem globalen Ersetzungsmakro entfernen oder sed
verwenden auf der Kommandozeile.
5. falten
Die fold
Der Befehl ist neu für mich, aber nützlich für diejenigen von uns, die dazu neigen, sehr lange Codezeilen oder Dokumentationen in eine Datei zu schreiben. Dieser Befehl hat einen einzigen Zweck:„Jede Eingabezeile so umbrechen, dass sie in die angegebene Breite passt (von der man-Seite zum Falten).“ Mit anderen Worten, wenn Sie in einem Anzeige- oder Content-Management-System (CMS) eine Beschränkung von 80 Zeichen haben, können Sie die Breite einer Datei durch Falten anpassen es beim 80. Zeichen. 80-Zeichen-Faltung ist die Standardeinstellung.
$ cat test.txt
This is a folding test.
obomb9jdf;amfd;asmf;dasjpsdaoddsofdsfmdsfmdsofsdjsdmfl.dsfmsdhsdlfsdlfjmds.fmsd.fndsdjdsf;djs;fmdslfmdslfm.dsfsl
$ fold test.txt
This is a folding test.
obomb9jdf;amfd;asmf;dasjpsdaoddsofdsfmdsfmdsofsdjsdmfl.dsfmsdhsdlfsdlfjmds.fmsd.
fndsdjdsf;djs;fmdslfmdslfm.dsfsl
Die fold
Der Befehl schreibt die Datei nicht neu. Wenn Sie cat test.txt
ausführen , sieht die Ausgabe genauso aus wie bei cat
Befehl oben tut. Um die gefaltete Datei neu zu schreiben, müssen Sie sie auf einen Dateinamen umleiten.
$ fold test.txt > folded.txt
$ cat folded.txt
This is a folding test.
obomb9jdf;amfd;asmf;dasjpsdaoddsofdsfmdsfmdsofsdjsdmfl.dsfmsdhsdlfsdlfjmds.fmsd.
fndsdjdsf;djs;fmdslfmdslfm.dsfsl
Wenn Sie den Standardwert von 80 Zeichen nicht verwenden möchten, können Sie mit -w
eine Breite wie z. B. 50 angeben Option.
$ fold -w 50 test.txt
This is a folding test.
obomb9jdf;amfd;asmf;dasjpsdaoddsofdsfmdsfmdsofsdjs
dmfl.dsfmsdhsdlfsdlfjmds.fmsd.fndsdjdsf;djs;fmdslf
mdslfm.dsfsl
Sie können die Anzahl der Bytes oder Zeichen zum Falten langer Zeilen angeben, wenn Sie keine Spalten mögen. Sie können auch bei Leerzeichen falten.
6. Zipcloak
Der zipcloak
Der Befehl verschlüsselt den Inhalt von ZIP-Dateien. Der Befehl ist einfach zu bedienen und funktioniert ohne Probleme oder Drama. Mit Problemen und Drama meine ich, dass Sie nicht viele Optionen bereitstellen oder sich um komplexe Syntax kümmern müssen, um die Arbeit zu erledigen. Sie zipcloak
einfach eine Datei, geben Sie ein Passwort ein, und Sie sind fertig. Sie können nur ZIP-Dateien verschlüsseln. Sie können zipcloak
nicht verwenden um beispielsweise tar-Dateien zu verschlüsseln.
$ zipcloak zipfile.zip
Enter password:
Verify password:
encrypting: eight
encrypting: five
encrypting: four
encrypting: nine
encrypting: one
encrypting: seven
encrypting: six
encrypting: ten
encrypting: three
encrypting: two
$ ls
eight five four nine one seven six ten three two zipfile.zip
Wenn Sie die Datei entpacken, werden Sie nach dem Passwort gefragt, das Sie beim Verschlüsseln des Zip-Archivs verwendet haben.
$ unzip zipfile.zip
Archive: zipfile.zip
[zipfile.zip] eight password:
extracting: eight
extracting: five
extracting: four
extracting: nine
extracting: one
extracting: seven
extracting: six
extracting: ten
extracting: three
extracting: two
Wie Sie sehen können, zipcloak
ist einfach zu bedienen und funktioniert ohne Probleme.
[ Lernen Sie die Grundlagen der Verwendung von Kubernetes in diesem kostenlosen Spickzettel. ]
Abschluss
Ich hoffe, Sie finden diese sechs Befehle genauso nützlich und praktisch wie ich. Nein, ich verschlüssele nicht jeden Tag eine gezippte Datei, ich muss nicht oft eine von Windows erstellte Textdatei in eine Unix-kompatible konvertieren, und ich muss eine Datei sicherlich nicht falten, aber einmal oder zweimal im Jahr, aber wenn ich diese Dienste brauche, brauche ich sie. Und ich brauche sie, um störungsfrei zu sein, was diese sind. Es gibt nicht eine Menge Optionen für keinen von ihnen, noch sind sie in irgendeiner Weise umständlich. Diese sechs Befehle eignen sich hervorragend, um sie Ihrer persönlichen Sysadmin-Toolbox hinzuzufügen.