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

5 Linux-Befehle, die ich verwenden werde

Die Linux-Systemverwaltung lässt sich am besten als die Automatisierung der Linux-Systemverwaltung beschreiben. Manchmal gehören diese Werkzeuge Ihnen und Ihnen allein. In anderen Fällen werden Dienstprogramme mit anderen in Ihrem Team geteilt, versendet oder als Service angeboten. Dies ergibt sich aus dem oberflächlichsten Verständnis der UNIX-Philosophie:Kleine, speziell entwickelte Tools zu verwenden und sie auf neue, leistungsstarke und unerwartete Weise zu verbinden. Dies können komplexe Befehle sein, die zu einzeiligen Skripts werden, die zu mehrzeiligen Skripts werden. Einige Skripte werden Sie behalten und teilen, andere werden Sie in Ihrer nächsten Kaffeepause vergessen.

[Das könnte Ihnen auch gefallen:Bash für die Automatisierung verwenden ]

Ich kann keine Phrasen wie UNIX-Philosophie herumwerfen ohne sich an eine Zeit zu erinnern, in der nicht alles Linux war, oder sogar als alle Linux-Systeme, für die man verantwortlich sein könnte, dieselbe Distribution waren. Das einzige Vertrauen, das ich in die Zukunft habe, ist, dass es anders sein wird. Daher sind einige historische Tricks für die Portabilität – vorwärts und rückwärts – fällig, insbesondere wenn sie Sie nichts kosten.

Das heißt, je mehr Standard-Tools ich kenne, desto mächtiger werden meine wegwerfbaren Befehle, desto schneller kann ich sie schreiben und desto schneller bekommen meine Kunden ihre eigentlichen Probleme gelöst.

Ich verbringe selten einen Monat, ohne eine neue Technik oder einen neuen Trick aufzuschnappen, während ich auf der Kommandozeile den Stil eines anderen schultersurfe. COVID-Zeiten und Fernarbeit erschweren dies, daher möchte ich Ken Hess dafür danken, dass er mich in fünf Befehle eingeführt oder mich an fünf Befehle erinnert hat, die ich nicht so gut kannte.

1. Bogen

Es ist sehr üblich, dass in Build-Skripten beispielsweise Pfade generiert werden müssen, die eine Plattform, eine Build-Umgebung, einen Yum-Repo-Pfad usw. beschreiben. Normalerweise würde ich uname -p verwenden um den Prozessortyp zu erhalten, aber arch ist schneller zu tippen und selbstdokumentierend. Danke!

GitHub hat viel Code in Form von:

ARCH=$(uname -m)

Dies könnte alles ersetzt werden durch:

ARCH=$(arch)

2. arpaname

Erst letzte Woche habe ich eine API programmiert, um PTR-Einträge zu erstellen. Es war in einer Ansible-Rolle für ein einigermaßen bekanntes IPAM, aber wenn ich einen Massenimport mit generischen DNS-Tools durchführen müsste, würde ich nsupdate verwenden . Dieser Befehl wäre sehr praktisch. Quick-Code-Beispiel:

[jwarnica@lappy ~]$ nsupdate <<EOF
update add `arpaname $ipaddr` 86400 IN PTR $(hostname -f).
send
EOF

Dies wäre einfach genug, um es innerhalb einer Schleife zu verwenden, wenn ich möglicherweise eine Reihe neuer IoT-Geräte, VMs oder eine Flotte von Laptops installieren muss und ihre Hostnamen/IPs bereits in einer einfachen CSV-Datei habe oder sie anderweitig generiert habe.

3. bc

Bash kann keine Fließkomma-Mathematik ausführen, daher sind zusätzliche Tools für die Skripterstellung erforderlich. Mit diesen Worten bc --expression brachte mich dazu, darüber nachzudenken, wie man dc skriptet , was natürlich möglich ist.

Ich werde die Details vergessen, bevor ich es benutze, aber ich werde mich für immer an dieses "ah-ha!" Moment, dass dc kann geskriptet werden.

