Freigeben über


Sicherungsprogramm ist nicht erfolgreich, wenn Sie ein großes Systemvolume sichern

Dieser Artikel bietet eine Lösung für das Problem, dass das Sicherungsprogramm nicht erfolgreich ist, wenn Sie ein großes Systemvolume sichern.

Gilt für: Windows Server 2012 R2, Windows 10 – alle Editionen
Ursprüngliche KB-Nummer: 304101

Symptome

Wenn Sie versuchen, eine Sicherung mithilfe von NTBackup.exe oder mithilfe eines Sicherungsprogramms eines Drittanbieters zu erstellen, das die NT Backup-API verwendet, wird die Sicherung möglicherweise nicht erfolgreich abgeschlossen. Dieses Verhalten kann auch auftreten, wenn Sie das Programm lokal auf dem Server ausführen. Darüber hinaus kann eines oder mehrere der folgenden Symptome auftreten:

  • Eine oder mehrere der folgenden Fehlermeldungen werden im Anwendungsprotokoll angezeigt:
    Fehlermeldung 1

    FEHLER 1450: Es sind nicht genügend Systemressourcen vorhanden, um den angeforderten Dienst abzuschließen.

    FEHLER 1450: / hex 0x5aa ERROR_NO_SYSTEM_RESOURCES

    Betriebssystemfehler 1450 Es sind nicht genügend Systemressourcen vorhanden, um den angeforderten Dienst abzuschließen.

    Fehler beim Schreiben auf "Gerät", status = 1450

    Fehlermeldung 2

    FEHLER 1130: Es ist nicht genügend Serverspeicher verfügbar, um diesen Befehl zu verarbeiten.

    FEHLER 1130/hexad 0x46a ERROR_NOT_ENOUGH_SERVER_MEMORY

    Sicherungs- oder Wiederherstellungsvorgang, der nicht ordnungsgemäß beendet wird.

  • Ereignis-ID 2020- und Ereignis-ID 2021-Meldungen können vom Serverdienst generiert werden.

    Hinweis

    In der Regel werden die Nachrichten Ereignis-ID 2020 und Ereignis-ID 2021 nicht angezeigt.

  • Wenn Sie das Hewlett-Packard (HP) OmniBack-Sicherungsprogramm ausführen, erhalten Sie möglicherweise eine Fehlermeldung, die der folgenden ähnelt:

    [81:78] C:\Ordnername\file.name

    57256 Bytes können bei offset 436176408(:1) nicht gelesen werden: ([1450]
    Es sind nicht genügend Systemressourcen vorhanden, um den angeforderten Dienst abzuschließen.).

  • Wenn Sie die Registerkarte Leistung im Windows-Task-Manager anzeigen, stellen Sie fest, dass der nicht auslagerte Kernelspeicher gering ist.

Hinweis

Möglicherweise erhalten Sie diese Fehlermeldungen aus Gründen, die nicht mit dem in diesem Artikel beschriebenen Problem zusammenhängen. Wenn Sie diese Fehlermeldungen nur erhalten, wenn Sie große Systemvolumes sichern, sind die beiden wahrscheinlichsten Ursachen, die in diesem Artikel beschrieben werden.

Um festzustellen, ob dieses Problem auftritt, starten Sie den Windows-Task-Manager, und klicken Sie dann auf die Registerkarte Leistung . Suchen Sie unten rechts den Bereich Kernelspeicher (K), und notieren Sie sich den Wert für Paged. Dieses Problem tritt möglicherweise in Microsoft Windows 2000 oder Microsoft Windows NT 4.0 auf, wenn dieser Wert ungefähr 160 Megabyte (MB) erreicht. Alternativ kann dieses Problem in Microsoft Windows Server 2003 auftreten, wenn dieser Wert 160 MB überschreitet. Wenn Sie den Registrierungsschlüssel für den Auslagerungspoolspeicher auf einen höheren Wert festgelegt haben, tritt dieses Problem erst auf, wenn ein wesentlich höherer Wert des Auslagerungspoolspeichers verwendet wird (das Problem kann auftreten, wenn die Speicherauslastung des ausgelagerten Pools etwa 80 Prozent des festgelegten Werts erreicht). Wenn Sie die gflags Einstellung für Pooltags aktiviert haben und sie das Hilfsprogramm Poolmon verwenden, wird eine höhere Verwendung des MmSt-Tags angezeigt. Es ist das Pooltag, das zum Zuordnen des Betriebssystemspeichers verwendet wird, der zum Nachverfolgen freigegebener Dateien verwendet wird.

