IT решения от SiteTo
Пятница, 13.12.2024, 11:32
» Меню сайта
» Форма входа
» Категории раздела
[8]
Active Directory [2]
Командная строка [10]
Службы и процессы [3]
Программы [4]
Удаленное управление [6]
Сети [4]
Исправление ошибок Windows [8]
Windows 2008 R2 [8]
» Поиск
» Реклама
Главная » Статьи » Windows и ПО » Удаленное управление

Как решить проблемы подсистемы печати в терминальном сервере
Сегодня я бы хотел поделиться своим опытом устранения проблем печати на терминальном сервере Microsoft.

Подробности под катом.

Вместо Intro


Наверняка, почти каждый системный администратор, работающий с Windows и, в частности, с терминальным сервером, сталкивался с проблемами печати.
Разрывается телефон, у всех одна и та же проблема: «Нажимаю на печать — ничего не происходит!». Идем смотреть логи и видим следующую картину:

image

Знакомо? Никаких подробностей, ничего — гадайте, господа администраторы! На форумах в интернете полно вопросов по этой теме и очень мало полных, структурированных ответов. Что ж, попробуем собрать в кучу все варианты решений.

Причины и решения


Итак, из-за чего может происходить подобная ситуация? Большую часть подобных ситуаций вызывают установленные на сервере драйверы.

  • Необходимо помнить, что драйверы у клиентов и на сервере должны быть идентичны
  • Убедитесь, что включена изоляция драйверов
  • Удалите все драйвера на сервере и попробуйте использовать TS Easy Print
  • Попробуйте решения сторонних компаний


А теперь пройдемся подробнее по всем пунктам. Для начала установим на наш терминальный сервер роль «Службы печати и документов».

image

Это позволит нам удобно управлять драйверами и принтерами, установленными в системе.

Идентичные драйвера


Думаю, тут особо не о чем рассказывать. Стоит помнить, что драйвера необходимо брать с официальных страниц изготовителя принтера. Так же еще один момент — стабильнее всего ведут себя PCL5. Если есть возможность выбора между PCL5 и PCL6 — стоит установить PCL5 (соответственно, серверу и клиенту).

Изоляция драйверов


В Windows 2008 появилась замечательная возможность изоляции драйверов принтера. Теперь драйвер принтера подгружается не Spoolsv.exe а специальным процессом PrintIsolationHost.exe. При «вылетании» драйвера принтера «слетает» только один экземпляр PrintIsolationHost.exe, а сама служба «Диспетчера печати» остается работоспособной, что, как понимаете, весьма влияет на настроение пользователей ;)

Чтобы включить данную возможность, нам необходимо открыть редактор локальной групповой политики (gpedit.msc) и пройти следующим путем: «Параметры компьютера -> Административные шаблоны -> Принтеры». Находим и включаем следующие пункты:

  • Выполнить драйверы принтеров в изолированных процессах
  • Переопределить параметр совместимости выполнения драйвера печати, назначенный драйвером печати

Будет выглядеть следующим образом:

image

TS Easy Print


Видимо, вняв наконец стенаниям системных администраторов, компания Microsoft решила что-то сделать с необходимостью ставить зоопарк драйверов на терминальный сервер и падающим из-за этого spoolsv.exe. В итоге, на свет родилась технология TS Easy Print. Ключевой особенностью является, то, что больше нам не нужно устанавливать на сервер драйвера для каждого принтера — вместо этого используется унифицированный драйвер Remote Desktop Easy Print, соответственно, мы уходим от проблемы падающего спулера — ведь все операции с печатью выполняются на компьютере клиента.
Для того, чтобы явно определить, что мы хотим использовать на терминальном сервере TS Easy Print, необходимо пройти опять же в редактор локальной групповой политики (gpedit.msc) по следующему пути: «Параметры компьютера -> Административные шаблоны -> Компоненты Windows -> Службы удаленных рабочих столов -> Узел сеансов удаленных рабочих столов -> Перенаправление принтеров». Нас интересуют следующие пункты, которые надо включить:

  • Использовать в первую очередь драйвер принтера Easy Print удаленного рабочего стола
  • Перенаправлять только используемый по умолчанию принтер клиента

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

image

Далее, необходимо очистить наш сервер от лишних драйверов принтеров. Это можно сделать в менеджере роли «Службы печати и документов».
Внимательно удаляйте драйвера! Необходимо оставить в живых такие вещи, как «Remote Desktop Easy Print» и «Microsoft XPS Document Writer». Именно они и отвечают за передачу печати на клиента.

Теперь перейдем к требованием на клиенте. Их всего два — использование протокола RDP версии не ниже 6.1 и .NET Framework 3.0 с пакетом обновления 1 (SP1). Больше от них ничего не требуется.

Решения сторонних компаний


Избавиться от проблемы падающего спулера призваны такое ПО как, например, ScrewDrivers (сайт). Оно предоставляет клиент-серверную архитектуру.
Сервер ScrewDrivers — это компонент, который необходимо установить на серверы, на которых планируется использовать печать в терминальном сеансе. Клиент ScrewDrivers должен быть установлен на рабочих станциях. Именно этот компонент позволяет создать на терминальном сервере виртуальные принтеры, которые соответствуют локальным принтерам пользователя.
В целом, напоминает Easy Print, но не бесплатно (впрочем, есть лекарства ;).

Заключение


На этом хочу откланяться. Возможно информация не полная — буду рад услышать дополнения. Надеюсь, это поможет кому-то избежать часов нервотрепки ;)
Удачи!


Источник: http://habrahabr.ru/post/140106/
Категория: Удаленное управление | Добавил: t0nick (25.08.2012)
Просмотров: 3191 | Теги: сервер печати, rdp | Рейтинг: 0.0/0
Всего комментариев: 0
Добавлять комментарии могут только зарегистрированные пользователи.
[ Регистрация | Вход ]
» Реклама
» Мото ремонт
» Статистика

Онлайн всего: 1
Гостей: 1
Пользователей: 0
Copyright MyCorp © 2024Хостинг от uCoz