Haben Sie allgemeine Regeln, auf die Sie zurückgreifen können, wenn Sie ein schwieriges Netzwerk-, Hardware- oder Softwareproblem beheben?
ZB: "Ich isoliere die Ursache des Problems, indem ich ein Peripheriegerät mit einem zweiten Computer teste" oder "Ich entferne so viel Hardware wie möglich, um das Gerät einzuschalten, und füge dann nacheinander Komponenten hinzu, bis ich das Problem reproduzieren kann". , etc.
troubleshooting
Benutzername
quelle
quelle
Antworten:
Nur eine Liste von Punkten, die ich für mich selbst aufgeschrieben habe, nachdem ich eine Weile mit einem Problem gekämpft hatte:
Es gab auch eine große Liste von Debugging-Regeln, die in PDF-Form mit Beispielen und Erklärungen für jede der Regeln vorliegen. Ich konnte das PDF nicht schnell finden, denke aber, dass dies ein Poster der Liste ist:
quelle
Wenn das Problem mit dem Internet zusammenhängt, liegt es wahrscheinlich am DNS.
Wenn das Problem schwer zu diagnostizieren ist, liegt es wahrscheinlich am RAM.
Wenn das Problem bei einer Windows-Workstation liegt, ist es wahrscheinlich am schnellsten, ein neues Image zu erstellen.
Wenn das Problem an einem Freitag auftritt, ist es wahrscheinlich etwas Ernstes.
quelle
Ich greife gerne auf die wissenschaftliche Methode zurück .
Von ( http://en.wikipedia.org/wiki/Scientific_method )
In der Regel versuche ich immer, meine Grundannahmen zu überprüfen. Hat es Strom, ist es eingesteckt, ist die Verkabelung in Ordnung? Es ist sehr ärgerlich, Stunden damit zu verbringen, ein Softwareproblem zu untersuchen, wenn Sie ein loses Kabel haben.
Ich finde es sehr wichtig, in der Phase der Hypothesenerstellung so viele mögliche Ursachen für das Problem zu finden, wie ich kann. Dann versuche ich, zuerst die zu testenden Ideen auszuwählen, basierend darauf, wie einfach der Test ist und wie wahrscheinlich die Idee ist.
Es ist auch wichtig, Hilfe zu bekommen. Wenden Sie sich an Ihre Kollegen, Lieferanten oder an denjenigen, der sich mit den betreffenden Systemen am besten auskennt, wenn Sie dazu in der Lage sind. Wenden Sie nicht viel Zeit auf, um ein Problem zu beheben, wenn jemand verfügbar ist, der Ihnen bei der Lösung des Problems helfen kann.
O'Reilly hat ein gutes Buch Network Troubleshooting Tools , das eine Reihe von Schritten enthält, die der wissenschaftlichen Methode sehr ähnlich sind. Ich fand das Buch sehr nützlich und empfehle es nachdrücklich. Das Buch geht viel detaillierter vor und enthält viele nützliche Tools.
Aus den Tools zur Netzwerk-Fehlerbehebung
Siehe auch:
quelle
(Diese Highlights sind aus dem Kapitel "Debugging" in "Die Praxis der System- und Netzwerkadministration" umschrieben. )
Zwei Dinge zu wissen:
Wissen Sie, wie die "feste" Version aussieht. Vorzugsweise können Sie einen Befehl ausführen, der eine bestimmte Ausgabe liefert, wenn die Dinge funktionieren. Zum Beispiel: Ich versuche herauszufinden, warum SSH nach einem Passwort fragt, wenn ich die Schlüssel richtig eingerichtet habe (oder wie ich dachte). Mein Test lautet also: "ssh servername uptime" und es sollte funktionieren, ohne nach einem Passwort zu fragen.
Beschreiben Sie das Problem auf der richtigen Ebene. Ein Benutzer, der sich beschwert, dass er keinen Ping an einen Server senden kann, sollte Sie nicht zum Ausführen und Reparieren des Servers schicken. Die Person hat nicht die Aufgabe, den ganzen Tag herumzusitzen und eine Maschine anzupingen. Sie möchten eine Aufgabe erledigen, beispielsweise die Verwendung des Computers als DNS-Server. Beispiel: Ein Benutzer hat sich einmal beschwert, dass er eine Maschine nicht auf halbem Weg um die Welt pingen kann. Ich verbringe den Tag damit, Sysadmins in diesem Teil des Unternehmens aufzuspüren, um herauszufinden, was mit dieser Maschine nicht stimmte. Es wurde stillgelegt und sie waren in Panik, weil sie dachten, sie hätten die falsche Maschine ausgeschaltet. Ich nahm Kontakt mit dem Benutzer auf und sagte: "Was möchten Sie außer dem Pingen dieses Computers damit tun?" Es stellte sich heraus, dass er einen bestimmten Auftrag ausführen wollte, und wenn er den richtigen Vorgang ausgeführt hätte, wären seine Aufgaben automatisch auf die Ersatzmaschine umgeleitet worden. Ich hatte meinen ganzen Tag und die Zeit der örtlichen Sysadmins verschwendet. Ein weiterer Grund, warum "Ich kann nicht pingen" nicht zum Testen geeignet ist: Oft sind Firewalls so konfiguriert, dass Ping-Pakete verworfen werden, andere Pakete jedoch durchgelassen werden. Testen Sie, was Sie durchmachen möchten.
Zwei Strategien:
Additiv: Fügen Sie weitere Komponenten hinzu, bis das Problem auftritt. Das Letzte, was Sie hinzugefügt haben, ist das Problem. Beispiel: Webbrowser können nicht mit einem Server kommunizieren. Zwischen dem Server und dem Benutzer befinden sich ein Lastenausgleich, eine Firewall, ein Cache und der lokale Webproxy des Benutzers. Versuchen Sie zuerst, Anfragen direkt an den Server zu senden, dann über die LB an den Server, dann über die Firewall an die LB an den Server usw. usw., und fügen Sie jedes Mal eine Komponente hinzu.
Subtraktiv: Entfernen Sie die Komponenten so lange, bis das Problem behoben ist. Das letzte, was Sie entfernt haben, war das Problem: Beispiel: Ein Computer mit Dutzenden von Karten bootet nicht. Entfernen Sie die Karten so lange, bis die Maschine hochfährt.
Zwei kleine Pechvögel:
Vergiss alles, was ich gesagt habe. Das Problem wird durch die letzte am System vorgenommene Änderung verursacht. (Dies funktioniert in 99% der Fälle. Das Problem ist, dass Sie in 99% der Fälle nicht wissen, was die letzte Änderung tatsächlich war.)
Wenn alles andere fehlschlägt, suchen Sie nach dummen Dingen. http://whatexit.org/tal/mywritings/dumb-things-to-check.html Beispiel: Ein verrücktes Problem konnte einfach nicht erklärt werden. Dann haben wir die Konfigurationsdatei überprüft: Ein Benutzer hat sie bearbeitet, indem er sie auf eine Windows-Box kopiert, bearbeitet und dann zurückkopiert hat. Es hatte jetzt ein ^ M am Ende jeder Zeile. Wir haben es nie bemerkt, weil unser Texteditor diese Tatsache verborgen hat. Leider verwandelte die Software, die die Konfigurationsdatei las, diese ^ Ms in einen ununterbrochenen Raum, der Unmengen anderer Prozeduren vermasselte.
quelle
Allgemeine Praktiken, an die ich mich während des gesamten Prozesses erinnere:
Während der Fehlerbehebung definiert hier meine grundlegende Methodik:
quelle
Einstellungen, die ich versuche und halte:
Diese Einstellungen sind hilfreich für mich - sie halten mich davon ab, meine Arme in die Luft zu werfen, etwas "Bizarres" zu erklären und dann aufzugeben oder unglücklich zu werden, weil es sich "unlösbar" anfühlt.
Möglichkeiten zur Fehlerbehebung:
Der Prozess der Fehlerbehebung:
Das Internet funktioniert nicht? Überprüfen Sie das Problem und stellen Sie fest, dass es sich um eine Website handelt, auf die sie nicht zugreifen können. Schnelltests beinhalten ihre Internetverbindung (funktioniert), wird sie für mich geladen (nein). Schnelle Tests deuten darauf hin, dass es sich um die Site handelt. Nachdem ich gesehen habe, dass das Problem bei mir auftritt, habe ich die Wahrscheinlichkeit schnell von ihrem PC, Browser, DNS, der Office-Firewall des Benutzerkontos usw. verdrängt.
Also wird die Seite nicht geladen, was nun? Das ist noch nicht behebbar, suchen Sie also nach Orten, um das Problem in einen kleineren zu zerlegen. Ist der Server eingeschaltet? Pingt es? funktioniert DNS? Ja. Antwortet der Dienst auf Port 80? Läuft der Dienst? Fängt es an? Gibt es Fehler in den Ereignisprotokollen? Ja! Was sagen Sie?
Dies ist eine effiziente und schnelle Fehlerbehebung, da unablässig darauf geachtet wird, den Umfang des Problems einzugrenzen. Wenn ich den Bericht akzeptiere, dass das Internet nicht funktioniert, würde ich fälschlicherweise annehmen, dass die Verbindung fehlschlägt. Wenn ich mein erstes Anblick akzeptiere, dass es nicht für sie geladen wird, würde ich Zeit auf ihrem Computer verschwenden, weil ich denke, dass es ein Fehler ist.
Teile so groß wie möglich aus "Dingen, die es nicht geben kann".
Verstehe das System. Je mehr Allgemeinwissen ich über ein System habe, desto einfacher wird es. Wenn ich ein schwaches Verständnis habe, sind Probleme einschüchternder, schwieriger und langsamer und führen eher zu einer Problemumgehung als zu einer Behebung oder zu einer großen, blöden, langsamen Behebung (Neuinstallation) als zu einer kleinen, präzisen chirurgischen Behebung.
quelle
Im Allgemeinen frage ich "Was hat sich geändert, das dieses Problem verursacht haben könnte"? Die meisten Probleme werden durch Änderungen an als funktionierend bekannten Konfigurationen verursacht. Wenn Sie herausfinden können, wer die Änderung vorgenommen hat, erhalten Sie normalerweise Ihre Antwort.
quelle
Ich denke, es ist eine Fähigkeit, keine Wissenschaft. Es gibt Zeiten, in denen Sie den falschen Weg einschlagen, aber zum größten Teil:
Mein Chef rief mich einmal mit einem "leitenden" Techniker am Telefon an - er sagte mir, er habe einen Server, der keine Verbindung herstellen könne, und er habe versucht, das Kabel zu wechseln, aber immer noch keine Freude. Im Hintergrund war ein Piepton zu hören wie bei einer batteriebetriebenen USV. Ich fragte ihn, ob er Aktivität auf dem Schalter sehen könne, er sagte nein. Ich fragte ihn, ob das Piepen von der USV kommt, er sagte ja, ich fragte ihn, ob er überhaupt Lichter im Rack sehen könne, er sagte nein ... Schau hinter deine Nase - es hilft!
quelle
Ich beginne damit, das Offensichtliche zu überprüfen. Gibt es eine Fehlermeldung, die das Problem erklärt? Ist alles richtig angeschlossen? Ich mag es nicht, mehrere Stunden damit zu verschwenden, Fehler zu beheben, die in wenigen Minuten hätten behoben werden können. Ich denke, es ist möglich, zu methodisch zu sein. Ich habe gesehen, wie Menschen einen ganzen Tag damit verschwendet haben, ein Problem zu reproduzieren, obwohl ich ihnen genau gesagt habe, wo das Problem liegt. Dafür bezahle ich sie nicht.
Wenn die Antwort nicht offensichtlich ist, stellen Sie einige Verdächtige auf und testen Sie diese zuerst. Erst nachdem Sie die wahrscheinlichen Verdächtigen getestet haben, sollten Sie die unwahrscheinlichen Verdächtigen testen. Dann können Sie so wissenschaftlich sein, wie Sie wollen.
quelle