Ursache

Die beiden Ursachen dieses Problems stehen im Zusammenhang. Die häufigere Ursache wird zuerst aufgeführt:

  • Es sind mehr Dateien geöffnet, als der Speichercache-Manager verarbeiten kann. Daher hat der Cache-Manager den verfügbaren Auslagerungspoolspeicher erschöpft.

  • Das Sicherungsprogramm hat versucht, eine Datei zu sichern, deren Größe größer ist, als die Sicherungs-API unter dieser Version des Betriebssystems zugreifen kann. Es hat das gleiche Ergebnis (d. a. der ausgelagerte Pool ist erschöpft).

    Hinweis

    Dieses zweite Problem tritt wahrscheinlich auf einem Microsoft Windows NT 4.0-basierten Computer auf.

Die Lösung für jedes Problem hängt davon ab, ob das Problem in Windows Server 2003, Microsoft Windows 2000 oder Windows NT 4.0 auftritt.

Lösung

Windows Server 2003 und Windows 2000

Wichtig

Dieser Abschnitt, diese Methode bzw. diese Aufgabe enthält eine Beschreibung der Schritte zum Bearbeiten der Registrierung. Durch die falsche Bearbeitung der Registrierung können schwerwiegende Probleme verursacht werden. Daher ist es wichtig, bei der Ausführung der folgenden Schritte sorgfältig vorzugehen. Für zusätzlichen Schutz sichern Sie die Registrierung, bevor Sie sie ändern. Sie können die Registrierung wiederherstellen, wenn ein Problem auftritt. Weitere Informationen zum Erstellen und Wiederherstellen einer Sicherungskopie der Registrierung finden Sie im folgenden Artikel der Microsoft Knowledge Base:
322756 Sichern und Wiederherstellen der Registrierung in Windows

Möglicherweise müssen Sie zwei Registrierungseinstellungen ändern. Ändern Sie immer die erste Einstellung. Abhängig von der Konfiguration Ihres Systems müssen Sie möglicherweise auch die zweite Einstellung ändern.

Registrierungseinstellung 1

  1. Klicken Sie auf Start, klicken Sie auf Ausführen, und geben im Feld Öffnen die Zeichenfolge regedit ein. Klicken Sie anschließend auf OK.

  2. Klicken Sie auf den folgenden Registrierungsunterschlüssel:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management

  3. Zeigen Sie im Menü Bearbeiten auf Neu, und klicken Sie anschließend auf DWORD-Wert.

  4. Geben Sie PoolUsageMaximum als Eintragsnamen ein, und drücken Sie dann die EINGABETASTE.

  5. Klicken Sie mit der rechten Maustaste auf PoolUsageMaximum, und klicken Sie dann auf Ändern.

  6. Klicken Sie auf Dezimal.

  7. Geben Sie im Feld Wertdaten den Wert 60 ein, und klicken Sie dann auf OK.

    Wichtig

    • Verwenden Sie 60 als Anfangswert. Wenn ihre Sicherung nicht erfolgreich ist, verwenden Sie 40 als Wert. Wenn dies nicht funktioniert, müssen Sie das Verhalten Ihres Sicherungsprogramms ändern, um den Bedarf an ausgelagerten Pools zu reduzieren. Wenn der Wert funktioniert, sollten Sie den Wert um ungefähr 25 Prozent erhöhen, bis die Sicherung nicht funktioniert. Wenn die Sicherung nicht erfolgreich ist, verwenden Sie die zweite Registrierungseinstellung, die in diesem Artikel beschrieben wird.
    • Stellen Sie sicher, dass der Wert für diese Registrierungseinstellung nicht größer als 60 ist.
    • Wenn Sie den Schalter /3GB verwenden, verwenden Sie 40 als anfängliche Einstellung. Beachten Sie, dass dieser Wert ein Prozentwert ist.
  8. Schließen Sie den Registrierungs-Editor.

  9. Restart your computer.

