Welche Tools sollten Sie als Windows / Linux-Sysadmin unbedingt kennen? [geschlossen]

17

Welche Tools / Dienstprogramme sollten Sie unbedingt kennen, wenn Sie als Linux- oder Windows-Sysadmin arbeiten?

Ich denke zum Beispiel an GNU / screen , das Sie benötigen, wenn Sie auf Linux-Servern arbeiten.

paulgreg
quelle
+1 für GNU / Screen - Ich habe es diese Woche gerade erst "entdeckt" ...
David Heggie
Sprechen Sie über Software- oder Hardware-Tools?
dance2die
Ich habe über Software nachgedacht, aber Hardware ist auch nützlich. Ich denke, ich werde diesen Beitrag als CW umwandeln, um alle Tools aufzulisten.
Paulgreg

Antworten:

25

vi - Ich weiß, dass es nicht jedem gefällt, aber es wird so ziemlich auf jedem * nix-Server sein, auf den Sie stoßen, und wenn alles andere kaputt ist, müssen Sie die Konfigurationsdateien bearbeiten. Ich würde aus den gleichen Gründen auch csh und sh vorschlagen

Vagnerr
quelle
4
Eigentlich vim, aber immer die vanilla vi-Befehle zu kennen, ist nützlich für Installationen, bei denen kein vim installiert ist.
Rob Wells
5
Ich denke, dieser Beitrag hatte ein viel größeres Potenzial für andere Antworten. Ich denke, dies ist etwas zu früh als Antwort markiert ...
dance2die
ich ziehe vi dem vim vor und versuche es so oft wie möglich zu benutzen. : P
Roy Rico
34

Als Windows-Sysadmin müssen Sie unbedingt mit SysInternals vertraut sein . Diese sind sowohl für die Programmierung als auch für die Diagnose des Maschinengeschehens von unschätzbarem Wert.

Eddie
quelle
2
Absolut - diese Werkzeuge haben mir mehr als einmal den Hals gerettet.
Keithius
Oh, ich dachte, er würde die sysinternen Bücher empfehlen.
Pacerier
29

PuTTY : Ein großartiger kostenloser SSH-Client für Windows. Fast überall, wo ich gearbeitet habe, wurde dies verwendet, um eine Verbindung zu Unix-Servern von Windows aus herzustellen.

Jon Skeet
quelle
3
Ich verwende PuTTY, wenn ich den Computer einer anderen Person verwende, um mich remote anzumelden. Aber auf Computern, die ich regelmäßig benutze, muss ich Cygwin / X installieren. Es gibt keinen Ersatz dafür, dass ein X-Client auf Ihrer eigenen Box angezeigt wird.
Jon Ericson
2
+1, PuTTY besteht zu 99,98% aus reinem Win.
Avery Payne
Nur um hinzuzufügen. Viele Leute kennen und lieben Kitt. Ich liebe es, ihnen auch die Verwendung von Pageant vorzustellen. Aus irgendeinem Grund hatten 75% der Personen, die mit der Verwendung von Putty begonnen hatten, keine Ahnung, dass Pageant existiert, bis ich sie beim Einrichten ihres öffentlichen / privaten Schlüsselpaars begleitete. Jetzt können sie nicht glauben, dass sie es vorher nicht hatten.
Zak
Schauen Sie sich auch KiTTY kitty.9bis.net und MobaXterm stackoverflow.com/questions/40453/…
Vadzim,
17

Alt-Text

Vergessen Sie nicht, dass ein Sysdamin physisch mit seinen Computer-Boxen umgehen muss!

Sie müssen sicherstellen, dass Sie mindestens eine haben

  1. Philips Kopfschraubendreher
  2. Standard (Flachkopf) Schraubendreher
  3. Tweesers (um die Schrauben aufzunehmen, die in einen dunklen, versteckten Fleck auf deinem Mobo gefallen sind)
  4. Ersatz-SATA-Kabel
  5. Ersatz-Netzwerk-RJ45-Kabel (und Cross-Over-Kabel)
  6. Druckluft -> den ganzen Staub loswerden.

Ein Typ schreibt auch über die 10 wichtigsten Dinge, von denen er / sie glaubt, dass sie jeder in seiner Werkzeugkiste haben sollte.

Pure.Krome
quelle
Eigentlich glaube ich, dass viele Sysadmins gelebt haben, ohne jemals physisch werden zu müssen.
Pacerier
14

Scripting.

Ich habe gelernt, dass sogar die Windows-Standard-Befehls-Shell wirklich nützlich sein kann. Es ist nicht erforderlich, PowerShell oder cygwin zu installieren, um eine angemessene Skriptfunktionalität zu erhalten, insbesondere wenn die Skripts auf Clientcomputern bereitgestellt werden sollen.

