- Как решить проблемы подсистемы печати в терминальном сервере
- Вместо Intro
- Причины и решения
- Идентичные драйвера
- Изоляция драйверов
- TS Easy Print
- Решения сторонних компаний
- Почему не печатают принтеры по rdp?
- [РЕШЕНО] Не печатают некоторые принтеры на сервере терминалов через RDP в Windows Server
- One Reply to “[РЕШЕНО] Не печатают некоторые принтеры на сервере терминалов через RDP в Windows Server”
- Windows Перенаправление принтера сервера не работает
- Симптомы
- Причина
- Решение
- Дополнительная информация
- Почему не печатают принтеры по rdp?
Как решить проблемы подсистемы печати в терминальном сервере
Сегодня я бы хотел поделиться своим опытом устранения проблем печати на терминальном сервере Microsoft.
Подробности под катом.
Вместо Intro
Наверняка, почти каждый системный администратор, работающий с Windows и, в частности, с терминальным сервером, сталкивался с проблемами печати.
Разрывается телефон, у всех одна и та же проблема: «Нажимаю на печать — ничего не происходит!». Идем смотреть логи и видим следующую картину:
Знакомо? Никаких подробностей, ничего — гадайте, господа администраторы! На форумах в интернете полно вопросов по этой теме и очень мало полных, структурированных ответов. Что ж, попробуем собрать в кучу все варианты решений.
Причины и решения
Итак, из-за чего может происходить подобная ситуация? Большую часть подобных ситуаций вызывают установленные на сервере драйверы.
- Необходимо помнить, что драйверы у клиентов и на сервере должны быть идентичны
- Убедитесь, что включена изоляция драйверов
- Удалите все драйвера на сервере и попробуйте использовать TS Easy Print
- Попробуйте решения сторонних компаний
А теперь пройдемся подробнее по всем пунктам. Для начала установим на наш терминальный сервер роль «Службы печати и документов».
Это позволит нам удобно управлять драйверами и принтерами, установленными в системе.
Идентичные драйвера
Думаю, тут особо не о чем рассказывать. Стоит помнить, что драйвера необходимо брать с официальных страниц изготовителя принтера. Так же еще один момент — стабильнее всего ведут себя PCL5. Если есть возможность выбора между PCL5 и PCL6 — стоит установить PCL5 (соответственно, серверу и клиенту).
Изоляция драйверов
В Windows 2008 появилась замечательная возможность изоляции драйверов принтера. Теперь драйвер принтера подгружается не Spoolsv.exe а специальным процессом PrintIsolationHost.exe. При «вылетании» драйвера принтера «слетает» только один экземпляр PrintIsolationHost.exe, а сама служба «Диспетчера печати» остается работоспособной, что, как понимаете, весьма влияет на настроение пользователей 😉
Чтобы включить данную возможность, нам необходимо открыть редактор локальной групповой политики (gpedit.msc) и пройти следующим путем: «Параметры компьютера -> Административные шаблоны -> Принтеры». Находим и включаем следующие пункты:
- Выполнить драйверы принтеров в изолированных процессах
- Переопределить параметр совместимости выполнения драйвера печати, назначенный драйвером печати
Будет выглядеть следующим образом:
TS Easy Print
Видимо, вняв наконец стенаниям системных администраторов, компания Microsoft решила что-то сделать с необходимостью ставить зоопарк драйверов на терминальный сервер и падающим из-за этого spoolsv.exe. В итоге, на свет родилась технология TS Easy Print. Ключевой особенностью является, то, что больше нам не нужно устанавливать на сервер драйвера для каждого принтера — вместо этого используется унифицированный драйвер Remote Desktop Easy Print, соответственно, мы уходим от проблемы падающего спулера — ведь все операции с печатью выполняются на компьютере клиента.
Для того, чтобы явно определить, что мы хотим использовать на терминальном сервере TS Easy Print, необходимо пройти опять же в редактор локальной групповой политики (gpedit.msc) по следующему пути: «Параметры компьютера -> Административные шаблоны -> Компоненты Windows -> Службы удаленных рабочих столов -> Узел сеансов удаленных рабочих столов -> Перенаправление принтеров». Нас интересуют следующие пункты, которые надо включить:
- Использовать в первую очередь драйвер принтера Easy Print удаленного рабочего стола
- Перенаправлять только используемый по умолчанию принтер клиента
Второй пункт необходим, если мы хотим, чтобы в терминале у клиента был только его принтер по умолчанию.
Далее, необходимо очистить наш сервер от лишних драйверов принтеров. Это можно сделать в менеджере роли «Службы печати и документов».
Внимательно удаляйте драйвера! Необходимо оставить в живых такие вещи, как «Remote Desktop Easy Print» и «Microsoft XPS Document Writer». Именно они и отвечают за передачу печати на клиента.
Теперь перейдем к требованием на клиенте. Их всего два — использование протокола RDP версии не ниже 6.1 и .NET Framework 3.0 с пакетом обновления 1 (SP1). Больше от них ничего не требуется.
Решения сторонних компаний
Избавиться от проблемы падающего спулера призваны такое ПО как, например, ScrewDrivers (сайт). Оно предоставляет клиент-серверную архитектуру.
Сервер ScrewDrivers — это компонент, который необходимо установить на серверы, на которых планируется использовать печать в терминальном сеансе. Клиент ScrewDrivers должен быть установлен на рабочих станциях. Именно этот компонент позволяет создать на терминальном сервере виртуальные принтеры, которые соответствуют локальным принтерам пользователя.
В целом, напоминает Easy Print, но не бесплатно (впрочем, есть лекарства ;).
Источник
Почему не печатают принтеры по rdp?
Добрый вечер.
Помогите!
Не печатают принтеры из rdp сессии, годами все работало, но сегодня случился сбой!
Принтеры есть как проброшены (перенаправленние), так и добавлены по ip/имени.
Принтеры не сетевые, подключены к клиентским ПК по USB!
В логах:
1) Служба Диспетчер печати была неожиданно завершена. Это произошло 239 раз(а). Следующее корректирующее действие будет предпринято через 5000 мсек: Перезапуск службы.
2) Имя сбойного приложения: spoolsv.exe, версия: 6.2.9200.22376, метка времени: 0x5a90b3eb
Имя сбойного модуля: ntdll.dll, версия: 6.2.9200.22376, метка времени: 0x5a90c271
3) При инициализации \\user\Canon LBP2900 произошла ошибка в \\user\print$\COLOR\CNZ007.ICC. Ошибка: 5. Отказано в доступе.
. Это может быть следствием нестабильной работы системы или нехватки системных ресурсов.
4) Entry Function: DrvPrinterEvent, Base Address: 0000000068E60000, Exception Address: 000007FD13E966F8, Exception Code: ACCESS_VIOLATION
5) Имя сбойного приложения: spoolsv.exe, версия: 6.2.9200.22376, метка времени: 0x5a90b3eb
Имя сбойного модуля: ntdll.dll, версия: 6.2.9200.22376, метка времени: 0x5a90c271
Код исключения: 0xc0000374
Смещение ошибки: 0x00000000000da535
Идентификатор сбойного процесса: 0x4474
Время запуска сбойного приложения: 0x01d58d9a902db136
Путь сбойного приложения: C:\Windows\System32\spoolsv.exe
Путь сбойного модуля: C:\Windows\SYSTEM32\ntdll.dll
Идентификатор отчета: e31172f2-f98d-11e9-9450-0cc47acd844c
6) Redirection of additional supported devices is disabled by policy.
Что происходит? Как лечить?
- Вопрос задан более года назад
- 2005 просмотров
1) Перезапуск службы печати.
2) Очистка папки C:\Windows\System32\Spool
3) Перзагрузка компьютера.
Если проблема с принтерами определённого производителя, то вычистить от них систему, переустановить драйвера и перезагрузить.
Источник
[РЕШЕНО] Не печатают некоторые принтеры на сервере терминалов через RDP в Windows Server
При работе через RDP, на Windows Server 2008 и выше, у многих пользователей часть принтеров печатает нормально, а некоторые не печатают. Чаще всего, такая ситуация, возникает из-за несовместимости некоторых принтеров со встроенным, в Windows Server, драйвером Easy Print.
Для решения данной проблемы, мы укажем системе, в первую очередь использовать родной драйвер, а если его нет, то драйвер Easy Print.
1) Запускаем «Редактор групповой политики»
«Пуск» → «Выполнить» → «gpedit.msc»
2) Переходим в следующий раздел:
В Windows Server 2008 R2
«Конфигурация компьютера» → «Административные шаблоны» → «Компоненты Windows» → «Службы удаленных рабочих столов» → «Узел сеансов удаленных рабочих столов» → «Перенаправление принтеров»
или (в разных версиях по разному)
«Конфигурация компьютера» → «Административные шаблоны» → «Компоненты Windows» → «Службы терминалов» → «Сервер терминалов» → «Перенаправление принтеров»
3) Меняем значение параметра «Использовать в первую очередь драйвер принтера Easy Print служб терминалов» на «Отключена»
4) Осталось вручную установить на сервер драйверы от принтеров, которые не работают у пользователей.
One Reply to “[РЕШЕНО] Не печатают некоторые принтеры на сервере терминалов через RDP в Windows Server”
Класс!) Давно искал и только тут нашел решение!)
Автор молодец!)
Источник
Windows Перенаправление принтера сервера не работает
В этой статье данная статья позволяет решить проблему, при которой перенаправление принтера не работает и не происходит никаких ИД событий.
Применяется к: Windows Server 2012 R2
Исходный номер КБ: 2003646
Симптомы
Перенаправление принтера не работает. Перенаправление диска работает. Никакие ID-события не видны.
Причина
Дескриптор безопасности spooler должен содержать ACL ACL (Список управления доступом), который позволяет любому пользователю с проверкой подлинности открывать службу spooler для операций чтения.
В этом случае ACL отсутствовал в дескрипторе безопасности spooler.
Решение
Запустите следующую команду, чтобы показать текущие дескрипторы безопасности в шпалере печати:
Unaltered SD (дескриптор безопасности) для шпалер печати должен выглядеть так:
D:(A;; CCLCSWLOCRRC;;; AU)(A;; CCDCLCSWRPWPDDLOCRSDRCWDWO;;; BA)(A;; CCLCSWRPWPDTLOCRRC;;; SY)
Важным ACL в этом случае является ACL для пользователя, который прошел проверку подлинности( AU), так как TS выполняется в качестве сетевой службы, для успешного открытия службы spooler она полагается на этот ACL. Добавление следующего обратного ACL исправит проблему.
Чтобы добавить отсутствующий ACL, можно реализовать следующий метод.
Выполните следующую команду:
Вы увидите все acLs, за исключением «(A;; CCLCSWLOCRRC;;; AU)» ACL при открываемом текстовом файле.
Ниже приводится пример: (вы можете видеть другой выход в зависимости от разрешений, установленных на шпалере)
D:(A;; CCLCSWLOCRRC;;; AU)(A;; CCDCLCSWRPWPDDLOCRSDRCWDWO;;; BA)(A;; CCLCSWRPWPDTLOCRRC;;; SY)
Затем можно скопировать вышеуказанное в блокноте следующим образом:
sc sdset spooler D: (A;; CCLCSWLOCRRC;;; AU)(A;; CCLCSWLOCRRC;;; AU)(A;; CCDCLCSWRPWPDDLOCRSDRCWDWO;;; BA)(A;; CCLCSWRPWPDTLOCRRC;;; SY)
Убедитесь, что вы примыкаете к «sc sdset spooler D: (A;; CCLCSWLOCRRC;;; AU)» раздела выше команды к выходу, который вы видите в вашем случае.
Скопируйте и вклеите эту команду в командную подсказку. (Убедитесь, что «(A;; CCLCSWLOCRRC;;; AU)» появляется в начале. Я не знаю, почему это так, как кажется, работает.)
При запуске вышеуказанной команды сохраняются старые ACL, а также добавляется отсутствующий ACL, который является для пользователя с проверкой подлинности (AU).
Дополнительная информация
Ниже приводится список других вещей, которые можно найти в проблеме «Перенаправление принтера не работает»:
Источник
Почему не печатают принтеры по rdp?
Добрый вечер.
Помогите!
Не печатают принтеры из rdp сессии, годами все работало, но сегодня случился сбой!
Принтеры есть как проброшены (перенаправленние), так и добавлены по ip/имени.
Принтеры не сетевые, подключены к клиентским ПК по USB!
В логах:
1) Служба Диспетчер печати была неожиданно завершена. Это произошло 239 раз(а). Следующее корректирующее действие будет предпринято через 5000 мсек: Перезапуск службы.
2) Имя сбойного приложения: spoolsv.exe, версия: 6.2.9200.22376, метка времени: 0x5a90b3eb
Имя сбойного модуля: ntdll.dll, версия: 6.2.9200.22376, метка времени: 0x5a90c271
3) При инициализации \\user\Canon LBP2900 произошла ошибка в \\user\print$\COLOR\CNZ007.ICC. Ошибка: 5. Отказано в доступе.
. Это может быть следствием нестабильной работы системы или нехватки системных ресурсов.
4) Entry Function: DrvPrinterEvent, Base Address: 0000000068E60000, Exception Address: 000007FD13E966F8, Exception Code: ACCESS_VIOLATION
5) Имя сбойного приложения: spoolsv.exe, версия: 6.2.9200.22376, метка времени: 0x5a90b3eb
Имя сбойного модуля: ntdll.dll, версия: 6.2.9200.22376, метка времени: 0x5a90c271
Код исключения: 0xc0000374
Смещение ошибки: 0x00000000000da535
Идентификатор сбойного процесса: 0x4474
Время запуска сбойного приложения: 0x01d58d9a902db136
Путь сбойного приложения: C:\Windows\System32\spoolsv.exe
Путь сбойного модуля: C:\Windows\SYSTEM32\ntdll.dll
Идентификатор отчета: e31172f2-f98d-11e9-9450-0cc47acd844c
6) Redirection of additional supported devices is disabled by policy.
Что происходит? Как лечить?
- Вопрос задан более года назад
- 2005 просмотров
1) Перезапуск службы печати.
2) Очистка папки C:\Windows\System32\Spool
3) Перзагрузка компьютера.
Если проблема с принтерами определённого производителя, то вычистить от них систему, переустановить драйвера и перезагрузить.
Источник