В то время как мы движемся в «мир без бумаги», в котором почти все наши данные будут храниться в электронном виде, появление статьи о новых возможностях печати в системах Windows Server 2008 R2 и Windows 7 может показаться странным — как если бы я написал что-нибудь на тему «Интернет — это нечто важное» или «Станут ли планшетные компьютеры популярны?». Однако, если вы спросите человека, сидящего рядом с принтером в вашем офисе, стали ли люди печатать меньше, скорее всего, он ответит отрицательно.

.

Возможности пользователя

Некоторые функции клиентской системы помогают значительно упростить работу конечного пользователя. Два наиболее заметных улучшения адресованы пользователям мобильных устройств и затрагивают механизмы доступа к компьютерам из различных мест, в том числе функции удаленной печати и выбора принтера «по умолчанию».

Печать на удаленном компьютере с Windows 7. Печатать данные из удаленного сеанса через протокол удаленного рабочего стола RDP при использовании традиционных служб Terminal Services было непросто. На каждом сервере терминалов приходилось устанавливать все драйверы принтеров, которыми могли бы пользоваться подключающиеся клиентские системы, чтобы локальные принтеры пользователей могли быть перенаправлены в удаленную сессию, а данные можно было корректно обработать на сервере терминалов и затем отправить клиенту для печати на локальном устройстве. Слишком часто драйверы для принтера отсутствовали или были неверной версии, что приводило к невозможности печати (это в лучшем случае, а в худшем уничтожался маленький перуанский тропический лес, пока печатались страница за страницей со случайными символами).

Платформа Server 2008 решает данную проблему с помощью механизма Terminal Services Easy Print. Эта новая модель печати «без драйверов» использует файлы Microsoft XML Paper Specification (XPS), которые по аналогии с файлами PDF содержат и данные, и форматирование. В отличие от сервера терминалов, который выполнял преобразование данных в специальный формат для печати, служба TS Easy Print создает универсальный документ XPS. Этот документ отправляется по протоколу RDP на устройство клиента, что позволяет ему выполнять на основе полученного файла XPS преобразование данных для принтера, используя драйверы, установленные локально. Если пользователь в удаленной сессии посмотрит свойства принтера, подключение RDP перехватит этот запрос и покажет свойства локального принтера, а затем отправит любые параметры форматирования обратно в удаленный сеанс. Таким образом, возможность настройки драйвера локального принтера не будет утеряна, даже если данный драйвер не установлен на сервере терминалов.

Хотя печать «без драйверов» — это значительный шаг вперед для механизма удаленных сеансов на основе Terminal Services, система Windows Vista не включала эту функцию. Когда компания Microsoft выпустила инструментарий для Virtual Desktop Infrastructure (VDI), а подход с использованием удаленных сеансов для подключения к виртуальным операционным системам получил широкое распространение, возможность применения функций печати при подключении к клиентским системам через протокол RDP стала обеспечивать огромные преимущества. Системы Windows 7 Enterprise и Windows 7 Ultimate поддерживают функцию Remote Desktop Easy Print. Служба Terminal Services в системе Server 2008 R2 была переименована в Remote Desktop Services (RDS), и с тех пор для механизма печати используется название Remote Desktop Easy Print, вместо Terminal Services Easy Print.

Функциональные возможности службы Easy Print больше не зависят от того, установлен ли пакет. NET Framework на устройстве клиента. Теперь преобразование XPS-в-GDI (формат принтера) производится непосредственно операционной системой. Используя функцию Easy Print при подключении к удаленной системе версии Windows 7 Enterprise или Ultimate и включив переадресацию принтера, можно увидеть принтер, установленный «по умолчанию», а также все доступные принтеры. Если вы посмотрите на параметр Model в настройках принтера «по умолчанию», то увидите, что он имеет значение Remote Desktop Easy Print (экран 1). Если выбрать пункт Printing Preferences в контекстном меню, вы увидите дополнительные настройки печати для локальной операционной системы. При работе с дополнительными свойствами принтера диалоговое окно, содержащее значения свойств, на самом деле перенаправляется в локальную клиентскую систему, в которой установлен полностью функциональный драйвер для принтера, ведь дополнительные настройки у каждого драйвера свои. В диалоговом окне, показанном на экране 2, видно, что свойства были перенаправлены. Так как механизм Easy Print является функцией протокола RDP 6.1, клиентские системы Vista SP1 и Windows SP3, в которых установлены приложение Remote Desktop Connection Client 6.1 или его более новые версии, а также пакет. NET Framework, могут пользоваться возможностями Easy Print при подключении к операционным системам Windows 7 Enterprise или Ultimate через протокол RDP.

 