macbirdie
quelle
2
Ich stimme der Wichtigkeit von Skripten zu, aber ich würde nicht zustimmen, dass man anständige Skripte erstellen kann, ohne Cygwin, Powershell, Perl oder etwas in dieser Richtung zu installieren. Batch-Dateien sind ein frustrierender Witz im Vergleich zu einer echten Skriptsprache mit vollem Funktionsumfang.
Christopher Cashell
2
Natürlich ist eine voll funktionsfähige Skriptsprache besser als bat-, cmd- oder vbs-Skripts. Ich sage nur, dass die integrierten Windows-Skripttools für überraschend viele Aufgaben ausreichen, insbesondere wenn nichts Besseres zur Hand ist. Es ist wie "'Verwenden wir reguläre Ausdrücke!' - Jetzt hast du zwei Probleme "zu sagen.
Macbirdie
7

Windows-Tools:
Beim kürzlich erfolgten Debuggen eines Multicast-Problems stellte ich fest, dass NMap für das Debuggen des Netzwerkverkehrs unglaublich nützlich ist. Wireshark war auch hilfreich.

Chris Marasti-Georg
quelle
5
Beide auch unter Linux verfügbar (und auch sehr nützlich)
David Z
7

Es gibt eine Menge kleiner Unix / Linux-Tools, die hilfreich sind

grep, strace, GNU Screen, locate, rsync, sed, awk und tripwire sind ebenfalls sehr interessant.

Die Liste geht wirklich weiter und weiter, ich bin mir sicher, dass ich weit mehr vergessen habe, als hier aufzulisten. Erfahren Sie auch, wie Sie diese Tools wie gewünscht konfigurieren, z. B.. * Rc-Dateien. Dies wird sie alle so viel nützlicher machen. Hier ist zum Beispiel meine .screenrc-Datei, da Sie anscheinend an screen interessiert sind.

1 startup_message off
2 hardstatus alwayslastline
3 hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{=kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B}%Y-%m-%d %{W}%c %{g}]'
4 
5 # Window numbering starts at 1, not 0.
6 bind c screen 1 
7 bind 0 select 10
8 
9 # Default screens
10 screen -t shell1        1
11 screen -t shell2        2
12 screen -t shell3        3
Devin
quelle
Können Sie sagen, was der Hardstatus-String erzeugt? Seien Sie nett, es hier zu sehen, anstatt das obige Gobbledegook zu dekodieren ...
Hamish Downer
sehr richtig! Es ist extrem kryptisch. Es unterteilt die Statuszeile in drei Teile. Links der Hostname, in der Mitte eine Liste aller Bildschirme mit Nummer und Name, der aktuelle Bildschirm ist hervorgehoben, rechts Datum und Uhrzeit. Es gibt dort auch viele verschiedene Farben.
Devin
6

Der perfekte Begleiter zu PuTTY für Windows-Benutzer, die Remote * nix-Maschinen für mich verwalten, ist WinSCP , ein perfekter, kleiner, einfacher und wirklich verwendbarer FTP-, SCP- und SFTP-Client.

David Heggie
quelle
5

Power Shell! Powershell ist eine fantastische Befehlsshell für Windows, die auf dem .NET-Framework basiert.

Eric Z Bart
quelle
5

Auf jeder Plattform sollten Sie mit den systemeigenen und beliebten Sicherungswerkzeugen vertraut sein. Nichts stört mich schlimmer als ein Sysadmin , der nicht weiß, wie man ein gutes Backup macht. Ein gutes Backup schützt Sie vor fast allen Fehlern, die Sie möglicherweise machen.

-ntbackup unter Windows, dd / tar unter Linux -Datenbank-Dump-Befehle -tftp zum Sichern von Switches / Routern / Geräten

Zoredache
quelle
5

Die Shell-Skriptwerkzeuge: bash / sh, awk, grep, head, tail, less, cat, sort, uniq, wc (und andere)

Mit Awk können Sie problemlos Protokolldateien oder andere Dateien analysieren, die für die Diagnose eines Problems von entscheidender Bedeutung sind. Einige Leute verwenden perldafür. Sie müssen nicht alles über eines der beiden Tools wissen, aber Sie sollten etwas wissen, damit Sie das Zugriffsprotokoll oder das http-Protokoll überprüfen und herausfinden können, ob etwas Ungewöhnliches vor sich geht.

Kombiniere awk mit sort, uniq, tail, grep und wc, um dir das Leben zu erleichtern.

