При установці будь-якій ролі або компонента в Windows Server 2016 з’являється помилка, що сервер вимагає перезавантаження: “The operation cannot be completed, because the server that you specified requires a restart“(Сбой запроса на добавление или удаление компонентов на указанном сервере. Не удается завершить операцию, так как требуется перезагрузить указанный сервер). Ок, перезавантажуємо сервер, намагаємося встановити роль і знову з’являється помилка, що потрібне перезавантаження сервера. Але помилка повторюється, і так далі по циклу.

Windows Server 2016 Неможливо завершити операцію, так як потрібно перезавантажити вказаний сервер

В результаті не виходить встановити / видалити жодну з ролей / компонентів на сервері.

У журналі подій сервера (Event Viewer -> Windows Logs -> System) при цьому фіксіруетсся помилка EventID 7041 від джерела Service Control Manager. У події зазначено:

This service account does not have the required user right "Log on as a service".

Щоб вирішити проблему, необхідно надати права входу в якості служби для “NT SERVICE ALL SERVICES» (і для NT SERVICE MSSQL $ MICROSOFT ## WID, якщо помилка пов’язана з установкою ролі сервера оновлень WSUS або SQL Server).

  1. Відкрийте консоль управління локальними політиками gpedit.msc;
  2. Перейдіть в розділ Конфігурація комп’ютера –> Налаштування Windows –> Налаштування безпеки –> Місцева політика –> Призначення прав користувача;
  3. Знайдіть політику Увійдіть як сервіс (Вхід в якості служби);
  4. Як ви бачите, в політиці входу як служби відсутня NT SERVICE ALL SERVICES. Спробуємо її додати -> Add User or Group -> NT SERVICE ALL SERVICES. З’являється помилка: система не може знайти цю службовому обліковому записі;
    Політика "Вхід в якості служби", Не можу знайти NT SERVICE  ALL SERVICES

Як же додати в локальну політику сервісну обліковий запис? Єдиний нормальний спосіб, який мені вдалося знайти, щоб надати права “Log on as a service” для NT SERVICE ALL SERVICES – скористатися утилітою ntrights.exe (З старого пакета Набір ресурсів Windows Server 2003).

Скачайте і встановіть Server 2003 Resource Kit (rktools.exe), потім надайте право SeServiceLogonRight командами:

cd “C:Program Files (x86)Windows Resource KitsTools”
ntrights.exe +r SeServiceLogonRight -u “NT SERVICEALL SERVICES”

Granting SeServiceLogonRight to NT SERVICEALL SERVICES ... successful

ntrights.exe дати права SeServiceLogonRight

Якщо в списку поточних прав відсутня NETWORK SERVICE, обов’язково додайте і цей аккаунт. Якщо потрібно, додайте аналогічно права для NT SERVICE MSSQL $ MICROSOFT ## WID:

ntrights.exe +r SeServiceLogonRight -u “NT SERVICEMSSQL$MICROSOFT##WID”

Перевіряємо, що NT SERVICE ALL SERVICES з’явилося в дозволах “Log on as a service” в консолі редактора політики.

Увійдіть як сервіс NT SERVICE  ALL SERVICES

Перезавантажте свій Windows Server і спробуйте встановити / видалити роль. Все повинно пройти без помилки.

Leave a Reply

Your email address will not be published. Required fields are marked *