Просмотр свойств принтера
Экран 1. Просмотр свойств принтера

Как показано на экране 2, даже при отсутствии драйвера в удаленной системе можно просмотреть дополнительные параметры, просто открыв окно свойств в локальной системе, после чего любые изменения в списке выбранных параметров и в настройках форматирования будут переданы в удаленный сеанс. Диалоговое окно Printing Preferences обычно загораживает окно, уведомляющее о перенаправлении, однако я его передвинул, и теперь вы можете увидеть, что на самом деле окно Printing Preferences отображается поверх окна удаленного сеанса, так как он запускается из локальной операционной системы с использованием локально установленного драйвера.

 

Перенаправление свойств принтера с помощью Easy Print
Экран 2. Перенаправление свойств принтера с помощью Easy Print

Каким принтером пользоваться. Easy Print — удивительная технология, позволяющая предоставить локальные принтеры удаленным системам, не беспокоясь о наличии драйверов. Следующей задачей для мобильных сотрудников является выбор принтера, которым они будут пользоваться. Я беру с собой ноутбук, перемещаясь между несколькими офисными зданиями, а также пользуюсь им дома. Много раз, находясь дома, я просто нажимал кнопку Print, не указывая принтер для печати, и соответственно по ошибке посылал личный документ на рабочий принтер. Из-за этого на следующий день я вставал раньше обычного, чтобы успеть забрать свой документ до того, как это сделает кто-нибудь из коллег. Поэтому необходимо, чтобы принтер «по умолчанию» выбирался на основании текущего местоположения.

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

Изначально подходы к решению проблемы автоматического выбора принтера основывались на сценариях регистрации в системе, которые проверяли свойства системы, такие как IP-адрес, и затем добавляли определенные принтеры, обслуживаемые через сценарии. Реализация данного подхода в больших средах представляла собой трудную задачу. Первое по-настоящему крупное достижение в этой области связано с выпуском консоли Print Management Console (PMC) для системы Windows Server 2003 R2. Помимо создания централизованного пункта управления для серверов печати Windows и возможности автоматического определения принтеров, консоль PMC также предоставляла механизмы установки принтеров, использующие наборы опубликованных принтеров, указанные в объектах Group Policy Objects (GPO), и исполняемый файл PushPrinterConnections.exe. Этот исполняемый файл добавлялся в сценарий регистрации пользователя в системе или в сценарий запуска компьютера, проверял объекты GPO на наличие принтеров и настраивал найденные принтеры на компьютере. Так как объекты GPO могут быть связаны с доменом, организационным подразделением (UO) или сайтом, решение обеспечивало гибкость при выборе принтера. Файл PushPrinterConnections.exe был необходим, так как для элементов объекта GPO, отвечающих за настройку принтера, отсутствовало клиентское расширение CSE.

Система Server 2008 подняла механизмы развертывания принтеров на новый уровень с помощью клиентских расширений CSE для механизмов консоли PMC. С появлением этих расширений отпала необходимость в файле PushPrinterConnections.exe. Настройка нескольких объектов GPO на уровне сайта обеспечивает плавное переключение между принтерами, когда пользователи перемещаются, при этом принтер «по умолчанию» настраивается автоматически.

Функция Deployed Printers консоли PMC весьма полезна, однако технология Group Policy Preferences в системе Server 2008 предоставляет еще более гибкий механизм назначения принтеров пользователям, из-за чего многие организации отказываются от использования технологии Deployed Printers. В отличие от механизма групповой политики Group Policy, который задает политику для клиентской системы и запрещает любые изменения в ней, технология предпочтений групповой политики Group Policy Preferences позволяет создавать конфигурации компьютера, которые могут быть изменены конечными пользователями. Эта технология позволяет создавать начальную конфигурацию, которая не является окончательной. С помощью механизмов Group Policy Preferences мы можем периодически переназначать параметры предпочтения, перезаписывая любые изменения, которые внес пользователь, либо можем установить параметры предпочтения в начальное состояние и забыть о них, так что пользователь сможет делать с ними все, что угодно.

