Назад | Перейти на главную страницу

Установка порядка остановки служб при завершении работы системы в Windows Server 2003

Есть ли способ контролировать порядок, в котором службы останавливаются при завершении работы системы?

У нас возникли проблемы с нашим контроллером домена, для завершения которого требуется вечность (если он вообще выходит из строя) из-за ошибки в порядке отключения служб (сначала службы домена, затем Exchange).

Я мог бы написать сценарий, чтобы сначала остановить Exchange, а затем выключить машину, но мне бы очень хотелось иметь возможность просто выдать shutdown /r /t 1 и не надо об этом думать.

Итак, есть ли способ контролировать порядок, в котором службы останавливаются / запускаются при остановке / запуске системы?

Напишите сценарий. Назначьте его компьютеру как сценарий выключения. Этот сценарий будет обработан до остановки каких-либо служб.

Как создать зависимость между службами Windows

  1. Бегать regedit чтобы открыть реестр.
  2. Перейдите к HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services и найдите службу, для которой нужно установить зависимость.
  3. Открой DependOnService ключ с правой стороны. Если выбранная услуга не имеет DependOnService ключ, затем создайте его, щелкнув правой кнопкой мыши и выбрав Новый > Многострочное значение.
  4. В поле значения введите названия всех служб, от которых будет зависеть текущая служба. Каждое имя службы необходимо вводить правильно и в отдельной строке.
  5. Нажмите ОК, закройте реестр и перезагрузите компьютер.

Вы можете использовать этот метод для принудительного установления зависимостей между сервисами, но он недокументирован.

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

Из msexchange.org:

Если Exchange находится на контроллере домена, это будет проблемой. Это вызвано тем простым фактом, что Exchange будет использовать себя для функций контроллера домена только при установке на DC, а когда он завершает работу, ему необходимо связаться с контроллером домена. Однако во время выключения функции контроллера домена заканчиваются быстрее, чем это делает Exchange. Задержка вызвана временем ожидания Windows, прежде чем она начнет уничтожать службы, а не позволяет им корректно останавливаться.

Вы можете использовать сценарий, чтобы сначала выключить Exchange, а затем перезапустить сервер. Однако лучшим вариантом было бы снять Exchange с этой машины. Помните, что вы не можете удалить функциональность DC, пока установлен Exchange. Это не поддерживается и часто нарушает работу Exchange. Exchange необходимо сначала удалить или перенести на другую машину.

Просто догадываюсь - можете ли вы сделать службы Exchange зависимыми от служб домена? Я должен думать, что Windows сначала выключит Exchange, а затем то, от чего они зависят.