Ошибка установки/удаления ролей в Windows Server: не удается завершить операцию, требуется перезагрузить сервер

Ошибка установки/удаления ролей в Windows Server: не удается завершить операцию, требуется перезагрузить сервер

При установке любой роли или компонента в 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 SERVICEALL SERVICES» (и для NT SERVICEMSSQL$MICROSOFT##WID, если ошибка связана с установкой роли сервера обновлений WSUS или SQL Server).

  1. Откройте консоль управления локальными политиками
    gpedit.msc
    ;
  2. Перейдите в раздел Computer Configuration –> Windows Settings –> Security Settings –> Local Policies –> User Rights Assignment;
  3. Найдите политику Log on as a service (Вход в качестве службы);
  4. Как вы видите, в политике входа как службы отсутствует NT SERVICEALL SERVICES. Попробуем ее добавить -> Add User or Group -> NT SERVICEALL SERVICES. Появляется ошибка: система не может найти эту служебную учетную запись;
    Политика "Вход в качестве службы", не могу найти NT SERVICEALL SERVICES

Как же добавить в локальную политику сервисную учетную запись? Единственный вменяемый способ, который мне удалось найти, чтобы предоставить права “Log on as a service” для NT SERVICEALL SERVICES – воспользоваться утилитой ntrights.exe (из старого пакета Windows Server 2003 Resource Kit).

Скачайте и установите 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 SERVICEMSSQL$MICROSOFT##WID:

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

Проверяем, что NT SERVICEALL SERVICES появилось в разрешениях “Log on as a service” в консоли редактора политики.

Log on as a service NT SERVICEALL SERVICES

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

Windows Server 2016
Ошибка установки/удаления ролей в Windows Server: не удается завершить операцию, требуется перезагрузить сервер