Чтобы настроить предпочтения Group Policy Preferences для принтеров на уровне пользователя, необходимо открыть объект GPO и зайти в раздел\User Configuration\Preferences\Control Panel Settings\Printers. Также можно при необходимости настраивать этот параметр на уровне компьютера. Чтобы добавить новый принтер, щелкните правой кнопкой и выберите пункт New, а затем укажите тип принтера. Как показано на экране 3, принтер может быть общим, подключенным по протоколу TCP/IP или локальным.

 

Использование Group Policy Preferences для добавления нового принтера
Экран 3. Использование Group Policy Preferences для добавления нового принтера

Если выбрать добавление общего принтера, вам будет предложено найти нужный принтер в каталоге Active Directory (AD) — необходимым условием является публикация принтеров в AD, которая легко настраивается через консоль PMC. Также можно указать, является ли это устройство принтером «по умолчанию» и будет ли оно оставаться таковым в случае подключения локального принтера (экран 4).

 

Настройка общего принтера
Экран 4. Настройка общего принтера

Так как предпочтения Group Policy Preferences являются частью объектов GPO, мы можем связывать их с сайтом, подразделением или доменом. Если необходимо устанавливать принтеры на основе расположения, можно связать объект GPO с сайтом, и в момент, когда клиентские системы обновят свои политики, в них будут добавлены принтеры, подходящие для данного местоположения пользователя. Однако с помощью предпочтений Group Policy Preferences мы может пойти еще дальше.

Закладка General в окне Shared Printer Properties позволяет выбрать общий принтер и принтер, заданный по умолчанию. Закладка Common, как можно понять по названию, является общей для всех конфигураций Group Policy Preferences, и к тому же открывает доступ к механизму указания принтера, использующему возможности детализации на уровне элемента, обеспечиваемые технологией Group Policy Preferences. Перейдите на закладку Common для нового принтера в Group Policy Preferences, затем выберите пункт Item-level targeting и нажмите кнопку Targeting, чтобы открыть новый редактор Targeting Editor, который, как показано на экране 5, позволяет создавать очень подробные правила, определяющие, когда вступает в силу соответствующее предпочтение.

 

Group Policy Preferences открывают практически безграничные возможности
Экран 5. Group Policy Preferences открывают практически безграничные возможности

Примечательно, что указание применяется только к определенному параметру предпочтений (то есть только к принтеру, а не ко всему объекту GPO). Такой подход позволяет в одном объекте GPO определить несколько принтеров, и каждый будет выбран по-своему. Посмотрите на набор критериев указания, приведенный на экране 5: вы заметите, насколько гибким может быть механизм выбора. Можно устанавливать принтеры на системы, входящие в определенный диапазон IP-адресов. Данный критерий, по сути, аналогичен выбору сайта AD, но позволяет сделать более подробную выборку, чем при использовании конфигураций сайта. Можно назначать принтеры на основе членства в группе, что в случае с обычными объектами GPO представляет собой трудоемкий процесс. Можно указывать принтеры с учетом времени суток, типа компьютера или типа сетевого соединения — у нас большая свобода действий. Если вы еще не пробовали поработать с Group Policy Preferences, советую это сделать. Если у вас используется много пользовательских сценариев, то с помощью Group Policy Preferences вы сможете упразднить большинство из них за ненадобностью.

В корпоративной среде настроить принтер «по умолчанию» с помощью передовых административных средств планирования и подстройки довольно просто. Но как поступить, если вы подключаетесь к множеству персональных сетей или если пользователи сами хотят управлять своими принтерами «по умолчанию» в зависимости от местоположения? В Windows 7 добавлена новая функция — печать с учетом сетевого расположения, — которая использует службу сведений о подключенных сетях, появившуюся в системах Server 2008 и Vista. Основываясь на различных сетевых параметрах (например, наличии беспроводных сетей, доступности контроллеров домена) мы можем назначить различные сети, которые будем использовать в настройках Group Policy, в параметрах межсетевых экранов и в других механизмах систем Server 2008 и Vista. Назначенные сети можно задействовать в системе Windows 7 и с помощью функции печати с учетом сетевого расположения настраивать для них по умолчанию различные принтеры.