Mischen Sie einige Shell-Skripte ein. Es ist super praktisch, Dinge wie zu können

for i in server1.example.com server2.example.com server3.example.com ; do
  xterm -e "ssh ${i} tail -f /var/log/message | grep something ";
done;

Auf diese Weise können Sie die Protokolle auf drei Servern überprüfen something. Mit solchen Tricks sparen Sie viel Zeit und das alles liegt an den Shell-Skriptwerkzeugen.

Mr. Shiny und New 安 安
quelle
Sie sollten dieses Juwel wissen: for i in server{1,2,3}.example.com ; do. Verknüpfungen wie diese sparen viel Tipparbeit.
Mogsie
5

ping traceroute / tracert netstat nslookup

setatakahashi
quelle
3
und nicht vergessen, Arp und Route drucken
Xn0vv3r
4

tail- Auf den meisten Linux / Unix-Systemen können Sie die letzten Zeilen einer Datei (oder das hintere Ende) anzeigen. tail -fMit dieser Option können Sie neue Zeilen anzeigen, die der Datei so hinzugefügt wurden, wie sie angezeigt werden.

Für Windows mag ich BareTail .

Simon Steele
quelle
Ich mag es weniger besser, tippe einfach "F" (Shift + F). less behält auch den "richtigen Dateischwanz" hinter den Inodes bei, was ein Problem ist, wenn Logfiles in dem Moment gedreht werden, in dem Sie es sich ansehen.
Serverhorror
Wenn Sie tail -F(im Gegensatz zu tail -f) verwenden, erhalten Sie ein Follow-by-Name-Verhalten anstelle von Follow-by-Inode.
Christopher Cashell
3

Dies ist wahrscheinlich nicht die Antwort, die Sie wollten, aber ich wollte nur einige Gedanken teilen. In der Regel geht es bei der Systemverwaltung nicht nur um die Tools, sondern auch um die von Ihnen verwendeten mentalen Rahmenbedingungen. Kurz gesagt: Wenn Sie wissen, welche Aufgaben Sie ausführen möchten, ist es ziemlich einfach, ein entsprechendes Tool zu finden.

Grundsätzlich gibt es einige Fragen, die der Systemadministrator über das System wissen muss:

  1. Was habe ich? (Hardware, Softwareinventur-Tools wie rpm, apt, lshw)
  2. Wie mache ich mich? (CPU, Speicher, Datenträgernutzung, Anwendungsnutzungstools wie top, vmstat, sar)
  3. Wie geht es mir in Zukunft? (Überwachungstools wie Nagios, Sabbix)
  4. Wie sicher möchte ich sein? (Firewall-Tools, Server-Hardening-Tools wie Iptables, Snort, IDs-Systeme, Sicherheitsmodule für Anwendungen)
  5. Was sollen meine Server tun? (Tools zum Verwalten von Anwendungen, z. B. Postfix, Qmail, Apache, Java, PHP usw.).
  6. Wie kann ich mein Leben leichter machen? (Tools, um Konfigurationsdateien zu versionieren, Konfiguration auf mehreren Servern bereitzustellen, unbeaufsichtigte Installationen)

Jetzt ist die persönliche Wahl der Werkzeuge .. persönlich.

Übrigens, die Antwort zu vi ist großartig!

m

Martynas Saint
quelle
2

Ein guter Redakteur. Egal welches, ich bin bestimmt nicht hier, um einen Flammenkrieg zu beginnen. Aber Sie müssen einen guten Editor lernen .

Ich benutze Emacs für so ziemlich alles. Vi (m) ist ein weiterer guter. Ich bin mir nicht sicher, was unter Windows am besten wäre, aber ich vermute, dass die Win32-Varianten der 2, die ich erwähnte, gut wären.

Gert M
quelle
Wie bereits erwähnt, ist vi auf jedem einzelnen Server verfügbar, sodass Sie wissen, dass dies von unschätzbarem Wert ist, wenn Sie im Hosting-Unternehmen arbeiten. Wenn Sie keine Verbindung zum Internet herstellen können, können Sie den Editor Ihrer Wahl nicht installieren. Vergewissern Sie sich daher, dass Sie die Konfigurationsdateien mit den verfügbaren Dateien bearbeiten können, und verwenden Sie vimtutor eine halbe Stunde lang (geben Sie vimtutor in die Befehlszeile ein). Obwohl Nano auch ziemlich universell ist, mit einer etwas geringeren Lernkurve.
Hamish Downer
2

Für Windows-Systemadministrator:

