Dit document legt de verschillende opties uit die u kunt gebruiken om kerneproppen in Cisco IOS®-software in te schakelen.
Opmerking: Core dumps kunnen moeilijk te verkrijgen zijn. Alleen technisch personeel van Cisco dat toegang heeft tot broncode en gedetailleerde geheugenkaarten moet proberen de kerndumps te interpreteren. Op veel platformen kan het gebruik van de crashinfo functie ervoor zorgen dat core dumps overbodig worden. Raadpleeg Informatie ophalen uit het crashinfo-bestand voor meer informatie.
Cisco raadt kennis van de volgende onderwerpen aan:
De informatie in dit document is gebaseerd op de volgende software- en hardware-versies:
Cisco IOS-softwarerelease 12.0 en hoger
De informatie in dit document is gebaseerd op de apparaten in een specifieke laboratoriumomgeving. Alle apparaten die in dit document worden beschreven, hadden een opgeschoonde (standaard)configuratie. Als uw netwerk live is, moet u de potentiële impact van elke opdracht begrijpen.
Wanneer een router crasht, vergeet niet een kopie te verkrijgen van de gehele geheugeninhoud van de router, die bekend staat als een core dump. Uw technische vertegenwoordiger gebruikt de kerndump om de oorzaak van de crash te achterhalen. De router schrijft de geheugeninhoud aan de server vóór een herladen. Niet alle crashes produceren een core dump. Raadpleeg Typen crashes voor meer informatie.
Leg altijd de consolelogboeken vast wanneer de router probeert een kern te dumpen. De consolelogboeken geven informatie over de crash. Bovendien drukt de ROM-monitor (ROMMON) normaal gesproken informatie op de console (en alleen op de console) op het moment van de crash.
Waarschuwing: Core dumps zijn niet nodig om de meeste crashcases op te lossen. Het creëren van een kernstortplaats terwijl de router in een netwerk functioneert kan netwerkverrichting onderbreken. Gebruik de opdrachten in dit document alleen onder leiding van een vertegenwoordiger van de technische ondersteuning.
Er zijn vier basismanieren om de router op te zetten om een kerndump te genereren:
Via File Transfer Protocol (FTP)
Via Remote Copy Protocol (RCP)
Via een Flash disk
Via Trivial File Transfer Protocol (TFTP)
Elk van deze methodes gebruikt deze configuratiebevelen:
grootte van uitzonderingsgebied
Deze opdracht specificeert de grootte van het gebied voor de uitzonderingstijd-geheugenpool. De uitzondering-tijd geheugenpool wordt gebruikt voor het geval dat het procesgeheugen corrupt wordt. De grootte parameter wordt uitgedrukt in bytes en u kunt de grootte van 1024 tot 65536 bytes configureren.
exceptie core-file filename [compress]
Deze opdracht geeft een naam op voor het core dump-bestand, anders dan de standaardnaam. Gebruik de no form van deze opdracht om terug te keren naar de standaardnaam.
Raadpleeg voor meer informatie over de opdrachten in dit document de opdrachtreferentie-tool (alleen geregistreerde klanten).
Gebruik de opdracht regiogrootte uitzondering om een kleine hoeveelheid geheugen te definiëren die als reserve-pool kan worden gebruikt wanneer de processorgeheugen-pool beschadigd raakt. Dit helpt geheugenstoringen tijdens het core dump proces te voorkomen. De size parameter wordt uitgedrukt in bytes en u kunt de grootte van 1024 aan 65536 bytes, met een standaardwaarde van 16384 bytes vormen. Configureer de uitzondering regio-grootte als 65536 bytes om de kans op een succesvolle kerndump te vergroten.
Standaard wordt de processorgeheugen kern dump geschreven naar een bestand met de naam "hostname-core", waar hostname de naam is van de router, die de opdracht hostname Configuration definieert. Als de router I/O-geheugen (bijvoorbeeld Cisco 7200) heeft, kan er ook een I/O-geheugenkerndump worden gemaakt, die naar het bestand "hostname-coreomem" wordt geschreven.
Gebruik de uitzondering core-file opdracht om de standaard core dump filename te negeren. Als de bestandsserver een DOS FAT-bestandssysteem heeft, specificeer dan geen bestandsnaam langer dan zes tekens. Bijvoorbeeld, als u een router met "uitzondering core-file foobar" vormt, is de naam van het processorgeheugen van de core dump "foobar" en de naam van de I/O memory dump is "foobario" (genoeg om u een hint te geven dat u een I/O memory dump hebt).
Zorg ervoor dat er voldoende schijfruimte op de bestandsserver is om meerdere volledige core dumps te houden. U kunt core dump bestanden comprimeren met de optie comprimeren.
Opmerking: Comprimeer is automatisch van toepassing wanneer u core dump-bestanden schrijft naar de Flash disk. Als u RCP gebruikt, wordt de compressieoptie niet ondersteund.
Opmerking: File Transfer Protocol (FTP) is de aanbevolen methode om een core dump te configureren.
Om FTP te gebruiken om de router voor een kerndump te configureren, gebruikt u deze opdrachten:
ip ftp gebruikersnaam gebruikersnaam —Met deze opdracht wordt de gebruikersnaam voor FTP-verbindingen (File Transfer Protocol) geconfigureerd. Om de router te configureren om anonieme FTP te proberen, gebruikt u de no form van deze opdracht.
ip ftp wachtwoord wachtwoord —Met deze opdracht wordt het wachtwoord voor de FTP-verbinding geconfigureerd.
het protocol van de uitzondering ftp-Deze opdracht vormt het protocol dat voor core dump FTP wordt gebruikt.
uitzondering: 65536-Met deze opdracht wordt de grootte van het gebied geconfigureerd.
het ip-adres van de uitzonderingsstortplaats —Dit bevel vormt het ip adres van de server waarnaar de router de kernstortplaats in het geval van een neerstorting verzendt.
N.B.: Om netwerkcongestie te voorkomen, raadt Cisco u ten zeerste aan de router rechtstreeks aan te sluiten op de FTP-server, zonder tussenstop. Als u door een of meer tussenstappen moet gaan, moet u mogelijk de opdracht ip ftp source-interface gebruiken om aan te geven welke interface u moet gebruiken om toegang te krijgen tot de FTP-server. Zie Een router configureren om FTP-verbindingen te gebruiken voor meer informatie.
Als u de gebruikersnaam en het wachtwoord niet hebt ingesteld, probeert de router anoniem FTP.
Wanneer een vertegenwoordiger van Cisco technische ondersteuning u vraagt om core dump-bestanden, kunt u de core dump-bestanden naar Cisco verzenden via anonieme FTP. De FTP-server is ftp-sj.cisco.com en de directory is /inkomende.
Opmerking: de /inkomende map is onzichtbaar.
Stel de overdrachtmodus in op binair getal. Als de bestanden nog niet zijn gecomprimeerd, comprimeer ze dan met een gemeenschappelijk compressie-hulpprogramma, bijvoorbeeld gzip of zip.
Zorg er ook voor dat het crashinfo bestand, indien beschikbaar, samen met de core dump. Het crashinfo-bestand is beschikbaar als de hardware of software deze functie ondersteunt. Raadpleeg Informatie ophalen uit het Crashinfo-bestand voor instructies hoe u dit moet doen.
Zorg dat FTP eerst werkt. Gebruik dit voorbeeld:
c7500#copy running-config ftp: Address or name of remote host []? 172.18.125.3 Destination filename [c7500-confg]? Writing c7500-confg ! 2781 bytes copied in 0.944 secs
Gebruik deze opdrachten om RCP te gebruiken voor het configureren van de router voor een kerndump:
ip rcmd gebruikersnaam voor externe gebruikers-Met deze opdracht wordt de externe gebruikersnaam geconfigureerd voor gebruik wanneer u via Remote Copy Protocol (RCP) een externe kopie aanvraagt.
RCP—Deze opdracht configureert het protocol dat voor kerndumps wordt gebruikt als RCP.
uitzondering: 65536-Met deze opdracht wordt de grootte van het gebied geconfigureerd.
IP-adres van dump van uitzondering
Als u de gebruikersnaam niet hebt geconfigureerd, gebruikt de router zijn hostnaam als de gebruikersnaam voor RCP.
N.B.: Om netwerkcongestie te voorkomen, raadt Cisco u ten zeerste aan de router rechtstreeks aan te sluiten op de RCP-server, zonder tussenstop. Als u door een of meer tussenliggende poorten moet gaan, gebruikt u de opdracht ip rcmd-bron-interface om aan te geven welke interface u moet gebruiken om toegang te krijgen tot de RCP-server. Raadpleeg Een router configureren om rsh en rcp te gebruiken voor meer informatie.
Zorg ervoor dat RCP eerst werkt. Gebruik dit voorbeeld:
c7500#copy running-config rcp: Address or name of remote host []? 172.18.125.3 Destination username [c7500]? Destination filename [c7500-confg]? Writing c7500-confg ! 2781 bytes copied in 0.944 secs
Sommige routerplatforms ondersteunen de Flash-schijf als alternatief voor het lineaire Flash-geheugen of de PCMCIA-Flash-kaart. De grote opslagcapaciteit van deze Flash-schijven maakt ze een goed medium om een core dump op te nemen. Raadpleeg de Cisco IOS release Notes voor informatie over de routerplatforms en Cisco IOS-softwareversies die de Flash disk ondersteunen.
Opmerking: Wanneer u een kerndump in een Flash-schijf opneemt, moet u ervoor zorgen dat de Flash-schijf meer opslagcapaciteit heeft dan het DRAM-geheugen dat de kerndump veroorzaakt. Als u bijvoorbeeld een DRAM-geheugen van 128 MB hebt, moet de Flash-schijf een opslagcapaciteit hebben van meer dan 128 MB. Een groter geheugen van de flitsschijf is noodzakelijk om de kern correct te krijgen dump. Als er een geheugentekort op de Flash disk is, wordt de core dump niet gemaakt.
Om een Flash disk te gebruiken om een router voor een core dump te configureren, gebruikt u deze opdracht:
exception flash procmem|iomem|all device_name [:partition_number] !--- This command uses a Flash disk to configure the router for a core dump.
De show flitser alle EXEC opdracht maakt een lijst van de apparaten die u kunt gebruiken voor de uitzondering flitser opdracht.
Vanwege een beperking van de meeste TFTP-toepassingen dumpt de router alleen de eerste 16 MB van het kernbestand. Daarom, als het belangrijkste geheugen van uw router groter is dan 16 MB, gebruik geen TFTP. Raadpleeg Cisco IOS TFTP-client kan geen bestanden van meer dan 16 MB in grootte overdragen voor meer informatie.
Om TFTP te gebruiken om een router voor een kernstortplaats te vormen, gebruik deze bevelen:
uitzondering protocol tftp-Dit bevel vormt TFTP als protocol voor kernstortplaatsen.
65536 ter grootte van een uitzonderingsgebied
IP-adres van dump van uitzondering
TFTP is het standaardprotocol voor uitzonderingsprotocol.
Opmerking: om netwerkcongestie te voorkomen, raadt Cisco u ten zeerste aan de router rechtstreeks met de TFTP-server te verbinden, zonder tussenstop. Als u door een of meer tussenstappen moet gaan, gebruikt u de opdracht ip tftp source-interface om aan te geven welke interface u moet gebruiken om toegang te krijgen tot de TFTP-server.
Op basis van de gebruikte TFTP-server moet u mogelijk lege doelbestanden met de juiste rechten maken voordat de router naar deze bestanden kan schrijven.
Zorg ervoor dat TFTP eerst werkt. Gebruik dit voorbeeld:
c7500#copy running-config tftp: Address or name of remote host []? 172.18.125.3 Destination filename [c7500-confg]? ! 2781 bytes copied in 0.944 secs
Gebruik de configuratieopdrachten in deze sectie naast de opdrachten in de sectie Basisinstallatie.
Om sommige geheugenproblemen te zuiveren, kunt u de router veroorzaken om een kerndump te creëren, en reboot in het geval van schending van bepaalde parameters van de geheugengrootte. Gebruik deze uitzondering geheugen commando's om een core dump te starten:
uitzondering geheugen minimum grootte —Deze opdracht dwingt een crash als de hoeveelheid vrij processorgeheugen kleiner wordt dan de ingestelde drempel.
het fragment van het uitzonderingsgeheugen grootte-Dit bevel dwingt een neerstorting als de Cisco IOS software geen blok van het aangrenzende processorgeheugen kan toewijzen groter dan de gevormde drempel.
De parameter size wordt uitgedrukt in bytes en wordt standaard elke 60 seconden gecontroleerd.
Deze bevelen veroorzaken slechts de router om te rebooten wanneer de gevormde voorwaarden worden voldaan aan. Als u ook uitzonderingsdump of uitzonderingsflitser vormt, leidt de router eerst tot een kerndump. Deze opdrachten helpen bij het diagnosticeren van geheugenlekken.
In sommige gevallen vraagt de vertegenwoordiger van de technische ondersteuning u om debug sanity toe te laten wanneer u de core dump configureren. De opdracht debug sanity is een verborgen opdracht in de meeste Cisco IOS-softwarereleases en is soms nodig om geheugenbeschadiging, met name I/O-geheugenbeschadiging, te debuggen. Wanneer u debug sanity inschakelt, voert het systeem een sanity-check uit op elke buffer die is toegewezen en voert opnieuw een sanity-check uit wanneer de buffer wordt vrijgemaakt.
U moet de opdracht debug sanity uitgeven in geprivilegieerde EXEC-modus (of modus inschakelen). Hoewel deze opdracht enige CPU-capaciteit gebruikt, zuivert de zuiveringsstatus de functionaliteit van de router niet significant. Net als andere debug commando's, debug sanity wordt niet opgeslagen in de configuratie en overleeft dus geen reboot van het systeem.
Niet alle soorten crashes vereisen dat u debug sanity inschakelen. Gebruik debug sanity alleen wanneer uw technische ondersteuningsvertegenwoordiger u vraagt om deze opdracht in te schakelen.
Om sanity-controles uit te schakelen, gebruikt u de opdracht undebug sanity privileged EXEC.
Wanneer u de router voor kerndump hebt geconfigureerd, test u de installatie.
Cisco IOS-software biedt de speciale opdracht schrijfkern in geprivilegieerde EXEC-modus (of inschakelt modus) om de router een kerndump te laten genereren zonder opnieuw te worden geladen.
Indien geslaagd, zijn de core dump-bestanden de grootte van de respectieve geheugengebieden. Vergeet niet dat het gehele geheugengebied wordt gedumpt, niet alleen het geheugen dat in gebruik is.
De schrijf kern opdracht is ook handig in het geval van een router die niet functioneert, maar niet is gecrasht.
Revisie | Publicatiedatum | Opmerkingen |
---|---|---|
1.0 |
24-Jun-2008 |
Eerste vrijgave |