Процесс настройки печати с учетом сетевого расположения довольно прост. Выбираем пункт Devices and Printers в меню Start, потом выбираем действие Manage default printers, чтобы открыть диалоговое окно, показанное на экране 6. Затем можно выбрать вариант, позволяющий всегда использовать один и тот же принтер по умолчанию, что, очевидно, приведет к невозможности печати с учетом сетевого расположения, либо вариант, позволяющий менять принтер, заданный по умолчанию, — в этом случае можно задать принтер по умолчанию для каждой известной сети. Когда вы подключитесь к новой неизвестной сети, текущий принтер, заданный по умолчанию, автоматически станет принтером по умолчанию для этой сети. Впрочем, данный параметр можно изменить.

 

Настройка принтеров по умолчанию для различных сетей
Экран 6. Настройка принтеров по умолчанию для различных сетей

Если вы подключитесь к нескольким сетям одновременно (например, к проводной сети и к беспроводной), то принтер, заданный «по умолчанию» для управляемой проводной сети, будет иметь приоритет над беспроводной сетью, которую сохранил пользователь. Более того, сохраненная беспроводная сеть будет иметь приоритет над неуправляемой проводной сетью. Если вы не можете обнаружить действие Manage default printers на своем компьютере или сервере, то это потому, что данный механизм доступен только на мобильных компьютерах (то есть ноутбуках) с установленной системой версии Windows 7 Home Premium или выше и отсутствует в любой серверной версии Windows.

Возможности администратора

Так как печать — процесс, инициируемый пользователем, неудивительно, что две наиболее интересные функции, Easy Print и функция печати с учетом сетевого расположения, использующая Group Policy Preferences, ориентированы на пользователя. В системах Server 2008 R2 и Windows 7 также усовершенствованы механизмы администрирования с точки зрения управления, что позволяет сократить объем работы подразделения ИТ.

Наиболее значимое изменение, касающееся служб печати, в системе Server 2008 R2 заключается в том, что печать теперь является частью серверной роли Print and Document Services. Внутри этой роли новая служба Distributed Scan Server обеспечивает возможность централизованного управления сетевыми сканерами с поддержкой технологии Web Services on Devices (WSD) и контроля по аналогии с тем, как принтеры управляются службами печати. В этой статье речь идет о печати, а не о сканировании, поэтому я пока оставлю тему возможностей роли Distributed Scan Server. Однако, если у вас в компании используется множество сканеров, роль Distributed Scan Server безусловно будет полезна для вашего окружения.

Изоляция драйвера для принтера. Я считаю, что главным улучшением в производительности и в обеспечении поддержки механизмов печати в системе Server 2008 R2 стала новая возможность изоляции драйвера для принтера («песочница»). До появления системы Server 2008 R2 компоненты драйвера печати загружались в том же процессе, что и очередь печати принтера. Часто в работе драйверов происходили сбои, что приводило к разрушению всей очереди печати, и при этом останавливалась вся служба печати для всех пользователей и принтеров на сервере. Изоляция драйвера для принтера позволяет запускать компоненты драйвера печати в отдельном от очереди печати процессе, и это означает, что сбой в работе драйвера больше не разрушит очередь печати и никак не отразится на других принтерах системы. Мы можем пойти дальше и настроить особые драйверы печати, которые будут запускаться в собственных изолированных процессах, что весьма полезно, если у нас есть новые драйверы или драйверы с известными ошибками. Эти драйверы, запущенные в собственных процессах, могут остановить работу своих принтеров, — но не остальных.

