плохая изоляция принтера на сервере печати или лучше?

8

Я заметил, что когда принтер или драйвер портится на сервере Windows, он обычно блокирует или убивает диспетчер очереди печати, и все не могут печатать, пока он не исправлен. Обычно нам приходится помещать проблемный принтер на другой сервер, поэтому, когда он выходит из строя, он не забирает с собой всю группу. Это предполагает, что мы когда-либо выясним, какой принтер является проблемой.

Есть ли способ, чтобы одно плохое яблоко не испортило кучу? Даже если это другая форма обслуживания принтера, она будет работать, если пользователю не сложно найти принтер и установить драйверы.

Джозеф
источник

Ответы:

8

Я знаю, что это не помогает вашей текущей ситуации с сервером, но кое-что примечательно: Windows Server 2008 R2 и Windows 7 позволят вам настроить изоляцию драйвера принтера . Это позволяет вам запускать проблемные принтеры как отдельный процесс, чтобы они не убивали спулер.

Бретт Дж
источник
4

Когда мы столкнулись с такими проблемами, мы обнаружили, что это больше связано со смешанными драйверами модели HP на сервере печати, чем с плохим драйвером. После того, как мы перевели все принтеры HP для использования универсального драйвера печати, наши проблемы исчезли.

Кевин Куфал
источник
5
Это все еще звучит как плохой водитель для меня. Вы просто перевели все на использование одного не плохого драйвера.
Эван Андерсон
1
Технически, да, это была проблема с драйверами, но я не думаю, что по отдельности какие-либо драйверы вызывали проблемы, только при смешивании разных моделей на одном сервере печати у нас были проблемы.
Кевин Куфал
Имейте в виду ... известно, что универсальные драйверы были очень ненадежными, несмотря на то, что они, казалось, работали на вас
Бретт Дж.
3

Мы только что прошли через подобные проблемы. Определенные документы, напечатанные определенными пользователями на определенных принтерах, будут полностью испортить службу спулинга на сервере win 2k3 и из-за этого выбьют все остальные принтеры.

Мы действительно не нашли подходящего способа избежать полного удаления спулера, кроме множества серверов печати, что явно не очень дружелюбно. Однако мы создали дополнительные очереди для проблемных принтеров, которые используют драйверы PCL или PS (в основном, тот, который в данный момент не используется). Назовите это то же самое с -ps / -pcl после него и посоветуйте пользователям, у которых есть проблемы с печатью.

Также стоит проверить в файле services.msc на сервере печати, что служба спулера настроена на автоматический перезапуск. Таким образом, вы можете избежать нескольких минут простоя.

Я думаю, вы могли бы также посоветовать, что люди, которым нужно печатать на хитром принтере, делают это с помощью прямой IP-печати, таким образом исключая сервер печати из уравнения вместе.

койка
источник
1

Обходной путь, пока вы не получите более функциональный драйвер для неисправного принтера, - это запуск сценария при сбое диспетчера очереди печати (свойства восстановления в службе). Сценарий очистит все документы из каталога спула, а затем перезапустите спулер. Существует небольшая вероятность потери заданий на печать, но обычно, когда я вижу это, единственное задание в очереди - это оскорбительное задание.

Другие вещи, которые нужно проверить, это убедиться, что вы используете последние версии драйверов или вернетесь к предыдущей версии. Убедитесь, что ваш принтер и прошивка IO (Jetdirect?) Обновлены. Наконец, я обнаружил, что стандартный порт TCP / IP гораздо надежнее, чем при использовании типа порта HP или поставщика. У нас есть серверы печати, которые обрабатывают более 600 000 страниц в месяц, и тип порта, похоже, больше всего влияет на стабильность работы сервера печати или нет.

Обновить:

Для скрипта (пакетного файла) это будет что-то простое:

del /q c:\windows\system32\spool\PRINTERS\*.*
net start spooler

Затем запустите пакетный файл как часть службы восстановления после первого сбоя. Возможно, вы захотите получать уведомления о последующих сбоях.

спулер печати

Дуг Люксем
источник
0

Один из способов сделать это - создать несколько виртуальных машин, каждая с собственным принтером (или не более нескольких принтеров на одну виртуальную машину).

Кевин М
источник
Проблема в том, что каждая виртуальная машина выглядит как отдельный сервер.
Иосиф
Я собираюсь придираться на секунду - они не «появляются» в разных серверах, они являются разными серверами. Полезный совет. Теперь, если вы называете свои принтеры в соответствии со стандартом, публикуете их непосредственно в AD и обучаете своих пользователей их поиску, тогда вам не нужно, чтобы они знали имена серверов (если только они не переведены на новые серверы). ) Вы даже можете ввести информацию о местоположении, например, «Копия на 6-м этаже, Де-Мойн»
mfinni,
0

Какая серверная ОС? Служба диспетчера очереди печати только останавливается? Если так, почему бы не настроить автоматический перезапуск службы, если она остановлена?

DanBig
источник
Потому что, когда он терпит неудачу таким образом, он не запустится, пока файл-нарушитель не будет удален из каталога спула. И нет простого способа выяснить, что это за файл. Единственный способ восстановления - удалить ВСЕ задания из очереди из каталога спула и перезапустить. Это слишком сложно для сервис-менеджера Windows.
sysadmin1138
Даг, ниже вас, показывает, что это не слишком сложно для диспетчера служб Windows.
mfinni
Мета - Хм - странно. Я думал, что это новый вопрос, но после того, как я прокомментировал, я вижу, что он попал на первую страницу, потому что Даг отредактировал свой ответ с прошлого года, добавив дополнительные инструкции и скриншот. Ничего.
mfinni