Cygwin . Manchmal muss nur eine kurze Textdatei erstellt grepwerden wc, awkoder etwas, das zu lange dauert, um als Skript geschrieben zu werden. Schnelle Web-Log-Scans mit grepund awkkönnen wirklich den Tag retten.

Spoulson
quelle
2

dmidecode - Hervorragend geeignet , um alle Arten von Informationen über den Computer zu erhalten, auf dem er ausgeführt wird

strace - wenn Sie nicht herausfinden können, warum der von Ihnen ausgegebene Befehl nicht so funktioniert, wie Sie es wünschen

find - Es gibt mehr Optionen für diesen kleinen Befehl, als Sie wahrscheinlich kennen. Lies die Manpage und sei aufgeklärt

xargs - Sehr, sehr praktisch, wenn Sie mit Listen von Dingen umgehen müssen

rsync - Um Daten sicher und schnell in Ihrem Netzwerk zu übertragen, müssen Sie sich mit rsync und seinen verschiedenen Optionen auskennen

telnet - Der bescheidene Befehl telnet hat mir wahrscheinlich geholfen, im Laufe der Jahre mehr Netzwerkverbindungsprobleme zu diagnostizieren als jeder andere Befehl

nmap - außer vielleicht nmap

nc - netcat ist großartig, um schnelle Server einzurichten, um zu sehen, was Clients versuchen, oder sogar für "telnet" unter Verwendung von udp. Lesen Sie die Tutorials, um zu sehen, wie leistungsfähig es wirklich ist

openssls s_client Telnet über eine sichere Verbindung zu https-Servern, um die Verrücktheit zu diagnostizieren.

Ich bin sicher, dass es noch eine Tonne mehr gibt, an die ich mich irgendwann erinnern werde. Schau mal nach Updates ;-)

Matt Simmons
quelle
1

Ich werde ein großer Fan von DTrace, obwohl es derzeit nicht für Windows verfügbar ist.

Milner
quelle
Gibt es Dtrace für Linux? Wie bekommt man überhaupt Dtrace?
Devin
1
Nicht, dass mir das bewusst wäre, aber systemtap [ sourceware.org/systemtap/] hat eine Beta, die auf meiner Liste der Dinge steht , mit denen ich spielen möchte . Es sieht so aus, als würde es ähnliche Dinge tun wie DTrace, aber für Linux.
Milner
1

Ich frage mich, dass niemand VNC erwähnt hat .

Xn0vv3r
quelle
+1 hast du gerade getan. :) Immer noch brauchbar und brauchbar, wie es war, als es zum ersten Mal erschien.
Avery Payne
Viele Sysadmins verwenden X nicht zur Verwaltung ihrer * nix-Server. Anstelle von VNC bevorzuge ich FreeNX.
Kumar
1

Ein paar, die ich normalerweise benutze:

ps : um die aktuell laufenden Prozesse zu sehen
wc : word count. Zeigt neue Zeilen, Wörter und Bytes an.
grep : find pattern. Übereinstimmung oder keine Übereinstimmung (inverse Übereinstimmung)
> zum Umleiten der Ausgabe in eine neue Datei oder >> zum Hinzufügen am Ende einer Datei.
| Befehle miteinander verketten. Ausgabe des ersten Befehls, der für den nächsten verwendet wird.
tee : Schreibt die empfangenen Eingaben in eine Datei und zeigt den Text auch auf dem Bildschirm an.

häufigste Kette, die ich benutze:
ps axe | grep mysql

Nico
quelle
1

Vergessen wir für Windows nicht NET und NETSH, Sie würden in Netzwerken ohne diese verloren gehen.

Don Zoomik
quelle
1

Einige Tools sind nicht obligatorisch, erleichtern aber das tägliche Leben:

  • ccze, um Protokolle in Farbe anzusehen
  • das moreutilsPaket (deb)
  • cfcat, um Konfigurationsdateien ohne Kommentare anzusehen
  • wget und wie man seine Ausgabe umleitet
SamK
quelle
0

Unter Unix dmesg. Es sammelt alle Systemdiagnosemeldungen und zeigt sie auf dem Bildschirm an.

Und ja, es wurde von syslogd "obsolet", aber ich habe immer noch nicht herausgefunden, wie ich das syslogd-Setup dazu bringen kann, Dinge so gut anzuzeigen, wie es dmesg tut.

Gerechtigkeit für Monica Cellio
quelle
tail /var/log/kern.log
Teddy
0

Für mich muss es SSH und Putty sein: Es spart so viel Beinarbeit und Reisen, dass es nicht stimmt, und es gibt kein Durcheinander mit den grafischen Einstellungen und kein Warten auf eine Bildschirmaktualisierung :-)

DutchUncle
quelle