Da Sie diese Einstellungen während der stressigsten Sicherungen testen müssen, müssen Sie möglicherweise einen Monat warten, bis ein vollständiger Sicherungszyklus abgeschlossen ist, wenn Sie nicht sicher sind, welche Sicherung die meisten Ressourcen beansprucht. Aufgrund dieser Situation empfiehlt Microsoft, zuerst niedrige Werte zu testen. Weitere Informationen finden Sie, indem Sie auf die folgende Artikelnummer klicken, um den Artikel in der Microsoft Knowledge Base anzuzeigen:

312362 Server kann keinen Speicher aus dem ausgelagerten Systempool zuweisen.

Registrierungseinstellung 2

  1. Klicken Sie auf Start, klicken Sie auf Ausführen, geben Sie regedit in das Feld Öffnen ein, und klicken Sie dann auf OK.

  2. Klicken Sie auf den folgenden Registrierungsunterschlüssel:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management

  3. Zeigen Sie im Menü Bearbeiten auf Neu, und klicken Sie anschließend auf DWORD-Wert.

  4. Geben Sie PagedPoolSize als Eintragsnamen ein, und drücken Sie dann die EINGABETASTE.

  5. Klicken Sie mit der rechten Maustaste auf PagedPoolSize, und klicken Sie dann auf Ändern.

  6. Klicken Sie auf Hexadezimal.

  7. Geben Sie im Feld Wert den Wert FFFFFFFF ein, und klicken Sie dann auf OK.

    Wichtig

    • Wenn PagedPoolSize auf 0xFFFFFFFF (-1) festgelegt wird, wird der maximale Auslagerungspool anstelle anderer Ressourcen dem Computer zugewiesen. Dies ist in der Regel auf einem Domänencontroller oder einem Terminalserver erforderlich. Standardmäßig scheinen die meisten Windows 2000-Systeme auf eine ausgelagerte Poolgröße von 160 MB beschränkt zu sein. Sie können dies überprüfen, indem Sie die Kerneldebugger von der öffentlichen Website herunterladen und ein Kerneldump im Debugger öffnen, den Sie verwenden möchten. Der zu verwendende Befehl ist !vm . Dies zeigt z. B. einen ausgelagerten Pool von maximal 163840 KB an. Wenn Sie diesen Wert hinzufügen, werden die auf einem System verfügbaren Seitentabelleneinträge (Page Table Entries, PTEs) reduziert, und der ausgelagerte Pool wird in Windows 2000 auf maximal 343 MB erweitert. Die maximale Größe des ausgelagerten Pools kann in Windows Server 2003 auf einen größeren Wert erweitert werden.

      Die Standard- und maximal ausgelagerten Poolwerte für Windows Server 2003 sind viel größer als in Windows 2000. In der Regel sind die Windows Server 2003-Werte mindestens 50 Prozent höher als die in Windows 2000 gefundenen Werte. Diese größeren Werte machen es unwahrscheinlicher, dass das Problem auftritt, bei dem ausgelagerte Poolwerte zu dem in diesem Artikel beschriebenen Problem beitragen. Es ist jedoch weiterhin möglich, dass dieses Problem auftritt.

    • Dieser Wert schränkt die verfügbaren System-PTEs ein. PTEs sind eine weitere nicht verwandte Systemressource, die Ihr System verwendet. Diese Einstellung kann dazu führen, dass Ihr Betriebssystem unerwartet anhält und beim Start auf einem blauen Bildschirm einen Stoppfehler 0x3F anzeigt. Sie können dies mithilfe der Option Letzter als fehlerfreier Neustart im Systemneustartmenü oder in der Wiederherstellungskonsole wiederherstellen. Verwenden Sie Leistungsmonitor, um den Zähler "Free System Page Table Entries" anzuzeigen. Sie können die Einstellung PagePoolSize hinzufügen, wenn die beobachteten freien Werte über 40.000 liegen.

    • Wenn Sie /3GB und /PAE zusammen ausführen, legen Sie diese Einstellung nicht ohne umfangreiche Tests fest, und bevor Sie genau festlegen, wie viele System-PTES in Ihrer Umgebung erforderlich sind. Sie werden wahrscheinlich Werte im Bereich von 10.000 bis 20.000 free sehen. Verwenden Sie die Artikel, um ausgelagerten Poolspeicher zu konfigurieren, aber nie unter 10.000 kostenlose System-PTEs zu fallen. Legen Sie diesen Wert nicht auf einen anderen Wert fest, wenn Sie den Schalter /3GB verwenden. Die einzigen unterstützten Werte sind 0, 0A000000 und FFFFFFFF.

  8. Schließen Sie den Registrierungs-Editor.

  9. Restart your computer.

