Я заметил, что когда принтер или драйвер облажались на сервере Windows, он обычно блокирует или убивает диспетчер очереди печати, и все не могут печатать, пока это не будет исправлено. Обычно нам приходится переносить проблемный принтер на другой сервер, чтобы в случае его выхода из строя он не забирал с собой всю группу. Это при условии, что мы когда-нибудь выясним, в каком принтере проблема.
Есть ли способ сделать так, чтобы одно плохое яблоко не испортило букет? Даже если это другая форма обслуживания принтера, это будет работать до тех пор, пока пользователю не составит труда найти принтер и установить драйверы.
Я знаю, что это не помогает вашей текущей ситуации с сервером, но кое-что примечательно: Windows Server 2008 R2 и Windows 7 позволят вам настроить Изоляция драйвера принтера. Это позволяет вам запускать проблемные принтеры как отдельный процесс, поэтому они не убивают диспетчер очереди печати.
Когда мы столкнулись с подобными проблемами, мы обнаружили, что это больше связано со смешанными драйверами печати HP на сервере печати, чем с плохим драйвером. Как только мы перевели все принтеры HP на использование универсального драйвера печати, наши проблемы исчезли.
Мы только что столкнулись с подобными проблемами. Определенные документы, напечатанные определенными пользователями на определенных принтерах, полностью испортят службу буферизации на сервере win 2k3 и из-за этого вырубят все остальные принтеры.
На самом деле мы не нашли подходящего способа избежать отключения всего диспетчера очереди печати, кроме множества серверов печати, что явно не очень дружелюбно. Однако то, что мы сделали, - это создание дополнительных очередей для проблемных принтеров, которые используют драйверы PCL или PS (в основном тот, который в настоящее время не используется). Назовите это то же самое с -ps / -pcl после него и посоветуйте пользователям, у которых возникают проблемы с печатью, это.
Также стоит проверить в файле services.msc на сервере печати, что служба диспетчера очереди печати настроена на автоматический перезапуск. Таким образом, вы можете избежать простоя всего за несколько минут.
Я думаю, вы также могли бы посоветовать людям, которым необходимо печатать на хитроумном принтере, делать это через прямую IP-печать, что исключает сервер печати из уравнения.
В качестве обходного пути, пока вы не получите более функциональный драйвер для неисправного принтера, следует запустить сценарий при сбое диспетчера очереди печати (свойства восстановления в службе). Попросите сценарий очистить все документы из каталога спула, а затем перезапустите диспетчер очереди печати. Существует небольшая вероятность потери заданий печати, но обычно, когда я вижу это, единственное задание в очереди - это проблемное задание.
Другие вещи, которые нужно проверить, - убедиться, что у вас установлены последние версии драйверов или вернуться на одну версию. Убедитесь, что на вашем принтере и прошивке IO (Jetdirect?) Установлена последняя версия. Наконец, я обнаружил, что стандартный порт TCP / IP намного надежнее, чем порт, предоставляемый HP или поставщиком. У нас есть серверы печати, выполняющие более 600 000 страниц в месяц, и тип порта, кажется, больше всего влияет на то, будет ли сервер печати оставаться стабильным или нет.
Обновить:
Для сценария (пакетного файла) это будет примерно так:
del /q c:\windows\system32\spool\PRINTERS\*.*
net start spooler
Затем запустите пакетный файл как часть восстановления службы при первом сбое. Вы можете захотеть, чтобы уведомления выходили при последующих сбоях.
Один из способов сделать это - создать несколько виртуальных машин, каждая со своим собственным принтером (или не более нескольких принтеров на виртуальную машину).
Какая серверная ОС? Служба диспетчера очереди печати просто останавливается? Если да, почему бы не настроить автоматический перезапуск службы в случае остановки?