Start wyzwalacza usługi Windows - różnica manualna czy automatyczna?

22

Od Windows Server 2008 R2 (i Windows 7 myślę, że dla systemu operacyjnego klienta) Microsoft wprowadził trigger startdla usług. Rozumiem różnicę między automatic, automatic (delayed)i manualuruchomieniem typy. Z tego, co czytałem na temat artykułów w Google, wydaje mi się, że rozumiem logikę trigger start(choć nigdy jej nie używałem).

Co tak naprawdę nie jestem pewien, czy rozumiem byłaby różnica usług, które są skonfigurowane do automatic (trigger start)a manual (trigger start)i nie miałem szczęście znaleźć żadnego wytłumaczenia dla tego produktu.

Myślę, że w obu przypadkach usługa nie działa, chyba że wyzwalacz ją uruchomi, więc jaka byłaby różnica?

Powodem, dla którego napotkałem to pytanie, jest monitorowanie usług typu automatycznego uruchamiania. Ponieważ usługa jest ustawiona na uruchamianie z wyzwalaczem, a wyzwalacz jest niepoprawny, usługa nie działa, a monitorowanie zgłasza, że ​​usługa automatyczna nie działa.

Podsumowując - moje pytania to:

  1. Jaka jest różnica między usługą automatic (trigger start)a manual (trigger start)usługą?
  2. Czy może to mieć wpływ na usługę / aplikację (ogólnie), jeśli usługa zostanie zmieniona z automatic (trigger start)na manual (trigger start)?
Ricky-Brno
źródło

Odpowiedzi:

32

Usługi automatyczne uruchamiają się po uruchomieniu systemu operacyjnego. Usługi ręczne nie. Wyzwalacze można dodawać do usług, aby uruchamiały się w przypadku niektórych zdarzeń, takich jak zdarzenie ETW lub podłączane urządzenie USB itp. Wyzwalacze można dodawać do usług ręcznych lub automatycznych.

Przykład wyzwalaczy w usłudze Automatic (Trigger Start):

C:\Users\Ryan>sc qtriggerinfo dnscache
[SC] QueryServiceConfig2 SUCCESS

SERVICE_NAME: dnscache

        START SERVICE
          FIREWALL PORT EVENT          : b7569e07-8421-4ee0-ad10-86915afdad09 [PORT OPEN]
            DATA                       : 5355;UDP;

Przykład wyzwalaczy w usłudze Ręczne (uruchomienie wyzwalacza):

C:\Users\Ryan>sc qtriggerinfo appinfo
[SC] QueryServiceConfig2 SUCCESS

SERVICE_NAME: appinfo

        START SERVICE
          NETWORK EVENT                : bc90d167-9470-4139-a9ba-be0bbbf5b74d [RPC INTERFACE EVENT]
            DATA                       : 201ef99a-7fa0-444c-9399-19ba84f12a1a
        START SERVICE
          NETWORK EVENT                : bc90d167-9470-4139-a9ba-be0bbbf5b74d [RPC INTERFACE EVENT]
            DATA                       : 5f54ce7d-5b79-4175-8584-cb65313a0e98
        START SERVICE
          NETWORK EVENT                : bc90d167-9470-4139-a9ba-be0bbbf5b74d [RPC INTERFACE EVENT]
            DATA                       : fd7a0523-dc70-43dd-9b2e-9c5ed48225b1
        START SERVICE
          NETWORK EVENT                : bc90d167-9470-4139-a9ba-be0bbbf5b74d [RPC INTERFACE EVENT]
            DATA                       : 58e604e8-9adb-4d2e-a464-3b0683fb1480

Usługę można ustawić na Automatyczną, aby uruchamiała się natychmiast po załadowaniu systemu operacyjnego, ale może również sama zatrzymać się z wdziękiem, gdy usługa nie będzie już musiała działać. Po zatrzymaniu wyzwalacz może uruchomić go ponownie w dowolnym momencie.

Podsumowując, usługi automatyczne i ręczne mogą mieć wyzwalacze, które ręcznie je uruchamiają. Jedyną różnicą jest to, że usługi automatyczne uruchamiają się natychmiast po załadowaniu systemu operacyjnego.

Ryan Ries
źródło
Nie jest do końca jasne, czy usługi te uruchamiane są przez wyzwalacz, czy automatycznie? Czy zatrzymują się tylko za pomocą spustu?
Suncatcher