Druckerwarteschlange läuft voll
Hallo an die Community,
vielleicht hat von Euch schon mal jemand das Problem.
Problem:
Ein Windows Server 2019 wird als Druckserver verwendet.
Doch die Druckerwarteschlange füllt sich immer weiter mit Daten. Das geht dann soweit, bis der gesamte RAM für die Warteschlange verwendet wird und der Server stellt seinen Dienst ein.
Anzahl der Drucker: 80
Davon Offline: 16
Frage:
kann ich irgendwie sehen, was sich in der Warteschlange anhäuft?
Wie kann ich rausfinden, was das Problem verursacht?
Lösungsansätze:
Ich habe bereits alle veralteten Drucker entfernt, Druckertreiber aktualisiert und testweise andere Drucker offline genommen.
Das Problem besteht weiterhin und im Sekundentakt erhöht sich die RAM-Auslastung stetig um ca. 0,1 MB. Wenn man die Warteschlange anhält und neu startet, geht das Spiel wieder von vorn los.
Ich wäre euch sehr dankbar, wenn ihr einen Ideenanstoß für mich habt, wo ich am besten schauen kann, um das Problem zu analysieren und zu finden.
vielleicht hat von Euch schon mal jemand das Problem.
Problem:
Ein Windows Server 2019 wird als Druckserver verwendet.
Doch die Druckerwarteschlange füllt sich immer weiter mit Daten. Das geht dann soweit, bis der gesamte RAM für die Warteschlange verwendet wird und der Server stellt seinen Dienst ein.
Anzahl der Drucker: 80
Davon Offline: 16
Frage:
kann ich irgendwie sehen, was sich in der Warteschlange anhäuft?
Wie kann ich rausfinden, was das Problem verursacht?
Lösungsansätze:
Ich habe bereits alle veralteten Drucker entfernt, Druckertreiber aktualisiert und testweise andere Drucker offline genommen.
Das Problem besteht weiterhin und im Sekundentakt erhöht sich die RAM-Auslastung stetig um ca. 0,1 MB. Wenn man die Warteschlange anhält und neu startet, geht das Spiel wieder von vorn los.
Ich wäre euch sehr dankbar, wenn ihr einen Ideenanstoß für mich habt, wo ich am besten schauen kann, um das Problem zu analysieren und zu finden.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 7746893430
Url: https://administrator.de/contentid/7746893430
Ausgedruckt am: 24.11.2024 um 16:11 Uhr
16 Kommentare
Neuester Kommentar
Guten Morgen,
in der Druckverwaltung solltest du sehen welcher Drucker die Aufträge in der Warteschlange behält. Da vielleicht mal reinschauen, klassisch könnte da ein Dokument klemmen welches einfach abgebrochen werden muss.
Was auch ab und an vorkommt, dass der Drucker angehalten wurde. Hier einfach per Rechtsklick wieder starten.
Wie schaut es hier auf dem Druckserver aus?
C:\Windows\System32\spool\PRINTERS
in der Druckverwaltung solltest du sehen welcher Drucker die Aufträge in der Warteschlange behält. Da vielleicht mal reinschauen, klassisch könnte da ein Dokument klemmen welches einfach abgebrochen werden muss.
Was auch ab und an vorkommt, dass der Drucker angehalten wurde. Hier einfach per Rechtsklick wieder starten.
Wie schaut es hier auf dem Druckserver aus?
C:\Windows\System32\spool\PRINTERS
Moin,
so etwas habe ich noch nie gesehen.
Das klingt für mich nach einem verbugten Drucktertreiber der RAM nicht wieder freigibt.
Windows-Printserver nehmen ja nur den Druckauftrag per Netzwerk entgegen, speichern diesen als Datei, schicken diese zum Drucker und löschen die Datei.
Selbst wenn alle Drucker aus sind, wird nur die Festplatte gefüllt, aber nicht das RAM.
Ich sehe aber keine Möglichkeit das auf einen bestimmten Drucker zu reduzieren. Damit auch keine einefach Möglichkeite das zu beheben.
so etwas habe ich noch nie gesehen.
Das klingt für mich nach einem verbugten Drucktertreiber der RAM nicht wieder freigibt.
Windows-Printserver nehmen ja nur den Druckauftrag per Netzwerk entgegen, speichern diesen als Datei, schicken diese zum Drucker und löschen die Datei.
Selbst wenn alle Drucker aus sind, wird nur die Festplatte gefüllt, aber nicht das RAM.
Ich sehe aber keine Möglichkeit das auf einen bestimmten Drucker zu reduzieren. Damit auch keine einefach Möglichkeite das zu beheben.
Moin Moin,
kleiner Tipp:
Druckerhersteller und Typ des Treibers sind schon recht wichtig..
Bei Kyo & Töchter haben wir 7 unterschiedliche Typen, von den Vers.Nr nicht zu reden
Zurück zum Problem:
Es ist insofern sehr kurios als das vom System her der Printserver alle Druckdatenströme aufnimmt und verwaltet.
Aber nicht im RAM sondern auf der HDD.
Klar, bei ~70 Druckern parallel am Drucken wird trotzdem relativ reichlich RAM benötigt.
Ich würde mir die Daten die der Drucker ausgibt einmal anschauen:
https://learn.microsoft.com/en-us/powershell/module/printmanagement/get- ...
Ich würde mir auch in dem Drucker die "Drucker Eigenschaften" und da spezifisch "Erweitert" und "Anschlüsse" anschauen.
Bei so einer Anforderung kann "Bi-Direktionale Unterstützung" raus.
Es sollte auch "Sofort Drucken" aktiviert sein und die Erweiterten Druckfeatures deaktivert sein.
Wenn das alles nicht hilft sollte man von RAW auf LPR umstellen.
kleiner Tipp:
Druckerhersteller und Typ des Treibers sind schon recht wichtig..
Bei Kyo & Töchter haben wir 7 unterschiedliche Typen, von den Vers.Nr nicht zu reden
Zurück zum Problem:
Es ist insofern sehr kurios als das vom System her der Printserver alle Druckdatenströme aufnimmt und verwaltet.
Aber nicht im RAM sondern auf der HDD.
Klar, bei ~70 Druckern parallel am Drucken wird trotzdem relativ reichlich RAM benötigt.
Ich würde mir die Daten die der Drucker ausgibt einmal anschauen:
https://learn.microsoft.com/en-us/powershell/module/printmanagement/get- ...
Ich würde mir auch in dem Drucker die "Drucker Eigenschaften" und da spezifisch "Erweitert" und "Anschlüsse" anschauen.
Bei so einer Anforderung kann "Bi-Direktionale Unterstützung" raus.
Es sollte auch "Sofort Drucken" aktiviert sein und die Erweiterten Druckfeatures deaktivert sein.
Wenn das alles nicht hilft sollte man von RAW auf LPR umstellen.
Du kannst über "Erweitert" die Erweiterete Ansicht laden bzw. anzeigen lassen. Dadurch kannst du sehen welcher Drucker ggf. einen Fehlerhaften Druckjob drin hat.
Problem ist wenn ein Druckjob einen Fehler wirft weil z.B. Papier nicht passt oder kein Papier oder oder oder dann bleibt der als Fehler drin und die anderen Jobs werden an den Druckserver gesendet aber eben nicht abgearbeitet.
Wird dann der Fehlerhafte Job gelöscht druckt der Printserver den Rest der Dokumente und das mit dem RAM passt wieder.
Habt ihr sonst irgendwelche weiteren Print Funktionen wie FolowME oder ähnlich im Einsatz ?
Problem ist wenn ein Druckjob einen Fehler wirft weil z.B. Papier nicht passt oder kein Papier oder oder oder dann bleibt der als Fehler drin und die anderen Jobs werden an den Druckserver gesendet aber eben nicht abgearbeitet.
Wird dann der Fehlerhafte Job gelöscht druckt der Printserver den Rest der Dokumente und das mit dem RAM passt wieder.
Habt ihr sonst irgendwelche weiteren Print Funktionen wie FolowME oder ähnlich im Einsatz ?
Zitat von @an-x-ur:
Nachdem ich jetzt alles noch mal durchgegangen bin, habe ich einen "HP Universal Printing PCL 5" gefunden. Kurrios, wir haben keine HP Drucker im Einsatz.
Ich habe diesen Drucker und den damit verbundenen Anschluss gelöscht und den Spooler neu gestartet.
Seit dem (09:30 Uhr) verhält sich das System wie erwartet. RAM steigt bei Belastung kurz an wird dann aber wieder freigegeben.
Das klingt doch prima.Ich habe diesen Drucker und den damit verbundenen Anschluss gelöscht und den Spooler neu gestartet.
Seit dem (09:30 Uhr) verhält sich das System wie erwartet. RAM steigt bei Belastung kurz an wird dann aber wieder freigegeben.
Die HP PCL-Treiber waren viele Jahre die Standardtreiber für so ziemlich alles was PCL spricht und die HP PS-Treiber zum erzeugen von PDF-Dokumenten. Vermutlich ist das eine historische Altlast.
Wir haben bei Druckern in der Verwaltung den SecurePrint aktiv, hier wird es aber über den Drucker selbst gesteuert und nicht als Dienst im System. Die großen Drucker speichern dann den Auftrag auf der eigenen Festplatte.
ich würde auf FMP umstellen, gerade "höhere" Angestellt drucken gerne mal aus versehen auf "irgendwelche" Drucker und plötzlich landen vertrauliche Dokumente mitten der Produktion
Zitat von @an-x-ur:
Wenn das alles nicht hilft sollte man von RAW auf LPR umstellen.
Das werde ich dennoch nicht aus den Augen verlieren.
Habt ihr sonst irgendwelche weiteren Print Funktionen wie FolowME oder ähnlich im Einsatz
Wir haben bei Druckern in der Verwaltung den SecurePrint aktiv, hier wird es aber über den Drucker selbst gesteuert und nicht als Dienst im System. Die großen Drucker speichern dann den Auftrag auf der eigenen Festplatte.
Hmm
SecurePrint wird wahrscheinlich das sein was man PrivatePrint bei Kyo nennt.
Und das wird NICHT auf der HDD gesichert !
Sondern im RAM des Druckers --> Beim Neustart weg.
Hat der Drucker zuviele dieser Jobs, hat er kaum RAM über ..
Entsprechende Probleme gibt es.
Eine FollowMe Lösung ist für vieles eine Lösung.
Mit MyQ kann man zB:
- Zählen der Seiten, Account spezifisch oder Projekt (Kostenstelle) spezifisch
- Guthaben Verwaltung für Drucken und/oder/oder nicht scannen. (bsp: Uni, Studi können sich entsprechend Guthaben kaufen und nutzen)
- Empfangen von Jobs via mail
- Senden von Scans via Mail / 2 Folder (SMB/FTP/DFS) / an einen lokal erreichbaren Share zum runterladen.
- Gesichertes Personalisiertes Anmelden und entsprechende Bearbeitungs Möglichkeiten im Nachhinein
Ich schicke ein 8S. Dokument.
In Simplex und Farbe.
Einmal.
Jetzt will der Anwender aber plötzlich das Dokument in Duplex, geheftet und gelocht (der Drucker kann das).
Kein Problem.
Oder auch x mal so ausgedruckt.
Führe am Wochenende, wenn Keiner gelöschte Drucke vermisst mal folgenden Batch als Admin durch:
Wenn das hilft, als Aufgabe nachts hinzufügen, hat auf einigen bockigen Servern, bei denen die Druckspooler immer wieder alles ausgelastet hatten, geholfen.
@echo off
cls
echo ____________________________________________________________________________
echo
echo.
echo Sie ben”tigen Administratorrechte, um Dienste beenden und starten zu k”nnen!
echo.
echo ____________________________________________________________________________
echo.
echo.>"%SystemRoot%\system32\checkAdminPermission.tmp"
if not exist "%SystemRoot%\system32\checkAdminPermission.tmp" (
echo Sie ben”tigen Administratorrechte, um Dienste beenden und starten zu k”nnen!
echo.
echo Vorgang wird abgebrochen.
goto ENDE
)
echo.
echo Stoppe Druckwarteschlange...
net start | Find /I "Druckwarteschlange" >NUL && net stop "Druckwarteschlange"
echo.
echo Loesche Datei-Leichen...
if exist "%SystemRoot%\system32\spool\PRINTERS\*.shd" (
del /F /Q "%SystemRoot%\system32\spool\PRINTERS\*.shd"
)
echo.
echo Starte Druckwarteschlange...
net start "Druckwarteschlange"
:ENDE
if exist "%SystemRoot%\system32\checkAdminPermission.tmp" (
del /F /Q "%SystemRoot%\system32\checkAdminPermission.tmp"
)
echo.
pause
Wenn das hilft, als Aufgabe nachts hinzufügen, hat auf einigen bockigen Servern, bei denen die Druckspooler immer wieder alles ausgelastet hatten, geholfen.
@echo off
cls
echo ____________________________________________________________________________
echo
echo.
echo Sie ben”tigen Administratorrechte, um Dienste beenden und starten zu k”nnen!
echo.
echo ____________________________________________________________________________
echo.
echo.>"%SystemRoot%\system32\checkAdminPermission.tmp"
if not exist "%SystemRoot%\system32\checkAdminPermission.tmp" (
echo Sie ben”tigen Administratorrechte, um Dienste beenden und starten zu k”nnen!
echo.
echo Vorgang wird abgebrochen.
goto ENDE
)
echo.
echo Stoppe Druckwarteschlange...
net start | Find /I "Druckwarteschlange" >NUL && net stop "Druckwarteschlange"
echo.
echo Loesche Datei-Leichen...
if exist "%SystemRoot%\system32\spool\PRINTERS\*.shd" (
del /F /Q "%SystemRoot%\system32\spool\PRINTERS\*.shd"
)
echo.
echo Starte Druckwarteschlange...
net start "Druckwarteschlange"
:ENDE
if exist "%SystemRoot%\system32\checkAdminPermission.tmp" (
del /F /Q "%SystemRoot%\system32\checkAdminPermission.tmp"
)
echo.
pause
Gebe Dir Recht. Lösche Dateileichen auch berücksichtigt? Alle Herstellertools entfernt, schau mal nicht in die Softwareliste der Einstellungen, sondern verwende geek, uninstalltool oder dergleichen, die finden oft Leichen. Ist leider so, dass die Druckertreiber der Hersteller viel Mist bauen. Die alle durchzuprobieren wird schwierig. Meine Erfahrung: Ganz schlecht: Kyocera, HP (PCL Standardtreiber verwenden, alles andere runter von der Kiste), ich empfehle Brother, für bestimmte Zwecke Epson oder Canon. Die machen am wenigsten Ärger (auch Scannertreiber müssen ja oft berücksichtigt werden). HP kommt mir nicht mehr ins Haus. Damit trete ich jetzt vermutlich eine weitere Diskussion los......Jeder macht mit seinen Erfahrungen, was er will.
Zitat von @roger.pfaff:
echo Sie ben”tigen Administratorrechte, um Dienste beenden und starten zu k”nnen!
echo.
echo ____________________________________________________________________________
echo.
echo.>"%SystemRoot%\system32\checkAdminPermission.tmp"
if not exist "%SystemRoot%\system32\checkAdminPermission.tmp" (
echo Sie ben”tigen Administratorrechte, um Dienste beenden und starten zu k”nnen!
echo.
echo Vorgang wird abgebrochen.
goto ENDE
)
echo.
echo ____________________________________________________________________________
echo.
echo.>"%SystemRoot%\system32\checkAdminPermission.tmp"
if not exist "%SystemRoot%\system32\checkAdminPermission.tmp" (
echo Sie ben”tigen Administratorrechte, um Dienste beenden und starten zu k”nnen!
echo.
echo Vorgang wird abgebrochen.
goto ENDE
)
Kleiner Tipp:
net session >nul 2>&1 || (powershell -EP Bypass -NoP -C echo & echo '"---- Bitte die CMD eleviert starten ----'" -verb runas & pause & Exit /b)
Macht das gleiche in einem Satz.
Man kann auch damit eleviert eine CMD/Batch starten. (Es öffnet sich die UAC, kein Breach :-P )
net session >nul 2>&1 || (powershell -EP Bypass -NoP -C start '"%Auszufuehrend%'" -verb runas &exit /b)
PS:
Manche meinen sc stop <Dienst> ist doch viel aktueller.
Net stop hat einen echten Vorteil:
Der Befehl wird abgearbeitet und alles wartet bis zum Ende.
sc stop schickt den Befehl los, das Skript arbeitet aber direkt weiter.
Und wenn der dienst richtig zäh ist..
Ansonsten hat sc Vorteile gegenüber net, man muss halt bei beiden die man Pages lesen
Manche meinen sc stop <Dienst> ist doch viel aktueller.
Net stop hat einen echten Vorteil:
Der Befehl wird abgearbeitet und alles wartet bis zum Ende.
sc stop schickt den Befehl los, das Skript arbeitet aber direkt weiter.
Und wenn der dienst richtig zäh ist..
Ansonsten hat sc Vorteile gegenüber net, man muss halt bei beiden die man Pages lesen