Сервер Windows Server 2016 Core развернут в Hyper-V с динамической памятью 512Мб — 1536Мб. В финальном варианте виртуальная машина использует ~1200 Мб.
Напоминаю, основные настройки в Core выполняются через
sconfig. Добавление роли выполняем через powershell (
подробнее)
Install-WindowsFeature -name Print-Server, Print-Services -Restart
Далее запускаем консоль Управление печати и подключаемся к нашему серверу
.\printmanagement.msc /computer:srvpr1
Добавляем необходимые принтеры, драйверы для разных платформ. ВНИМАНИЕ! Крайне рекомендую использовать как можно чаще один и тот же драйвер для разных принтеров. К примеру для HP 426, HP 428 использовал HP Universal Printing PCL 6. Также следим, чтобы драйвер принтера был упакован (от этого в дальнейшем зависит возможность установить драйвер от имени пользователя)
Далее открываем общий доступ к каждому принтеру и вносим данные о них в Active Directory
Не забываем назначить права на вкладке Безопасность для групп пользователей и администраторов.
Чтобы пользователям было удобнее искать\устанавливать принтеры самостоятельно через меню Панель управления > Устройства и принтеры > Добавление принтера необходимо заполнить поле Размещение во вкладке Общие в формате Город/Адрес/Кабинет
Это удобно, когда принтеры и рабочие станции находятся в разных подсетях и в меню добавления принтеров либо ничего нет, либо их тыща (если у вас огромный лес). Настройки в GPO чтобы это работало выполним позднее.
Далее переходим в Редактор управления групповыми политиками и приступаем к развертыванию принтеров в разделе Конфигурация пользователя > Настройка > Параметры панели управления > Принтеры
В Общие параметры ставим галки Выполнять в контексте безопасности пользователя и Нацеливание на уровень элемента где указываем конкретно группу\пользователей, на которую будет распространяться задача создания принтера.
Казалось бы, всё просто. Но тут начинаешь ловить ошибки в журналах «0x800702e4 Запрошенная операция требует повышения«
Или «0x80070bcb Указанный драйвер принтера не найден в системе. Необходимо скачать драйвер»
Проблема отчасти связана с установленными обновлениями безопасности (
тут очень хорошо это рассмотрено). Будем допиливать настройки компьютеров в части ограничения указания и печати через GPO.
Переходим в Конфигурация компьютера > Политики > Административные шаблоны > Принтеры > Ограничения указания и печати ВКЛЮЧЕНО
Указываем полное FQDN-имя нашего принт-сервера или серверов через «;»
Переходим в Конфигурация компьютера > Политики > Административные шаблоны > Принтеры > Функция указания и печати для пакетов ВКЛЮЧЕНО
Также вводим наши сервера печати
Раз уж зашли сюда, настроим сразу удобный поиск принтеров для пользователей.
Переходим в Конфигурация компьютера > Политики > Административные шаблоны > Принтеры > Заполнение строки поиска принтеров ВКЛЮЧЕНО
Переходим в Конфигурация компьютера > Политики > Административные шаблоны > Принтеры > Размещение компьютера ВКЛЮЧЕНО и вводим наше географическое расположение Москва
Теперь при ручной установки принтера, пользователь увидит только те принтеры, что находятся в Москве.
Осталось сделать последний штрих. Разрешить неадминистраторам установку принтеров. Таким образом мы получаем настройку, в которой любой пользователь может выполнить установку принтера из указанных нами серверов печати без запроса на повышения прав и без всяких уведомлений. А тут описано, что у многих возникли сложности после получения обновления безопасности 2021-08 Cumulative Update
Переходим в конфигурация компьютера > Настройка > Конфигурация Windows > Реестр > Создать элемент реестра
SOFTWARE\Policies\Microsoft\Windows NT\Printers\PointAndPrint
Ключ RestrictDriverInstallationToAdministrators со значением 0
Выполняем gpupdate /force на рабочих станциях и проверяем установку принтеров.
Прочее
После включения журнала печати на сервере печати, обнаружил что в событиях отсутствует информация о названии документа.
Исправим это недоразумение, создав новый DWORD параметр ShowJobTitleInEventLogs со значением 1 в кусте HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows NT\Printers
Перезагружаем Диспетчер печати и проверяем события 307 в журнале PrintService
Для редактирования групповых политик в части разрешения установки драйвера устройств от имени пользователя, необходимо знать GUID устройства. Достать его можно с реестра принт-сервера из ветки HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Printers\
параметр ObjectGUID
Далее добавляем его в список разрешенных принтеров в групповой политике Конфигурация компьютера > Политики > Административные шаблоны > Система > Установка драйвера > Разрешить пользователям, не являющимся администраторами, устанавливать драйверы для этих классов установки устройств
Попадалась ещё ошибка
Ошибка Элемент предпочтения пользователь «HP426» в объекте групповой политики «Printers {A73397DA-8E68-40E3-8A01-551AB54639A1}» не применен по причине ошибки с кодом ‘0x8007011b <unknown-message-text>’ Эта ошибка была отключена.
Проследите, что установлены последние обновления
Задания уходят на печать, в журнале отметка что успешно завершено, между тем принтер не печатает.
Проверяем упакован ли драйвер. Если «false» — переходим в редактор реестра сервера печати HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Print\Environments\Windows x64\Drivers\Version-3\ находим драйвер и увеличиваем значение ключа PrinterDriverAttributes на единицу. К примеру было «0», меняем на «1».
И перезагружаем службу «Диспетчер печати» (spooler)