Как решить проблемы подсистемы печати в терминальном сервере
Приветствую, %habrausername%!
Сегодня я бы хотел поделиться своим опытом устранения проблем печати на терминальном сервере 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, но не бесплатно (впрочем, есть лекарства ;).
Заключение
На этом хочу откланяться. Возможно информация не полная — буду рад услышать дополнения. Надеюсь, это поможет кому-то избежать часов нервотрепки
Удачи!
На чтение 13 мин Просмотров 2.9к.
Содержание
- Шаг 1
- Виртуальный сервер на базе Windows
- Шаг 2
- Настройка
- Особенности практического использования
- Заключение
Доброго всем дня (или чего там у вас сейчас).
Вы наверное думаете, что сейчас пойдет речь о сервере терминалов, удаленном доступе, печати через хитрожопую непростую последовательность компьютер->сервер->компьютер->принтер HP? Вы чертовски правы! Представляю вам небольшой рассказ: как я победил сообщение «Параметр задан неверно» при печати на HP LaserJet из сеанса удаленного доступа.
Стоит у нас Сервер терминалов. Вернее, теперь это модно называть «сервер удаленных рабочих столов«. ОС – Microsoft Windows Server 2008 R2 Standart. На сервере установлена 1С-Предприятие с которым, собственно, клиенты сервера и работают. Так повелось, что принтеры у клиентов разные, но все одного производителя – Hewlett Packard.
Первым, если склероз мне не изменяет, начал бунтовать HP LaserJet P1566. Подключенный к компьютеру с Windows 7 Pro, он работал без нареканий. Но при попытке распечатать что-либо из 1С (из сеанса удаленного рабочего стола) молчал как партизан. Ну типа, нажал «Печать» – и ничего. Ни распечатанного документа, ни ошибки. Just silence. Ни на какие уловки и провокации не поддавался. Установка и переустановка драйверов разных версий не помогала, даже всемогущие и всезнающие поисковики выдавали всякий фарш из информации, дабы не признаваться что тут они бессильны. Удалось лишь выяснить, что если попытаться из удаленного сеанса распечатать текстовый документ из блокнота, получается ошибка «Параметр задан неверно». Это была первая зацепка. Хотя ни «мастер исправления неполадок», будь он неладен, ни поиски по подробностям полученной ошибки ни к чему не привели.
Вобщем, поставил вместо этого партизана другую модель (HP LaserJet 1022), которая заработала как положено (была тогда такая возможность).
Долго ли, коротко ли, да только начал и другой принтер страдать таким же безобразием. Я уже начал подумывать, что это заговор машин против человечества. Но как-то очередной раз, разбираясь как там происходит печать на сервере удаленных рабочих столов, набрел на описание новомодной фичи от майкрософт – TS Easy Print. Оказывается печатать родными драйверами принтера с сервера нынче моветон и Майкрософт решила осчастливить системных администраторов новой технологией. Если интересуетесь подробностями, в конце статьи есть ссылки.
Как можно догадаться, далее я отключил использование по умолчанию Easy Print и – о чудо, все заработало!
После чего я вспомнил о страждущих, попавшихся мне на просторах рунета, страдающих от этой же проблемы. Наиболее подходящим местом для описания решения мне показался форум Microsof TechNet (этого блога тогда еще не было). Теперь вот решил этот случай зафиксировать для истории и здесь, хотя, вполне возможно, что, с обновлениями Server 2008 R2, эта проблема уже решена, у меня пока нет желания проверять. В поисковиках подобного описания я не нашел, посему дублирую свой пост из TechNet:
На сервере терминалов:
Пуск -> Выполнить -> gpedit.msc -> Конфигурация компьютераАдминистративные шаблоныКомпоненты WindowsСлужбы терминаловСервер терминаловПеренаправление принтеров -> использовать в первую очередь драйвер принтера Easy Print служб терминалов. Отключай нафик!
Теперь перезапусти сеанс клиента, у которого проблема с LaserJet 1120. И в его сеансе: Пуск, Устройства и принтеры, HP LaserJet M1120 (перенаправлено бла. бла. ), правая кнопка мыши, Свойства принтера, вкладка Дополнительно.
В графе «Драйвер» не должен быть Easy Print Driver. Если эта гадина ещё там, значит на сервер надо установить подходящую версию драйвера для твоего принтера.
Новая волшебная технология Microsoft Easy Print Driver предназначалась освободить администраторов от установки драйверов принтеров на сервер терминалов. И у многих, дай бог ей здоровья, работает. Но, по крайней мере, с некоторыми моделями HP выдает труднодиагностируемую ошибку. (У меня не работает с HP LaserJet Pro 1566, HP LaserJet Pro M1212nf и HP LaserJet P1606dn). Кроме того, говорят, EPD способна превратить три страницы документа в 15мб трафика.
По-умолчанию, сервер терминалов пытается использовать Easy Print Driver, и если не получается (например, клиент не поддерживает), подбирает родной драйвер принтера. После отключения «Использовать в первую очередь драйвер принтера Easy Print», сервер наоборот, в первую очередь найти подходящий принтеру драйвер, а потом использует Easy Print.
(там, кстати, в коментах девушка описала такую же ситуацию как у нас с тобой)
Может пригодиться при установке родного/подходящего драйвера:
Шаг 1
Проверить, что в настройках RDP-файла настроен проброс локальных ресурсов до сервера.
Для этого необходимо кликнуть по RDP-ярлыку правой кнопкой мыши и выбрать строку Изменить. Откроется окно с параметрами, Вам нужно перейти на закладку Локальные ресурсы и поставить галочку Принтеры.
Если Ваш принтер поддерживает функцию EasyPrint, тогда необходимо лишь убедиться, что на хост добавлена роль сервера удаленных рабочих столов, так как при ее добавлении устанавливается непосредственно драйвер EasyPrint. На этом настройка закончена и можно приступать к печати документов.
Виртуальный сервер на базе Windows
Если Ваш принтер не поддерживает функцию Easy Print, тогда Вам необходимо установить драйвер на сервер для Вашей модели принтера. Как это сделать читайте далее.
Шаг 2
Далее -> Роли сервера -> Службы печати (поставить галочку напротив) -> Далее -> Далее (по умолчанию выбран параметр «Сервер печати») -> Установить -> Перезагрузить сервер
В диспетчере сервера – конфигурация – локальные пользователи – группы – print operators добавляем свою учетную запись (администратор)
Идем: Серверы печати – название вашего компьютера с которого подключаетесь – драйверы ПКМ добавить драйвер
Установить с диска – указываем файл *.inf , прогоняем мастер установки.
В качестве альтернативы использования традиционной системы печати в Windows 2008 появилась технология TS Easy Print, позволяющая избежать установки драйверов для перенаправленных принтеров на терминальном сервере. Благодаря этому значительно повышается стабильность работы как службы диспетчера очереди печати, так и всего терминального сервера в целом.
Внедрение TS Easy Print не требуется дополнительной установки серверной и клиентской части. Достаточно лишь наличие на рабочей станции клиента удаленного рабочего стола версии 6.1 (или старше) и .NET Framework 3.0 SP1 (или старше).
Статья разделена на два основных раздела.
Первая часть посвящена способам настройки и управления технологией TS Easy Print при помощи групповых политик и консоли управления печатью.
Во втором разделе собран практический опыт автора по использованию TS Easy Print, а также приведен ряд примеров из форумов Microsoft Technet.
Настройка
Для управления настройками печати на терминальном сервере в Windows Server 2008 существует несколько групповых политик. Найти их можно в следующем контейнере:
Computer ConfigurationAdministrative TemplatesWindows ComponentsTerminal ServicesTerminal ServerPrinter Redirection.
В русскоязычном интерфейсе это
Конфигурация компьютераАдминистративные шаблоныКомпоненты WindowsСлужбы терминаловСервер терминаловПеренаправление принтеров (рис. 1).
Рис. 1. Групповые политики для управления перенаправленным принтерами
Рассмотрим каждую из них более подробно.
Таблица 1: Политики управления печатью на терминальных серверах
Групповая политика (в скобках представлен
русский вариант названия)
Описание функциональности
Do not set default client printer to be default printer in a session
(Не устанавливать используемый по умолчанию
принтер клиента в качестве принтера для сеанса)
Определяет будет ли принтер по умолчанию на клиенте автоматически установлен как принтер по умолчанию в терминальной сессии. Если этот параметр не задан, пользователь может самостоятельно задать принтер по умолчанию в терминальной сессии.
Do not allow client printer redirection
(Не разрешать перенаправление клиентских принтеров)
Позволяет запретить подключение клиентских принтеров к терминальной сессии. Включение этой политики отключает перенаправление принтеров.
Specify terminal server fallback printer driver behavior
(Задать поведение сервера терминалов при
выборе резервного драйвера принтера)
Не смотря на существование этой политики использовать её можно только на Windows Server 2003.
Use Terminal Services Easy Print driver first
(использовать в первую очередь драйвер принтера
Easy Print служб терминалов)
Если эта политика включена или не настроена, сервер терминалов сначала попытается использовать драйвер принтера TS Easy Print для установки всех клиентских принтеров. Если по какой-либо причине драйвер TS Easy Print не доступен, используется драйвер принтера на терминальном сервере, соответствующий принтеру на клиентском компьютере. Если драйвер не найден на терминальном сервере, этот принтер не может быть перенаправлен.
Redirect only the default client printer (Перенаправлять
только используемы по умолчанию принтер клиента)
Включает перенаправление только принтера по умолчанию. Остальные принтеры не перенаправляются.
Use Terminal Services Easy Print Driver First
Redirect Only The Default Client Printer
также можно найти в пользовательском разделе групповых политик в контейнере
User ConfigurationPoliciesAdministrative TemplatesWindows ComponentsTerminal ServicesTerminal ServerPrinter Redirection.
Отдельно следует упомянуть о способах управления принтерами системными администраторами. По сравнению с Windows Server 2003, изменился механизм отображения доступных принтеров. Во время работы процесса Winlogon, диспетчер очереди печати перечисляет только принтеры, которые доступны пользователю в рамках его текущей сессии (вместо перечисления всех перенаправленных принтеров).
Однако, даже не смотря на то, что системный администратор не может видеть принтеры других пользователей, есть обходной маневр для получения информации о перенаправленных принтерах и выполнения с ними ряда административных задач. Члены группы «Print Operators» («Операторы печати») могут увидеть все перенаправленные принтеры в консоли управления печатью «Print Management Console» и панели управления принтерами. Для этого необходимо выполнить следующие действия.
1. Добавить себя в группу «Print Operators».
2. Установить роль «Print Services» на сервер.
3. Запустить консоль «Print Management».
По умолчанию администраторы и операторы печати не имеют прав на управление перенаправленными принтерами и могут только видеть их в консоли. Для управления перенаправленными принтерами необходимо предварительно захватить права владельца на него. Это делается следующим образом.
1. Открыть консоль управления печатью и щелкнуть правой клавишей мыши по выбранному принтеру.
2. Выбрать «Properties».
3. Перейти на закладку «Security».
4. Нажать «Advanced».
5. Перейти на закладку «Owner» (рис. 2).
Рис. 2. Захват прав владельца
6. Выбрать «Print Operators» и дважды нажать «Ок».
7. Закрыть все окна управления принтером.
8. Заново открыть окно свойств принтера.
9. Перейти на закладку «Security»
10. Добавить группе «Print Operators» право «Manage Printer».
Рис. 3. Добавление прав управления
Члены группы Print Operators должны использовать право Manage Printers только для выполнения следующих задач:
· удаление перенаправленного принтера;
· открытие очереди печати перенаправленных принтеров;
· управление заданиями на печать для перенаправленных принтеров.
Остальные действия, такие как переименование, установка для принтера свойств по умолчанию и предпочтений печати не поддерживаются.
В моей практике это понадобилось для решения проблемы с уходом в отключенное состояние после рестарта службы диспетчера очереди печати.
Особенности практического использования
В этой части я хотел бы рассказать о проблемах которые могут возникнуть в процессе использования технологии TS Easy Print и способах их решения. Информация представлена в виде описания проблемы и возможного способа её решения. По возможности, проблема проиллюстрирована примерами из форумов Microsoft Technet.
Проблема 1. Нестабильность службы диспетчера очереди печати
Основной предпосылкой внедрения TS Easy Print являются сбои в службе диспетчера очереди печати при использовании драйверов для принтеров на терминальном сервере. Эта проблема также актуальна и в «смешанной» среде. Если на терминальном сервере параллельно используются как TS Easy Print, так и традиционная система печати, проблемы могут только усугубиться. Это связано с тем, что при перезапуске службы диспетчера очереди печати, перенаправленные принтеры переходят в состояние offline и становятся недоступными для печати. Для наиболее быстрого решения этой проблемы требуется переподключение терминального сеанса. Всё это вызывает массу негативных отзывов (пример на форумах Microsoft Technet) со стороны конечных пользователей.
В качестве глобального решения этой проблемы можно рассмотреть полное удаление драйверов принтеров и сопутствующих им элементов с терминального сервера. Однако и эта операция может вызвать массу проблем (пример на форумах Microsoft Technet), так как вместе с драйверами принтеров могут удалиться драйвера Terminal Services Easy Print и Microsoft XPS Document Writer. Без них перенаправление принтеров по технологии TS Easy Print работать не будет.
В связи с этим, необходимо крайне осторожно относиться к удалению драйверов на терминальном сервере при помощи специальных утилит:
Перед их использованием настоятельно сделать резервное копирование системы.
Альтернативным способом является ручное удаление драйверов. Это делается следующим образом.
1. Перейти в «Панель Управления».
2. Выбрать «Принтеры»
3. Щелкнуть «Свойства Сервера» (рис. 4)
Рис. 4. Свойства сервера печати
4. Перейти на закладку «Драйверы» (рис .5)
Рис. 5. Драйверы принтеров
5. Поочередно удалить все драйверы кроме Terminal Services Easy Print и Microsoft XPS Document Writer.
Кроме того, можно дополнительно удалить данные из реестра и файловой системы. Более подробную информацию об этом можно получить в статье Print Spooler Crash Troubleshooting Steps.
Если терминальные сервера находятся терминальной ферме, и для соединения с ними используется ключ /admin, то при проверке нужно учитывать, что при таком типе подключения TS Easy Print не работает по умолчанию (KB947723).
Проблема 2. Печать «иероглифов» на перенаправленных принтерах»
При печати по технологии TS Easy Print могут отображаться «иероглифы». Обычно это вызывается старой версией .Net Framework. Установка более новой версии данного программного продукта может решить данную проблему. Данная проблема актуальна для старых версий клиентских операционных систем. Для Windows 7 дополнительная установка .Net Framework необязательна.
Проблема 3. Перенаправление принтеров не работает
Для решения данной проблемы следует проверить настройки перенаправления для клиента удаленного рабочего стола, на терминальном сервере, результирующие групповые политики и параметр реестра:
HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWds
dpwdfEnablePrintRDR.
Проблема 4. Пользователи не могут печатать на перенаправленных принтерах при совмещении ролей терминального сервера и контроллера домена
При совмещении ролей терминального сервера и контроллера домена у пользователей могут возникнуть проблемы с печатью (пример на форумах Microsoft Technet).
Для решения нужно дать права modify для группы everyone на папку: C:WindowsSystem32spool или воспользоваться статьей KB968605.
Проблема 5. Снижение скорости печати
Скорость печати может существенно снизиться после применения обновления KB954744, решающего проблему с некорректной ориентацией страниц при печати на перенаправленых принтерах. Для решения этого надо установить дополнительное обновление KB954773.
Проблема 6. Не все принтеры перенаправляются в терминальную сессию
По умолчанию число перенаправляемых принтеров ограничено 20. Это поведение можно исправить добавив в раздел реестра
HKEY_LOCAL_MACHINESOFTWAREPoliciesMicrosoftWindows NTTerminal Services
ключ MaxPrintersPerSession и задав в нем максимальное число перенаправляемых принтеров.
Проблема 7. Поддержка тонких клиентов
Одним из основных минусов технологии TS Easy Print являются требования к версии клиента удаленного рабочего стола и установке .Net Framework. Достаточно много тонких клиентов (особенно произведенных несколько лет назад) не имеют достаточно дискового пространства для использования операционной системы, содержащей данные программные продукты. Для остальных можно воспользоваться новой версией Windows Embedded 2009.
Заключение
В статье рассмотрена практическая сторона использования технологии TS Easy Print. Особое внимание уделено проблемам, которые могут возникнуть при переходе на новую систему печати. Не смотря на достаточно большое число перечисленных проблем, следует отметить, что технология TS Easy Print уже зарекомендовала себя с самой лучшей стороны и может быть использована в производственных целях. В качестве альтернативы TS Easy Print могут использоваться сторонние программные продукты (например, ThinPrint). Однако следует учитывать, что большинство таких продуктов платные и требуют установки дополнительного программного обеспечения.
Автор статьи не я, позаимствовано у http://lpine.org/
Перенаправление принтеров в терминалах (MS Terminal Services & Remote Desktop Services)
Часть первая, теория
Введение, «Что такое печать в терминальных службах»
1. Как включить
2. Групповые политики
3. Схемы «родной драйвер» и «драйвер подстановки»
4. Схема со Screwdrivers
5. Совместимые с терминалами принтеры
6. Печать через VPN
Часть вторая, решение проблем
1. Типы проблем с печатью в терминалах
2. Проблемы со спулером
3. Драйвер перенаправления
4. Реестр
5. Визард устранения проблем от Майкрософт
6. Если больше ничего не помогает, а печатать принтер должен
7. Печать на медленных каналах
8. Полезные ссылки
Что такое печать в терминальных службах
В 90-х Майкрософт разработал специальную роль для Windows NT 4.0 Server под названием Terminal Server. Роль оказалась популярной и востребованной. Функционал у неё довольно простой: используя специальное ПО mstsc.exe («Подключение к удалённому рабочему столу»), входящее в поставку всех современных версий и редакций клиентских ОС Windows (кроме, пожалуй, Windows Phone), можно подключаться по сети к удалённому серверу и видеть рабочий стол удалённого сервера и управлять им при помощи мышки и клавиатуры как своим собственным.
Особенно полезным оказалось то, что за одним сервером могут работать сотни пользователей через интернет, и у каждого будет на этом сервере свой собственный рабочий стол, а установленное на сервере программное обеспечение и его аппаратные ресурсы разделяются между всеми пользователями.
В отличие от множества других методов транспортировки изображения по сети (VNC, RAdmin, DameWare, Teamviewer, AMMYY Admin и проч.), майкрософтовские терминалы не гонят отсканированную с видеокарты графику, вместо этого они заново отрисовывают все окна на стороне клиента, пользуясь Windows API и проч, передавая по сети только текстовые команды типа «отрисовать такое-то окно такого-то размера с таким-то градиентом». В результате требования по ширине канала для работы очень низкие, и очень высокая скорость работы в стандартных оконных интерфейсах Windows. Впрочем, отличную от окошек графику терминалы гонят также, как и конкуренты, поэтому в терминалах всегда начинаются тормоза при попытке смотреть/редактировать видео и графику.
Протокол, по которому осуществляется передача данных с сервера терминалов на клиентскую рабочую станцию, называется RDP. С выходом OS Windows Server 2008 R2 терминалы переименовали в Microsoft Remote Desktop Services (службы удалённых рабочих столов). Но, как это обычно бывает в Майкрософт, переименование коснулось только поверхностного слоя, глубоко же внутри функции, ключи реестра и проч. по-прежнему называются на Terminal Services. Кстати, иногда бывает даже такое, что при троекратном переименовании продукта на самом поверхностном слое продукт имеет третье название, чуть глубже — второе, более старое, а на самом низком уровне абстрагирования — первое, ещё более старое, именно так обстоит дело с продуктом Forefront TMG, впрочем, не будем отвлекаться.
Существует и более серьёзная версия терминалов, которой занимается компания Citrix. Это решение для крупных компаний, держащих т.н. «фермы» терминальных серверов. За это решение платятся дополнительные деньги сверх уже заплаченных за лицензии на майкрософтовские терминалы, но оно серьёзно облегчает работу, т.к. позволяет централизованно управлять всей фермой, централизованно ставить софт и его настраивать, по-умному раскидывать юзеров между членами «фермы» и т.п. Это решение переименовывалось ещё большее количество раз, начиная от Citrix WinFrame, через MetaFrame, через Citrix Presentation Server, до Citrix XenApp. Протокол для этого решения называется ICA, однако, внутри он является тем же RDP (и потому для XenApp верно многое из того, что верно для RDP и наоборот), исходные коды которого MS лицензирует Цитриксу, без чего XenApp был бы, скорее всего, невозможен и Цитриксу пришлось бы довольствоваться унылым, тормозным и требовательным к ширине канала методом транспортировки десктопа, аналогичным тем, которые используются Radmin, Teamviewer и так далее.
Удалённый десктоп это прекрасно, но рано или поздно юзер сталкивается с тем, что из удалённых приложений ему нужно печатать на принтер. При этом редко кому и когда нужно печатать на принтер, который подключен к удалённому серверу терминалов, который от юзера находится нередко в сотнях и тысячах километров. Печатать нужно на свой, локальный принтер. Для решения этой задачи предлагались в разное время разные методы, все они были не без недостатков, порождающих различные проблемы, которые мы тут и постараемся исчерпывающе описать и предложить соответствующие им решения. Эти методы в разных контекстах называются «printer mapping», «printer redirection», « Easy Printing» а по-русски «перенаправление печати», «сопоставление принтеров» и т.д.
Поскольку аудиторией этого текста являются русскоязычные юзеры и админы, то большинство скринов будет на русском, тем более что в подавляющем большинстве организаций в России терминальные серверы стоят русифицированные, т.к. на них работают пользователи. Среди back-end серверов доля нерусифицированных, конечно, выше чем среди терминальных серверов.
1. Как включить печать в терминальных службах
Очевидное (опытные админы могут пропустить), а именно, как включить перенаправление печати, если оно не включено. На стороне клиента для подключения к серверу терминалов используется программа mstsc.exe, она же «Подключение к удалённому рабочему столу».
Нажать на «параметры», в закладке «локальные ресурсы» убедиться, что стоит галка на «Принтеры». Не требует административных прав.
На стороне сервера нужно запустить tscc.msc (в 2008 и выше tsconfig.msc), на RDP-Tcp нажать правую клавишу мыши, выбрать «Свойства» и в закладке «параметры клиента» убедиться, что НЕ стоит галка на отключить «Сопоставление принтеров». Это действие требует наличия прав администратора на сервере терминалов.
На этом всё, после выполнения этих нехитрых требований по мнению Майкрософт Вы можете печатать из удалённого рабочего стола на свой локально установленный принтер. В этом скриншоте показан удалённый рабочий стол, на который «пробросился» локально установленный принтер Samsung:
Не пробросился? Читаем дальше.
2. Групповые политики
Бывает и такое, что галка на отключить «сопоставление принтеров» на предыдущем скриншоте стоит, а убрать её нельзя, т.к. надпись серая, или, говоря в англоязычной программистской терминологии, этот «checkbox» is «greyed out»:
Такое бывает, если настройками сервера терминалов управляют групповые политики (group policies). Если сервер терминалов является членом домена Windows (он же Active Directory Domain Services), а скорее всего это так, то для управления групповыми политиками нужно быть администратором домена. Для установки соответствующих настроек администратору домена следует на контроллере домена запустить gpmc.msc (если её нет, то dsa.msc) и открыть интерфейс редактирования политики, относящейся к данному терминальному серверу. Если же сервер терминалов не входит в домен и является т.н. «stand-alone» сервером, то на нём также есть локальные групповые политики, которые можно отредактировать при помощи gpedit.msc. Интерфейс в обоих случаях одинаковый, поэтому инструкции подойдут для обоих случаев:
Здесь следует обратить внимание на настройку «не разрешать перенаправление клиентских принтеров», она должна быть в состоянии «не задано» или «отключено».
3. Схемы «родной драйвер» и «драйвер подстановки»
Если настройки по перенаправлению принтеров выполнены как указано выше, то принтер будет перенаправляться ТОЛЬКО в том случае, если на терминальном сервере ТАКЖЕ установлены драйверы на принтер того производителя и той модели, который стоит у юзера локально. В противном случае перенаправляемый принтер на сервере терминалов скорее всего создан не будет, а в журнале событий «Система» появится сообщение от провайдера TermServDevices с кодом 1501 и содержанием, указывающим на то, что на терминальном сервере не установлен соответствующий драйвер.
Поэтому для работы перенаправления печати с сервера терминалов на локальный принтер следует ставить драйвер принтера и на локальном ПК, с которого осуществляется подключение, и на удалённом сервере, на который осуществляется подключение.
Но, такая схема работы имеет очевидные недостатки. Например, туговато приходится администраторам серверов, к которым подключаются сотни людей у многих из которых установлены самые разные принтеры. Такой сервер терминалов рано или поздно превращается в помойку из десятков и сотен драйверов принтеров, которые могут конфликтовать друг с другом и в конце концов вообще угробить всю подсистему печати целиком (о том, как её восстанавливать см. ниже главу про cleanspl). Кроме этого не на все принтеры, особенно принтеры для диапазона SOHO, существуют драйверы для серверных операционных систем, а драйверы для десктопных систем (таких как XP/Vista/7/8) часто не встают на соответствующие им серверные ОС (такие как 2003/2008/2008R2/2012). Ну и в конце концов установка драйверов это муторный процесс, которым администратору заниматься неохота.
Слава Гейтсу, существует и альтернативное решение, а именно, подстановочный драйвер. Дело в том, что несмотря на различия, большинство принтеров имеет много общего и, невероятно, но факт, на них можно печатать с использованием унифицированного PCL или PS драйвера. Подстановку унифицированного драйвера можно задать только с помощью групповых политик, поэтому для установки соответствующих настроек администратору следует на контроллере домена запустить gpmc.msc (если её нет, то dsa.msc) и открыть интерфейс редактирования политики, относящейся к данному терминальному серверу. Если же сервер терминалов не входит в домен и является т.н. «stand-alone» сервером, то на нём также есть локальные групповые политики, которые можно отредактировать при помощи gpedit.msc. Интерфейс в обоих случаях одинаковый, поэтому инструкции подойдут для обоих случаев:
Если включить политику «Поведение сервера терминалов при выборе подходящего драйвера принтера» и в следующем окошке выбрать подстановку PCL и/или PS драйвера, то при подключении к серверу терминалов у юзера будет автоматически создаваться перенаправленный принтер, даже если на сервере соответствующий драйвер не установлен.
Увы, этот метод имеет своим недостатком то, что подстановочный драйвер сработает не для всех принтеров. Для большинства принтеров он работает, но для некоторых нет. Прежде всего этот метод не подойдёт для т.н. host-based драйверов принтеров, т.к. они не являются PCL- или PS- совместимыми. Иногда заставить печатать host-based принтеры всё-таки можно, установив на сервер драйверы для этих моделей, но некоторые модели не имеют драйверов для серверных OS. В ряде случаев эта проблема решаема, см. далее главу о Tricerat Screwdrivers. Подстановочный драйвер, если посмотреть на него внимательно, является драйвером HP DeskJet 500:
С выходом ОС Windows Server 2008 Майкрософт представил решение Easy Printing, которое позиционировалось как панацея для многочисленных проблем с печатью в терминалах. Идея заключается в создании специального перенаправленного принтера с Easy Print драйвером, который печатает в XPS (Майкрософтовский открытый формат документов, призванный заменить pdf, но успеха не снискавший), а XPS затем переправляется на сторону клиента, где благополучно печатается на локальный принтер как XPS документ. В теории такой метод печати решил бы все проблемы, но на практике то ли Майкрософт этот метод до ума не довёл, то ли на него надавили производители принтеров и/или альтернативных решений для печати в терминалах, но Easy Printing проблем с печатью так и не решил: всё осталось как и раньше: подключаешь к терминальному серверу нового клиента и надеешься на то, что его принтер удастся «подружить» с терминалами, своего рода «connect and pray». Как бы то ни было, Easy Printing включается также через групповые политики, там же, где и драйвер подстановки:
4. Схема со Screwdrivers
Поскольку проблем с печатью на терминалах всегда была адовая прорва (по данным некоторых ИТ аутсорсеров, проблемы с печатью это наиболее часто встречающиеся проблемы), свою нишу нашли компании, которые делали процесс печати из терминалов более удобным, а иногда и вообще его просто «делали», когда иначе печатать было просто невозможно.
Решение Tricerat Screwdrivers платное. Оно состоит из серверной части (ставится на сервере терминалов) и клиентской части (есть msi пакеты, удобные для масс-деплоймента через ГП или SCCM). Особых настроек не требует и обычно всё прекрасно работает с настройками по-умолчанию после установки на сервере и на всех клиентах. После простой установки обычно клиент оказывается способен печатать на свои принтеры, на которые не удавалось настроить печать без screwdrivers. Поскольку этой статьи тогда ещё не было написано, а спецов по терминальным серверам не так много, то настройка терминальной печати и решение проблем с ней могло затягиваться на часы и дни. Поэтому многие приняли разумное решение по радикальному решению проблем с терминальной печатью: купить и задеплоить Screwdrivers. Кроме собственно печати Screwdrivers позволяют осуществлять тонкий тюнинг терминальной печати, например, регулировать ширину канала для печати:
Но… не всё оказалось так просто. Дело в том, что существуют некоторые, особо жадные производители принтеров (не будем говорить кто, хотя это Hewlett-Packard), которые СПЕЦИАЛЬНО (это не факт, а моё оценочное суждение) отрезают поддержку печати в терминалах на принтерах, позиционирующихся для рынка SOHO. Это всё делается, конечно, для повышения продаж, т.к. решение HP для случаев непечати в терминалах простое: покупайте новый, более дорогой девайс. Такие модели принтеров зачастую не печатают даже со screwdrivers и в этих случаях ничего сделать невозможно, только менять принтер на совместимый с терминалами. О том, как определить совместимость принтера с терминальной печатью рассказываем в следующей главе.
5. Совместимые с терминалами принтеры
Как правило, все современные принтеры любых производителей ценой хотя бы от 5 т.р. совместимы с печатью в терминалах, за исключением Hewlett-Packard. Если Вы верны традициям печати этой компании и хотите приобрести принтер непременно этого производителя, то существует специальный, регулярно обновляемый документ производства Citrix & HP, который легко ищется в Сети по ключевым словам «Citrix XenApp HPPrinters supported» (ссылку намеренно не даю, т.к. постоянно выходят новые версии и меняется URL). Здесь нам поможет информация из первого абзаца, а именно, тот факт, что XenApp есть надстройка над майкрософтовскими терминалами, позволяет с определённой долей уверенности утверждать, что принтеры, поддерживаемые в среде XenApp, скорее всего также будут печатать и в среде MS Terminal Services & MS Remote Desktop Services. Автору пока неизвестно ни об одном случае отклонения от этого правила, и принтеры, поддержка которых заявлена в этом документе, оказывались печатающими и в майкрософтовских терминалах.
Помимо HP, Citrix также поддерживает аналогичные списки и для устройств некоторых других производителей, например, для принтеров Xerox. По мнению автора, сам факт существования таких списков у Цитрикса свидетельствует о том, что производители, для устройств которых составляются такие списки, поддерживают печать в терминалах ПЛОХО. Именно поэтому Цитрикс и вынужден эти списки составлять и публиковать. Отсутствие таких списков в отношении устройств Samsung или Kyocera, по мнению автора, свидетельствует о том, что с печатью в терминалах у этих устройств всё в порядке. Автору, пожалуй, ни разу не доводилось встречать хоть сколько-нибудь серьёзных устройств (исключая понятные случаи вроде переносных персональных принтеров, всяких там древних струйников и т.п.) этих производителей, в которых терминальная печать была бы невозможна.
Увы, список этот неполный и трудно понять, если, конечно, не привлекать к объяснению теории заговора, почему уже давно продающиеся модели принтеров долго не включаются в этот список. Однако, общее правило такое: если модели принтера в списке нет, то лучше не брать: существует значимая вероятность того, что принтер окажется несовместимым с печатью в терминалах.
6. Печать через VPN
Настроить печать на перенаправляемый принтер в терминалах так и не удалось? Есть гарантированно рабочее решение, которое будет работать с любым принтером, на который можно печатать через «службу доступа к общим папкам и принтерам», она же SMB. Для этого локальный принтер следует «расшарить» для общего доступа и установить VPN-канал между клиентским ПК и сервером. Самые простые варианты это RRAS на сервере и PPTP-клиент (встроенный в Windows) на клиентском ПК или OpenVPN. После установки канала необходимо просто подключить печать по сети на расшаренный на клиентском ПК принтер стандартными средствами, убедившись, что прохождению траффика SMB не препятствует firewall и прочее.
Таким же способом к серверу терминалов через VPN можно подключать сетевые принтеры, через «Стандартный порт TCP/IP», для чего нужно обеспечить прохождение порта TCP 9100, используемого для печати на сетевые принтеры.
Единственная возможная проблема с этим способом заключается в отсутствии драйверов для принтера под серверную OS, на которой развёрнуты службы терминалов. Если п. 2 и 3 также не помогают, то в этом случае точно поможет только приобретение нового принтера.
Часть II
1. Типы проблем с печатью в терминалах
Все проблемы с терминальной печатью можно условно разделить на несколько типов. Типы указаны в порядке приоритета при решении проблем с печатью, с учётом трудозатратности шага и вероятности возникновения проблемы именно такого типа.
а) Локальные проблемы с печатью. Для их решения нужно прежде всего убедиться, печатает ли принтер локально. Может, у него бумага кончилась или ещё что. Проблемы этого типа в настоящем руководстве не рассматриваются
б) Проблемы с отсутствием драйверов на сервере терминалов: никакие принтеры не перенаправляются, кроме тех, драйверы на которые входят в стандартную поставку Windows. Для решения проблем такого типа необходимо устанавливать драйверы на сервере и/или настраивать поведение сервера при отсутствующих драйверах (Easy Print и драйвер HP DeskJet 500), см. часть I, п. 2 и п. 3
в) Проблемы с отсутствием печати на успешно проброшенный принтер. Метод решения такого типа проблем следующий: смотрим какой драйвер подцепился к проброшенному принтеру, Easy Print или DeskJet 500, пробуем их менять местами; если не помогает, то ставим на сервер родной драйвер (если их больше 1, то последовательно пробуем все, т.к. в случае HP бывает, что старые драйверы работают, а в новых поддержка терминалов уже отрезана) и убеждаемся, что к проброшенному принтеру подцепился именно родной драйвер; если это не помогает, то продаём клиенту и разворачиваем Tricerat Screwdrivers, предварительно протестировав возможность печати через него в Trial версии; если это не помогает то увы, только замена принтера или печать через VPN, см. часть I, п. 6
Редко возникающие проблемы
2. Проблемы со спулером
Симптомы:
Служба Spooler, она же spoolsv.exe, он же «Диспетчер очереди печати» тупо останавливается без объяснения причин. При рестарте опять останавливается через несколько секунд. Такое часто бывает из-за кривых драйверов на дешёвые принтеры и часто случается на терминальных серверах, на которых используется схема без драйверов подстановки, т.е. устанавливаются драйверы на все модели принтеров, установленных у клиентов. Также могут быть и другие варианты, типа ни один принтер не пробрасывается, хотя драйверы стоят и т.п.
Что делать:
Поскольку указателя на то, из-за чего именно вылетает spooler в таких случаях обычно не бывает, то проще и быстрее всего полностью зачистить всю подсистему печати сервера и заново выполнить настройки печати и поставить драйверы. Для этого пригодится утилита cleanspl.exe из Resource Kit for Windows Server 2003. Запускаем, соглашаемся, утилита полностью выпиливает и зачищает всю подсистему печати сервера. В 2008 и выше не поддерживается, для этой ОС Майкрософт предлагает такое решение: http://support.microsoft.com/kb/2000007
После действия cleanspl.exe мониторы печати нужно восстанавливать вручную с новой аналогичной операционной системы:
Типовой файл реестра прилагается к этому документу. Достоверно известно, что для работы перенаправления печати в терминал требуется USB Monitor, см. ч. II, п. 4.
3. Драйвер перенаправления
Симптомы:
Не создаются перенаправляемые принтеры и в «диспетчере устройств» в «системных устройствах» отсутствует специальное устройство «перенаправитель устройства сервера терминалов», он же «remote desktop device redirector bus», в 2003 выглядит так:
В 2008 R2 выглядит так:
Что делать:
Переставлять драйвер редиректора, inf-файл поставляется вместе с системой, для установки можно воспользоваться утилитой devcon.exe (http://support.microsoft.com/kb/311272):
devcon -r install %windir%infmachine.inf rootrdpdr
Проверять через появление соотв. устройства в списке системных устройств девайс менеджера.
4. Реестр
Симптомы:
Не перенаправляются никакие принтеры. Из-за неверно выставленных прав на реестр или по иным причинам не выставлена правильно или отсутствует запись реестра.
Что делать:
В ключе реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlTerminal ServerWdsrdpwd создать запись типа DWORD fEnablePrintRDR и установить её в 1.
В ключе реестра HKEY_LOCAL_MACHINESYSTEMCurrentControlSetControlPrintMonitorsUSB Monitor создать запись типа «строковой параметр» Driver и установить её значение в usbmon.dll (сам файл правильной версии должен присутствовать в %windir%system32)
5. Визард устранения проблем от Майкрософт
Мне ни разу не помог, но на всякий случай Terminal Server Printer Redirection Wizard Tool
http://www.microsoft.com/en-us/download/details.aspx?id=5640
6. Если больше ничего не помогает, а печатать принтер должен
Стандартные проблемы: переставить последний сервис-пак и накатить обновления, выполнить sfc /scannow, убедиться что принтер таки может печатать на другом таком же терминальном сервере с такой же OS и т.п.
7. Печать на медленных каналах
Особенно касается всяких допотопных DSL модемов, 3G-модемов и т.п. Т.к. для работы терминала не требуется широкополосного доступа, то у пользователя может возникнуть ощущение, что с его интернетом всё ОК, до тех пор, пока он не начнёт печатать. Задание на печать может занимать несколько мегабайт и на медленном канале печататься спустя десятки минут после отправки на печать. Если такое поведение для клиента неприемлемо, можно попробовать Screwdrivers, который позволяет сжимать траффик печати, либо убедить его приобрести нормальный интернет.
8. Полезные ссылки
Группа проблем печати в терминалах: http://ts.veranoest.net/ts_printing.asp
Ключи реестра сервера терминалов: http://etutorials.org/Microsoft+Products/microsoft+windows+server+2003+terminal+services/Chapter+6+Registry/Registry+Keys+for+Terminal+Services/
Если не получилось — заказывайте мастера на выезд http://remont-kompjuterov-perm.ru/
Это не характерная для нашего блога новость, но мы потратили много сил на поиск и устранение данной проблемы, так что решили описать ее решение подробно, чтобы сэкономить время и нервы нашим коллегам.
При печати документов из 1С появляется сообщение «Ошибка печати», при печати документов pdf из Acrobat Reader/Foxit Reader появляется сообщение «Не выбраны страницы для печати». При этом печать документов из Microsoft Office проходит без ошибок:
Рис. 1 Ошибка печати из 1С на сервере терминалов
Рис. 1 Ошибка печати документов pdf на сервере терминалов
Данная проблема наблюдается на серверах терминалов Windows Server 2012R2, принтеры к которым подключаются через сервер печати. Проблема возникает после переподключения пользователя к существующему терминальному сеансу, от которого он отключился ранее, не завершив его (нажав «крестик» или из-за обрыва связи с сервером). Момент ошибки сопровождается сообщением в логах (при включении расширенного логирования):
Имя журнала: Microsoft-Windows-PrintService/Operational
Источник: Microsoft-Windows-PrintService
Код события: 221
Категория задачи:Перечисление принтеров
Уровень: Ошибка
Ключевые слова: Принтер,Удаленная очередь
Описание:
Ошибка при получении сведений кэша CSR для принтера \company-fs01.domain.localP0008, код ошибки 0x2. Контекстные сведения см. в пользовательских данных события.
Ошибка связана с некорректной работой кэша Client Side Rendering, отключить который в свойствах принтера невозможно из-за того, что данная функция намертво зашита в драйверах устройств. Приложения Microsoft Office не используются функцию CSR, а сами подготавливают документы в нужном для принтеров формате, по этой причине при возникновении ошибки CSR печать из 1С и pdf перестает работать, а документы Microsoft Office продолжают распечатываться.
Временное решение инцидента – перезапуск диспетчера печати на сервере терминалов или завершение сеанса пользователя (с последующим входом в систему).
Постоянное решение – внести в параметр реестра:
[HKEY_LOCAL_MACHINESOFTWAREMicrosoftWindows NTCurrentVersionPrintProvidersClient Side Rendering Print Provider]
“RemovePrintersAtLogoff”=dword:00000000
Не понятно, почему факт отключения от сеанса воспринимается сервером терминалом как выход из сеанса, но данный ключ реестра помогает. Успехов!
VeriFone VX 520 – это компактный, стационарный платёжный терминал. Устройство имеет несколько вариантов подключения, а также отличается легкостью использования и может принимать все типы банковских карт.
Благодаря большому объему памяти (500 Мб) терминал обладает высоким уровнем безопасности и производительности. Аппарат оснащён самым быстрым на сегодняшний день процессором и может осуществлять операции, а также шифровку и дешифровку данных в режиме онлайн. Это позволяет проводить процедуру расчёта в несколько раз быстрее, чем на других подобных устройствах, что позволяет оптимизировать работу кассового узла и повысить прибыль.
Инструкция по настройке VeriFone VX 520
Производитель предусмотрел два способа соединения с интернетом:
-
GPRS – позволяет осуществлять выход через мобильный интернет, установив в терминал SIM-карту любого оператора;
-
Ethernet – выход в сеть обеспечивается благодаря подключению кабеля от модема, либо роутера. Достоинство данного способа в стабильной связи на хорошей скорости.
Терминал не имеет Wi-Fi модуля.
Помимо цифровых кнопок клавиатура имеет несколько функциональных клавиш, на каждую из которых возложена своя задача:
-
F1-F4 – эти четыре кнопки располагаются вертикально, с правой стороны от экрана и отвечают за навигацию внутри меню, которое открывается нажатием F1;
-
красная кнопка, с изображением крестика, отменяет совершаемую операцию;
-
желтая кнопка, с изображением стрелочки, указывающей налево, позволяет удалять неправильно внесенные цифры, либо буквы;
-
зелёная кнопка – это подтверждение операции либо ввода.
Перед тем, как начать работу, необходимо проверить, заправлена ли в устройство катушка с чековой лентой. Для этого поднимите крышку, расположенную с верхней лицевой части аппарата, потянув вверх за черный переключатель. Если бумаги нет, либо её осталось мало, положите новую катушку так, чтобы бумага шла из-под катушки в сторону клавиатуры, закройте крышку и оторвите излишки.
Для активации устройства, нажмите на кнопку ввода (зелёная) и удерживайте ее на протяжении 5-10 секунд. Терминал должен включиться и перейти в режим ожидания, на экране высветится [Введите карту]. Для того, чтобы выключить аппарат, нажмите на красную кнопку отмены и удерживайте ее, пока надпись не исчезнет и экран не погаснет.
Инструкция по использованию VeriFone VX 520
Главная задача VeriFone VX 520 это осуществление безналичного расчета, как способа оплаты товаров, либо услуг. Для этого необходимо вставить в устройство банковскую карту, либо провести ею с правой стороны терминала магнитной полосой вниз. Также, при помощи VeriFone VX 520, можно осуществлять операции административного характера (выпуск копии итогового чека, создание X и Z-отчётов, отчётов без гашения и др.). Для этого нужно зайти в меню нажатием на активированном терминале кнопки [F1] и выбрать необходимую операцию при помощи соответствующих функциональных кнопок. Также некоторые операции можно совершить, нажав соответствующую комбинацию «горячих клавиш».
На одинаковых устройствах, на которые было установлено разное программное обеспечение, могут отличаться некоторые разделы меню.
Финансовые операции
Для принятия оплаты от клиента, откройте в основном меню соответствующий раздел, а затем:
-
При помощи цифровой клавиатуры внесите итоговую стоимость покупки. Для ввода копеек, после указания основной суммы, нажмите [*], а затем внесите необходимое значение. Минимальная сумма транзакции, допустимая на устройстве, 1 рубль.
-
Когда сумма указана, вставьте банковскую карту и сделайте подтверждение нажатием зелёной кнопки.
-
В случае необходимости аутентификации, устройство запросит ввод PIN-кода, после того, как покупатель его введёт, снова нажмите не зелёную кнопку.
-
Для списания средств, устройство отправляет запрос в банк. Его обработка может занимать от 3 до 40 секунд.
-
Дождитесь сообщения [Одобрено], и выпуска итогового чека.
-
После того, как клиент поставит на чеке подпись, снова нажмите кнопку подтверждения и распечатанный после этого повторный чек отдайте покупателю.
Если во время транзакции произошёл сбой, и оплата не была произведена, то устройство распечатает фискальный документ с указанием кода ошибки.
Любую, совершенную в течение открытой смены, операцию по оплате можно отменить. В таком случае средства, удержанные с карты покупателя в счет оплаты товаров, либо услуг будут возвращены обратно. Для этого:
-
В главном меню откройте нужный раздел, после чего введите серийный номер предъявленного покупателем фискального документа, подтвердите действие, нажав на [ввод].
-
Информация о данном чеке отразится на дисплее устройства, проверьте корректность данных и нажмите [ввод].
-
Убедитесь, что покупатель предоставил банковскую карту, с которой была совершена оплата, вставьте её и нажмите [ввод];
-
Если всё выполнено верно, терминал распечатает чек, подтверждающий операцию. Средства будут возвращены не карту клиента в течение нескольких секунд, в редких случаях процедура может занять до трех рабочих дней.
Возврат можно совершить только на ту же карту, с которой была совершена оплата.
Функционал VeriFone VX 520
Раздел [Отчёты] — позволяет создавать копию фискального документа. Для этого откройте в главном меню раздел [Отчёты] и укажите [Полный отчёт]. После этого откроется список всех совершённых в течение смены операций, по номеру чека выберите нужный документ и нажмите [Печать копии чека по номеру]. Создать копию чека можно только если смена не была закрыта.
Создать можно не только полный, но и частичный отчет. Они отличаются по своему содержанию:
-
Полный – включает в себя полные данные о совершенных операциях (номер фискального документа, реквизиты карты, по которой совершена оплата, число, а также время создания документа и другое);
-
Короткий – содержит только указание суммы по каждой совершенной транзакции.
Раздел [Служебные операции], дает доступ к следующим функциям:
-
[Сверка итогов] – осуществляет окончание смены и очистку информации, касающейся совершённых в течение неё операций. Программа сверяет записанные данные с архивом банка и выпускает отчет, в котором указано, совпадают данные или нет.
-
«Загрузка ключей» — производит скачивание активных ключей из системы банка на устройство. (Требуется в случае, если на терминале возникло сообщение об ошибке 898).
-
«Проверка связи» — производит тестирование соединения с банком.
Если терминал был ошибочно заблокирован, нажмите на функциональную кнопку [F1], а затем подтвердите действие, нажав [Ввод].
Возникающие в процессе работы неполадки и способы их исправления
Вероятные неполадки |
Способы их исправления |
Устройство не выпускает итоговый чек |
Убедитесь, что в лоток для бумаги заправлена чековая лента Перезагрузите устройство |
Из-за ошибки при соединении с интернетом не получается окончить операцию (GPRS) |
Выключите устройство и включите его через 60 секунд Убедитесь, что на SIM-карте положительный баланс |
Из-за ошибки при соединении с интернетом, не получается окончить операцию (Ethernet) |
Выключите устройство и включите его через 60 секунд Произведите [Загрузку ключей] |
Вот обозначение самых распространённых ошибок на VeriFone VX 520
-
051 – карта покупателя недействительна по причине истекшего срока действия;
-
050 – карта клиента заблокирована;
-
055 – процедура оплаты остановлена банком-эмитентом;
-
076 – средств на счете недостаточно для оплаты по чеку;
-
205 – указана некорректная сумма оплаты;
-
201 – PIN-код введен неверно.
При возникновении серьезных неполадок необходимо обратиться в сервисный центр.
Интеграция VeriFone VX 520 с 1C
Для интеграции VeriFone VX 520 с 1C, необходимо загрузить дополнительно программное обеспечение.
Взаимодействие устройства с 1C происходит в следующем порядке:
-
Программа 1C направляет драйверу запрос, а он, в свою очередь, отправляет его на терминал;
-
Осуществляется обмен информацией между устройством и банковским сервером;
-
В 1C поступает оповещение об исходе операции. Если всё хорошо, аппарат выпускает итоговый чек, если транзакция не прошла, на дисплее терминала высвечивается соответствующая ошибка.
Интеграция VeriFone VX 520 с 1С происходит через USB или RS232.
Для того, чтобы произвести настройку устройства, необходимо:
-
Подсоединить терминал к компьютеру;
-
Инсталлировать необходимое программное обеспечение;
-
Проверить корректность функционирования аппарата. Для этого откройте меню [Пуск], перейдите в [Устройства и принтеры]. Зайдите в свойства VeriFone VX 520;
-
Откройте 1C и перейдите в раздел [Администрирование]. Откройте там [PMK и оборудование], выберите [Подключаемое оборудование] и нажмите [Создать];
-
В открывшейся форме, в качестве типа устройства, выберите [Эквайринговый терминал] и укажите название подключенного оборудования.
Также можно задать дополнительные параметры (например, указать принимаемую валюту и прочее). Когда настройка закончена, необходимо запустить тестирование системы.
Драйвер для терминала VeriFone VX 520
Для настройки взаимодействия VeriFone VX 520 с 1C, необходимо установить на компьютер дополнительные драйверы. Для этого активируйте установочный файл, загруженный на сайте производителя устройства. Если всё прошло успешно, то должен появиться ещё один COM-порт, ему автоматически присваивается номер 9.
Перезагрузка устройства
Перезагрузить VeriFone VX520 можно любым из двух вариантов:
-
Отсоединить устройство от электросети, вынуть аккумуляторную батарею, а через две минуты вернуть всё, как было, и активировать устройство.
-
Зажать комбинацию из кнопок [7] и [Ввод] (зеленая кнопка) и держать, пока не появится запрос пароля. Тогда нажмите [1], а затем чёрную клавишу, расположенную прямо под дисплеем между фиолетовыми кнопками. В появившемся меню выберите «Restart».
Наш каталог продукции
У нас Вы найдете широкий ассортимент товаров в сегментах кассового, торгового, весового, банковского и офисного оборудования
NX |
Внутренняя ошибка терминала, например, отсутствие маршрута сети или сброс ip-адреса |
Техническая проблема-обратиться в техническую поддержку |
Z1 |
Техническая ошибка терминала; если нет приоритета pin, то карта не обслуживается |
Техническая проблема Порядок действий:
|
Z3 |
Невозможно передать авторизационный запрос в онлайновом режиме; отклонено в оффлайновом режиме |
Решение: Перезагрузите терминал. При включении терминала на экране появится надпись «Для режима работы с кассой нажать F» — нужно нажать F; |
Ошибка internal service error — может встречаться на PAX30 |
Причина: При подключении по USB в МК, наша система пытается получить серийный номер терминала. Всего дается 5 попыток. Если после 5 попытки серийный номер терминал не будет получен, будет «NULL». |
Решение: Скорее всего терминал не успел прогрузиться в течение 5 попыток, поэтому необходимо:
|
Ошибка Internal Error при проведении оплаты через приложение LIFE PAY + терминал (pax SP30 или IPP 320-350) |
Причина:
|
Решение:
|
Ошибка «Свяжитесь с ЦА» |
Причина: заполнен журнал операций |
Решение: Перед проведением операции надо очистить журнал (при этом на кассе, в приложении может отобразится ошибка NO CODE) |
Ошибка, проверьте настройки процессинга на ТМС (встречается на автономных терминалах (не IPP320) |
Причина: сбой ПО |
Решение: Выполните следующие манипуляции на терминале: 1. Очистить журнал (5-123-очистка журнала) |
Ошибка alert irruption на ipp 320 (встречается и на iCT220) |
Причина: Сработала защита от вскрытия. Ошибка Alert Irruption может возникнуть в результате: сильного удара, например при падении со стола; падения напряжения (или плохого контакта) внутреннего источника питания ниже 3 В; переохлаждения или резкого перепада температуры; попадания жидкости внутрь терминала; |
Решение: Исправить ошибку Alert Irruption смогут только в сервисном центре производителя, в данном случае — Ingenico. Если терминал новый и на гарантии — информировать банк о проблеме. Если гарантия завершилась — приобрести новый |
Ошибка «Обрыв соединения» на IPP320 при попытке провести сверку, оплату |
Причина: PP320 — кассовый пин-пад. Не работает автономно, а получает команды от кассы, связь берет тоже от кассы |
Решение: Необходимо настроить терминал на работу с кассой:
3. Войти в диспетчер устройств на компьютере и посмотреть номер usb-порта к которому подключен терминал (Порты (COM и LPT)-Ingenico Telium (COM…)); 4. Войти на диск C в папку Аркус2-Ini-cashreg и прописать номер порта из диспетчера устройств (PORT=COM…). Сохранить файл; Далее загружаем конфигурацию, предварительно очистив журнал: 5. Очистка журнала:
Должна появиться надпись «Журнал очищен» 6. Сессия ТМС:
Через некоторое время на терминале появиться надпись «Установка обновлений» и он перезагрузится 7. Загрузка рабочих ключей:
8. Тест оплаты на 1 руб:
|
Ошибки на IPP 320/350 Ошибка 5 |
не установлена |
|
Ошибка — No serial |
При подключении по USB в МК, наша система пытается получить серийный номер терминала. Всего дается 5 попыток. Если после 5 попытки серийный номер терминал не будет получен, будет «no serial». Скорее всего терминал не успел прогрузиться в течение 5 попыток. Значит нужно вытащить питание IPP из розетки, вставить обратно. Дождаться когда на терминале будет «Готов к работе». После этого выполнить поиск на Lifehub. |
Ошибка “вставьте карту” на терминале |
Причина: Такая надпись обычно свидетельствует о том, что на терминале отсутствует конфигурация, скорее всего очень долго не выполняли сверку итогов на терминале. Решение: Если будет ошибка, при выполнении сверки итогов, то из списка выбрать “загрузить ключи” — дождаться сообщения о том, что успешно. |
Ошибка, проверьте настройки процессинга на ТМС (встречается на автономных терминалах (не IPP320) |
Причина: сбой ПО |
Решение: Выполните следующие манипуляции на терминале: 1. Очистить журнал (5-123-очистка журнала) |
Ошибка 100 |
Причина: сбой ПО |
Решение: Необходимо очистить журнал операций.
|
Ошибка: ”Обрыв соединения” на терминале IPP320 |
Причина:
|
Решение:
|
При попытке оплатить по карте печатается чек “операция отменена” (на ICT 250) |
Причина: не установлена |
Решение:
|
Ошибка 555 / Ошибка 005 (при попытке сделать возврат — предлагает использовать ЧИП) |
Причина: не установлена |
Решение: Сообщить об ошибке в техническую поддержку |
Ошибка на ICT 250 — “Пин-пад не подключен» и мигает надпись Allert Irruption |
Причина: устройство вышло из строя |
Решение: Сообщить об ошибке в техническую поддержку |
Ошибка 999 и 01 на терминале Ingenico iPP320 / iPP350 |
Причина: не установлена |
Решение: В случае возникновения ошибки 999 (МК, Windows), в первую очередь:
|
Ошибка “повторите транзакцию” на IWL 250 |
Причина: сбой ПО |
Решение: 1. Перезагрузить (желтая + точка), убедиться что интернет подключен. |
Ошибка: Отложенная операция не выполнена. Обратитесь в ЦА. |
Причина: не установлена |
Решение:
Перезагрузить IPP, нажав желтую кнопку плюс кнопку #, при запуске терминала нажать F, далее выбирать пункт: работать с кассой — > нет.
Если неуспешно — Сообщить об ошибке в техническую поддержку |
На IWL 250 нет связи, оплаты не проходят и трубка на экране в горизонтальном положении (красная) |
Причина: Не настроена точка доступа |
Решение: Настроить точку доступа
После включения терминала необходимо дождаться, когда он поймает сеть. Шкала, указывающая на уровень сигнала связи, и поднятая зеленая трубка говорят о том, что терминалом можно пользоваться. |
На слип чеке о сверке итогов сообщение “Итоги не совпали” |
Причина: в рамках смены были неуспешные операции, сбои связи и т.д |
Решение: игнорировать; это лишь информационное сообщение. |
Ошибка “Отсутствует файл Currency.pst” при оплате через Inpas |
Причина: не указана |
Решение:
|
На автономном терминале Ingenico при попытке входа в меню оплаты через клавишу «0» вместо пунктов
терминал сразу предлагает вставить карту |
Причина: не указана |
Решение: на нем необходимо провести очистку журнала и сессию ТМС. После появится возможность попасть в меню оплаты и проводить транзакции 1.Очистка журнала:
В зависимости от типа связи выбираем: — ETHERNET- если терминал подключен к сети по проводу ETH; — TELIUM NET — если терминал работает по сим-карте; — WIFI – если терминал работает через Wifi.
|
Загрузка конфигураций на терминал
1. На компьютер необходимо установить программу Аркус2 и драйвер IngenicoUSBDrivers_2.80_setup;
2. Подключаем терминал к компьютеру через USB;
3. При включении терминала на экране появится надпись «Для режима работы с кассой нажать F» — нужно нажать кнопку F;
Далее:
— Работа с кассой? Нажать да — зеленая;
— Настройка — Нажать — зеленая;
— Интерфейс — Нажать — зеленая;
— Канал — Нажать — зеленая;
— USB — Нажать — зеленая;
— Шаг назад (нажать — красная);
— Сеть — Нажать — зеленая;
— IP через кассу — Нажать — зеленая;
— Да — Нажать — зеленая;
— 2 шага назад (2 раза нажать на красную) и выбрать «Сохранить» — на терминале должна появиться надпись «Готов к работе»
4. — Войти в диспетчер устройств на компьютере и посмотреть номер usb-порта к которому подключен терминал (Порты (COM и LPT) — Sadgem Telium port(COM…));
— Войти на диск C, в папку Аркус2-Ini-cashreg и прописать номер порта из диспетчера устройств (PORT=COM…).
— Если номер порта больше 9 (10 и выше), то после знака = нужно прописать \.
5. Войти на диск C в папку, по пути: Аркус2-Ini-cashreg и прописать номер порта из диспетчера устройств (PORT=COM…). Сохранить файл;
6. Сессия ТМС:
— Зайти в папку Аркус2 — CommandLineTool;
— Запустить байтник admin_menu — на терминале откроется меню администратора;
— на терминале выбираем пункт Сессия ТМС, нажимаем зеленую кнопку;
— ETHERNET, нажимаем зеленую;
— IP адрес: 185.222.52.1 нажимаем зеленую кнопку; порт 51016 нажимаем зеленую кнопку;
— использовать SSL? — выбираем нет, нажимаем зеленую кнопку;
— далее все подтверждаем зеленой кнопкой до появления надписей «Соединение», «Обмен данными»
Через некоторое время на терминале появится надпись «Установка обновлений» и терминал перезагрузится
7. Загрузка рабочих ключей:
— Войти в папку Аркус2 — ComandLineTools;
— Запустить байтник cacher_menu — на терминале откроется Меню кассира;
— Выбираем пункт «Загрузить ключи», нажимаем зеленую;
— Выбираем терминалы LPPxxxx, нажимаем зеленую — на терминале появится надпись Авторизация — Ответ и снова LPPxxxx — нажимаем на красную до надписи «Готов к работе» на экране.
— Открыть файл cheq в папке Аркус2. В файле д.б. указано «Загрузка мас-ключа успешно», «Загрузка пин-ключа успешно».
Как решить проблемы подсистемы печати в терминальном сервере
Время на прочтение
3 мин
Количество просмотров 283K
Приветствую, %habrausername%!
Сегодня я бы хотел поделиться своим опытом устранения проблем печати на терминальном сервере 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, но не бесплатно (впрочем, есть лекарства ;).
Заключение
На этом хочу откланяться. Возможно информация не полная — буду рад услышать дополнения. Надеюсь, это поможет кому-то избежать часов нервотрепки
Удачи!