Windows NT 4.0

Wichtig

Dieser Abschnitt, diese Methode bzw. diese Aufgabe enthält eine Beschreibung der Schritte zum Bearbeiten der Registrierung. Durch die falsche Bearbeitung der Registrierung können schwerwiegende Probleme verursacht werden. Daher ist es wichtig, bei der Ausführung der folgenden Schritte sorgfältig vorzugehen. Für zusätzlichen Schutz sichern Sie die Registrierung, bevor Sie sie ändern. Sie können die Registrierung wiederherstellen, wenn ein Problem auftritt. Weitere Informationen zum Erstellen und Wiederherstellen einer Sicherungskopie der Registrierung finden Sie im folgenden Artikel der Microsoft Knowledge Base:
322756 Sichern und Wiederherstellen der Registrierung in Windows

Hinweis

Sie müssen Windows NT 4.0 Service Pack 6a verwenden.

Beheben des ersten Problems

  1. Starten Sie den Registrierungs-Editor (Regedt32.exe).

  2. Klicken Sie auf den folgenden Registrierungsunterschlüssel:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory_Management

  3. Klicken Sie im Menü Bearbeiten auf Wert hinzufügen, und fügen Sie den folgenden Registrierungswert hinzu:
    Wertname: UnusedFileCache
    Datentyp: REG_DWORD
    Radix: Dezimal
    Wertdaten: 15

    Hinweis

    Diese Zahl stellt den Prozentsatz des Pools dar, der von nicht verwendeten Segmenten genutzt werden kann. Der Wert 0 gibt an, dass das System das Standardverhalten verwendet, das Windows NT 4.0 Service Pack 3 ähnelt. Der Wert 5 bis 40 gibt an, dass das System den nicht verwendeten Dateicache basierend auf der Poolnutzung kürzen wird. 5 ist am aggressivsten (d. h., es erhöht die Größe des Caches am geringsten), und 40 ist am wenigsten aggressiv (d. h. der Cache wird am größten vergrößert, bevor der Cache gekürzt wird).)

    Wichtig

    • Verwenden Sie 15 als Anfangswert. Wenn ihre Sicherung nicht erfolgreich ist, verwenden Sie 5 als Wert. Wenn dies nicht funktioniert, müssen Sie entweder das Verhalten Ihres Sicherungsprogramms ändern, um den Bedarf an ausgelagerten Pools zu reduzieren, oder Sie müssen ein Upgrade auf Windows 2000 durchführen, wo mehr als das Doppelte des ausgelagerten Pools verfügbar ist (weitere Informationen finden Sie im Abschnitt "Windows 2000"). Wenn dieser Wert funktioniert, sollten Sie ihn um ungefähr 20 Prozent erhöhen, bis die Sicherung nicht erfolgreich ist. Wenn die Sicherung nicht erfolgreich ist, verwenden Sie die zweite Registrierungseinstellung, die in diesem Artikel beschrieben wird.

    • Wenn Sie den Schalter /3GB verwenden, verwenden Sie 5 als anfängliche Einstellung.

  4. Schließen Sie den Registrierungs-Editor.

  5. Restart your computer.

Da Sie diese Einstellungen während der stressigsten Sicherungen testen müssen, müssen Sie möglicherweise einen Monat warten, bis ein vollständiger Sicherungszyklus abgeschlossen ist, wenn Sie nicht sicher sind, welche Sicherung die meisten Ressourcen beansprucht. Daher empfiehlt Microsoft, zuerst niedrige Werte zu testen.