Ich möchte zwar nicht wie ein Highschool-Mathematiklehrer klingen, aber es gibt Umgebungen, in denen man seinen Taschen-Supercomputer nicht zur Hand hat oder nicht einmal Zugriff auf einen Gnomenrechner hat. Oder Sie möchten sich einfach die fünf Sekunden sparen und das interaktive dc verwenden ohne die Hände von der Tastatur zu nehmen, um entweder die Maus oder das Telefon zu verwenden.

4. Dumpkeys

Einer meiner jährlichen Freiwilligentage macht die Ergebnisse für einen laufenden Staffellauf. Nach Jahren der Optimierung der dümmsten Dinge, die funktionieren, ist dies jetzt hauptsächlich die Dateneingabe von Zeiten. Mit einem Laptop auf meinem Schoß in einem Auto ist dies das Gegenteil von Ergonomie, aber ich könnte es zumindest mit einer Hand machen, indem ich den Ziffernblock abbilde . zu einem : . Innerhalb von X11, xmodmap war das Werkzeug für dieses Mapping. Obwohl es kaum eine Bowlingkugel ist, macht Kanada weiterhin Fortschritte in der Mensch-Computer-Interaktion.

10 Minuten pro Jahr einzusparen, ist kaum ein Grund, ein neues Tool zu lernen (oder doch? -- Red.). Das Zuordnen von Schlüsseln kann der Unterschied zwischen der Fähigkeit zur Eingabe und der Nichteingabe sein. Vielleicht ist die US-104-Tastatur an den meisten Orten der Welt nicht Standard und/oder die lokale Sprache ist kein Englisch ohne Akzent.

dumpkeys hat einen engen Freund namens loadkeys . Zusammen machen diese unbrauchbaren Konsolen nutzbar, und jeder Installer von Linux-Distributionen hat sich seit Jahrzehnten auf sie verlassen.

5. uname

Angeblich /proc wird von den Linux-Kernel-Entwicklern als stabil angesehen, und ich gebe /proc/version zu ist wahrscheinlich sehr stabil, aber ich vertraue ihnen nicht ganz. Ich verwende manchmal Systeme, die nicht das Linux-only /proc haben , ohnehin. Der uname Befehl, der Teil von POSIX ist, wird überall funktionieren.

Ich könnte diesen Befehl jetzt nutzlos finden, weil ich jetzt über arch Bescheid weiß , aber es ist immer noch ein goto-Befehl, nur um zu überprüfen, wo ich bin. Und Scripting-Beispiele gibt es zuhauf. Ein zufälliges Beispiel aus Fedoras /etc/profile.d/qt.sh :

case `uname -m' in
   x86_64 | ia64 | s390x | ppc64 | ppc64le)
      QT_PREFIXES="/usr/lib64/qt-3.3 /usr/lib/qt-3.3" ;;
   * )
      QT_PREFIXES="/usr/lib/qt-3.3 /usr/lib64/qt-3.3" ;;
esac

[ Verbessern Sie Ihre Fähigkeiten zur Verwaltung und Verwendung von SELinux mit diesem hilfreichen Leitfaden. ] 

Abschluss

Sind diese Tools revolutionär? Gar nicht. Was sie sind, sind solide, allgegenwärtige Grundlagen für die tägliche Arbeit von Millionen und werden es noch Jahrzehnte lang sein. Daher lohnt es sich, diese Dienstprogramme im Hinterkopf zu behalten, wenn Sie sich das nächste Mal an ein Linux-System setzen.


Linux
  1. Debuggen Sie Linux mit ProcDump

  2. 5 Linux-Anfängerfehler

  3. 5 Linux-Befehle zur Fehlerbehebung im Netzwerk

  4. A bis Z Linux-Befehle

  5. Linux-Suchbefehle

Geben Sie Linux-Befehle in Großbuchstaben ein, um sie als Sudo-Benutzer auszuführen

So zeigen Sie Cheatsheets für Linux-Befehle mit z

Wenden Sie Tags auf Linux-Befehle an, um sie einfach aus dem Verlauf abzurufen

10 sehr dumme Linux-Befehle [einige davon tödlich]

Verwenden des Watch-Befehls unter Linux

Gewusst wie:Verwenden von lsof – 10 grundlegende Befehle zur Fehlerbehebung auf Ihrem Linux-Server