Настройка изоляции драйвера для принтера осуществляется не средствами принтера, а средствами драйвера. Для этого нужно запустить консоль PMC, перейти к узлу Print Servers — <имя сервера> — Drivers, щелкнуть правой кнопкой мыши по драйверу и выбрать режим изоляции, как показано на экране 7. Можно выбрать одно из следующих значений.

  • None — загружает компоненты драйвера печати в процесс очереди печати, эмулирует поведение систем с версией ниже Server 2008 R2.
  • Shared — загружает множество драйверов в отдельный процесс, защищая очередь печати от сбоев в работе драйвера. Сбой в работе драйвера в общем процессе повлияет на работу остальных драйверов. Используйте этот режим только для известных, корректно работающих драйверов.
  • Isolated — загружает драйвер в собственный процесс, защищая очередь печати и другие драйверы от сбоя изолированного драйвера. Используйте это значение для неизвестных или проблемных драйверов.

 

Настройка изоляции драйверов печати
Экран 7. Настройка изоляции драйверов печати

Хотя изоляция драйвера для принтера является основным нововведением в системах Server 2008 R2 и Windows 7, повышающим надежность, данные системы обеспечивают и улучшение производительности, в том числе содержат изменения в механизме очереди печати как на серверной, так и на клиентской стороне, позволяющие сократить время регистрации в системе и уменьшить время запаздывания со стороны сервера при работе с уведомлениями. Уменьшение частоты оповещений печати заставляет очередь быстрее реагировать на изменения и повышает эффективность ее обработки.

Помощь в администрировании. Управление печатью начинается с консоли PMC. Улучшения в PMC, представленные в системах Server 2008 R2 и Windows 7 и позволяющие получить больше информации в обзорах Printers and Drivers, относятся к двум основным группам функций (помимо улучшений в пользовательском интерфейсе).

Первая группа функций реализует возможность настройки разрешений по умолчанию, которые автоматически применяются к любым новым очередям, созданным на сервере. Эта функция избавляет нас от необходимости вручную повторять подтверждение каждый раз при добавлении новой очереди печати на сервер. Чтобы задать уровень безопасности по умолчанию, который будет применяться для новых очередей печати, откройте свойства сервера печати и выберите закладку Security, показанную на экране 8. Следует отметить, что изменения не будут применены для текущей очереди.

 

Настройка прав, по умолчанию применяемых к новым очередям печати
Экран 8. Настройка прав, по умолчанию применяемых к новым очередям печати

На экране 8 видно, что, помимо прочего, можно назначить пользователям права на управление принтером, управление документами и управление сервером. Пользователи с такими разрешениями автоматически становятся администраторами сервера печати. С другой стороны, вы можете дать пользователям сокращенный набор разрешений — в зависимости от потребностей вашей организации.

Другим важным дополнением является возможность создавать отфильтрованные обзоры в консоли PMC на основе информации о принтере и драйвере. Эта мощная функция позволяет администраторам с помощью узла Custom Filters консоли PMC создавать множество обзоров, позволяющих анализировать огромное количество параметров принтеров и драйверов. Такие параметры, как количество заданий в очереди, статус и местоположение, можно использовать для создания обзоров, которые позволят администраторам быстро просматривать информацию об устройствах, принадлежащих к различным группам и расположенных в разных местах (например, получить список устройств, работающих в определенном режиме, или список очередей, количество элементов в которых выше определенного значения). На экране 9 показаны параметры настройки фильтрации для принтера и для драйвера. И, как вы могли заметить, для каждого фильтра можно заполнить несколько полей, которые задают определенные условия и значения, при которых эти условия будут считаться выполненными.

 

Параметры настройки фильтрации для принтера и для драйвера
Экран 9. Параметры настройки фильтрации для принтера и для драйвера

Печать без проблем

Можно не признавать важность печати, но эта функция до сих пор имеет большое значение для организаций. Системы Server 2008 R2 и Windows 7 предоставляют новые возможности, которые позволяют удовлетворять потребности мобильных пользователей. Список нововведений включает различные технологии, которыми пользователи могут воспользоваться для подключения к службам и получения доступа к средствам печати. Даже с ростом требований, предъявляемых организациями к механизмам печати, доступ к устройствам печати должен быть непрерывным.

Джон Сэвилл (jsavill@windowsitpro.com) — директор по технической инфраструктуре компании Geniant, имеет сертификаты CISSP, Security and Messaging MCSE для Windows Server 2003 и звание MVP