Beheben des zweiten Problems

Eine mögliche Lösung besteht darin, die Sicherung so einzuschränken, dass jeweils eine Datei gesichert wird. Dies kann je nach Größe der zu sichernden Dateien funktionieren oder nicht. (Es wird erwartet, dass es mit Dateien funktioniert, die kleiner als 180 GB sind.) Sie können diese Auflösung auch versuchen, wenn Sie mehrere große Dateien sichern, aber jede Datei kleiner als 180 GB ist. Führen Sie auch die Schritte aus, um das erste Problem zu beheben. Für Dateien, die größer als 180 GB sind, gibt es keine Problemumgehung. Daher müssen Sie das System auf Windows 2000 aktualisieren. Wenn Sie versuchen, das System als Problemumgehung remote zu sichern, tritt das gleiche Problem auf.

  1. Starten Sie den Registrierungs-Editor (Regedt32.exe).

  2. Klicken Sie auf den folgenden Registrierungsunterschlüssel:
    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager\Memory_Management

  3. Klicken Sie im Menü Bearbeiten auf Wert hinzufügen, und fügen Sie den folgenden Registrierungswert hinzu:
    Wertname: DisablePagedPoolHint
    Datentyp: REG_DWORD
    Radix: Dezimal
    Wertdaten: 1

  4. Schließen Sie den Registrierungs-Editor.

  5. Restart your computer.

Status

Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.

Weitere Informationen

NTBackupread und NTBackupwrite verwenden gepufferte E/A-Vorgänge. Dies bedeutet, dass Windows NT die E/A zwischenspeichert, die für den Stream ausgeführt wird. Es ist auch die einzige API, die die Metadaten einer Datei sichert. Dieser Cache wird aus begrenzten Ressourcen abgerufen: Pool und nicht ausseitigem Pool. Aus diesem Grund kann eine große Anzahl von Dateien oder Dateien, die groß sind, dazu führen, dass die Poolressourcen niedrig sind.

Mehrere Faktoren können die Belegung des Auslagerungspoolspeichers erschöpfen. Sie können die Poolmarkierung aktivieren und in verschiedenen Zeitintervallen verwenden poolsnaps , um zu verstehen, welcher Treiber den ausgelagerten Poolspeicher erschöpft. Wenn angibt poolsnaps , dass das MmSt-Tag (Mm section object prototype PTEs) der größte Consumer ist und mehr als 80 MB beträgt, ist wahrscheinlich eine große Anzahl von Dateien auf dem Server geöffnet.

Der mögliche maximale Auslagerungspoolspeicher auf einem Computer beträgt 343 MB ausgelagerter Pool in Windows 2000, wobei der ausgelagerte Poolschlüssel auf FFFFFFFF festgelegt ist, oder 164 MB, wenn der Schlüssel nicht vorhanden ist. Der mögliche maximale Auslagerungspoolspeicher beträgt 192 MB in Windows NT. Standardmäßig versucht der Speicher-Manager, den zugeordneten Auslagerungspoolspeicher zu kürzen, wenn das System 80 Prozent des gesamten ausgelagerten Pools erreicht. Beispielsweise sind 80 Prozent von 343 MB 274 MB groß. Wenn der Speicher-Manager nicht schnell genug kürzen kann, um mit dem Bedarf Schritt zu halten, kann das Im Abschnitt "Symptome" dieses Artikels aufgeführte Ereignis auftreten. Wenn Sie den Speicher-Manager so optimieren, dass der Kürzungsprozess früher gestartet wird (z. B. wenn er 40 Prozent erreicht), kann der Computer bei plötzlicher Spitzenauslastung mit dem Auslagerungspoolbedarf Schritt halten, sodass nicht der Auslagerungspoolspeicher ausgelagert wird.

Die in diesem Artikel genannten Drittanbieterprodukte stammen von Herstellern, die von Microsoft unabhängig sind. Microsoft gewährt keine implizite oder sonstige Garantie in Bezug auf die Leistung oder Zuverlässigkeit dieser Produkte.