How to disable Server Infrastructure Licensing Service

Symptoms:

Critical: Your Hyper-V licensed as Essentials R2 Server shuts down weekly. You observe the log “The process C:\Windows\system32\silsvc.exe [computername] has initiated the power off of computer [computername] on behalf of user NT AUTHORITY\SYSTEM” or similar, as described here.

Non-critical: You receive an error message “The SILSVC should be started automatically but it is stopped” as described here. If this is the case, you can either follow this link for a workaround, or read further below.

Issue:

In both cases above you are running an ex-Windows Essentials that was either upgraded to Standard or stripped down to its sole Hyper-V functionality. There is a service called Server Infrastructure Licensing Service (aka silsvc if you are using sc command) that is causing the trouble after you transmogrify the Essentials edition. By the way, this Transmog term was new for me ๐Ÿ™‚

The problem is the service cannot be stopped, neither from the services.msc nor using sc stop silsvc.

First question that needs to be cleared reads: ‘how critical is the service?’ If you look at it, there are no dependencies. Also the TechNet blog above confirms that you are not going to break your server if the service is missing or disabled.

As described by the first symptom though, you would hardly be able to restart a Hyper-V on which the productive environment is running. So how can you stop the service?

The first reasoning was to use SC from the elevated prompt: sc config “silsvc” start= disabled

Unluckily although a successful exit code is returned if you run sc query silsvc you will still see that nothing has changed and the service is still running and not stoppable. SC stop silsvc is as useless as you can imagine.

The second reasoning is to go and change the settings directly into the registry that can be found under HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\silsvc. You will be confronted with security restrictions:

And you cannot add your account with Full Access permissions:

Since taking ownership on registry keys is not very comfortable for me, I decided to try a third option.

Third playground: NTFS permissions and Task Manager.

If you try to kill the process directly from the Task Manager you will most probably think that this cannot act also. By looking closely however, you will see that each time you end a task, the process ID is being changed.

Exactly this is the Achilles’ heel of the service: if you succeed in deleting or renaming the silsvc.exe file there will be nothing to start again. The file itself is precautionally NTFS protected. You will have to take ownership of the file and then grant yourself sufficient permissions to move or rename the file (I never recommend deleting!).

After adjusting the NTFS permissions and changing the file’s name and/or location you can kill the process and subsequently change the start type of the service to disabled. All can be done online without stopping any productive function.

Enjoy!

Advertisements

41 thoughts on “How to disable Server Infrastructure Licensing Service

  1. Well. I see no comments. This was incredibly helpful to me so I thought I’d leave you a note. Done the exact same setup with an R2 Essentials Hyper-V holding another Essentials VM.
    Same issue. Lets see if it stops restarting!

  2. Incredibly helpful thanks. Same setup here, R2 Essentials Hyper-V with R2 Essentials VM.
    Let’s hope it doesn’t shut down again!

    1. Hi Luke, thanks for the feedback. Logically thinking if the file was renamed there is no way to start it again, ergo nothing to restart your server ๐Ÿ™‚

  3. Has this worked, I am running into this on a windows sbs 2011 essentials that had the DC and DNS server roles removed since I wanted it to be in a workgroup? Has it shutdown since? Has there been any other problems?

  4. Just an FYI – this works for Server 2008/SBS 2011 – however I found when I killed the process it returned almost instantly – I was not able to take ownership of the silsvc.exe file either – the SYSTEM account kept taking it back. The only thing could do was attempt to give myself ownership of the file, then DENY ALL SYSTEM and EVERYONE from the file. Once that was done I was able to kill the process without it returning.

    1. Hi PG, interesting workaround. In my case after taking ownership (and subsequently allowing me full access) of the file I could rename it and after that kill the process permanently. But your solution with denying access to SYSTEM account has the same impact. Thanks for the feedback.

    1. Hi Anguel, I totally understand the frustration. But correct licensing doesn’t explicitly mean carefree implementation. The VM on physical scenario was meant for OEMs, hence someone else should take care of disabling the service with OOBE configs.
      Another example: “Windows is free on tablets with screen sizes of 9 inches or less”. I’ve never seen a system install image for that. Period.

  5. Moodjbow, you are right. But the thing that really annoys me is that they dare to completely shutdown a properly licensed business server without displaying a single warning before doing so. I had to dig through the logs to understand what was going on, first I thought that my power supply had failed. Who do they think they are to decide when to stop our business for some stupid licensing that is not implemented properly? In the licensing description (also ridiculous that it is put on a blog, like all their non-existing docs) I don’t even see a statement that the hyper-v host server is expected to be left in a workgoup. And leaving it in a workgoup has some other negative implications regarding management etc. I had tried to find information on this and finally decided that adding the host to the domain is the best solution, of course I did not know that the server would shut down after a couple of days… I had spent so much time to make Server 2012 R2 Essentials virtual and even wrote my own how-to on my blog : http://techie-blog.blogspot.de/2014/02/windows-server-2012-r2-essentials.html

    In the meantime I disabled silsvc – thank you very much for the wonderful solution! I just hope that they won’t push out some stupid update to break things completely.

    1. Jack, you have to make system files visible first – go to control panel there is file / folder settings somewhere, it opens a dialog similar to old Win XP folder properties where you can tell Windows to show hidden system files. Then you just right click the silsvc.exe, take ownership as your admin accound, then you can add your admin account to permissions and give it all permissions. From now on you can rename the file, kill the process, and finally set the service to disabled. Hope this helps.
      P.S.: Still can’t believe that Microsoft dares to shut down a properly licenced running business server without displaying a warning… Stupid idiots.

  6. Just wanted to point something out. After researching (for months actually!!) a small problem where I would get 2 audit failures on startup, I have finally found the culprit. Apparently SBS adds a service called “Windows Server Identity Management Service” that is not a part of the 2008r2 server install. I disabled the service and now I no longer get the audit failures on startup. Seems to be unnecessary.

  7. My initial reaction was ‘what the hell is silsvc.exe’ then I found your post. Definitely saved me some time- Thanks!!
    (running virtualized 2012 R2 Essentials)

  8. I was having the issue of the server restarting and I tracked it down to be the silsv.exe.. However, after I renamed the silsv.exe and rebooted the server, the service is no longer started, but….. Windows is now no longer activated. In the control panel>System…. it shows “Windows Not Activated” under the Windows Activation heading. Any Ideas?

      1. I tried “re-Activating” my windows using my activation key. It would not take the key. I have went back and renamed the “silsv.exe” to its original name. When I rebooted the server, the service now runs and windows is activated. I will have to look into what Thorsten suggest above. Thanks for the comments.

  9. I think the cleaner solution is to deactivate the service (set start=4). This has to be done offline, i. e. from Windows Recovery Environment). Just shutdown the server, boot from the DVD/ISO, open regedit, load the system hive, and change start from 2 to 4 (under the service branch silsvc).

    Now the service is deactivated, and no system files are altered. Any windows audit method will pass.

  10. About windows deactivation, I have seen no such issue, I believe that if you have a valid license key you should definitely be able to activate but if you are having issues, and I do not recommend this as a way to get around paying for a license, but you have the ability to activate using windows loader for windows 7, license keys are available for sbs and that should solve the problem.

    1. Hi, since you can take ownership you should be able to change permissions as well. I’ve never seen such NTFS misbehavior. Try once again to get full rights for the owner and make sure that no process is blocking the file using handle from sysinternals.
      Otherwise use Thorsten’s approach to boot from WinR.
      Best.

  11. I was able to delete the file by taking ownership, im going to explain it as detailed as possible.

    1 Take ownership of the file (silsvc.exe), located in under the system32 folder (You have to enable view system files on your properties)
    2. Give yourself full permissions
    3. Delete the users (System, TrustedInstaller and everyone) from the security tab
    4. Kill the silsvc.exe process under the task manager
    5. Delete the file

    That’s it.

  12. Brilliant thanks, had demoted our sbs2011 but still used it on the network. Silvsvc was regularly shutting it down. Renamed the .exe and that has hopefully sorted it.

  13. thanks alot!

    SILsvc complained about “The Forest Trust Check in the Licensing component did not pass because error 0x8007054B occurred in function f1 [PHQG]. The specified domain either does not exist or could not be contacted.”, yet netraces showed that all domain servers were reachable by the member server. after debugging our AD and Windows 2012 R2 Foundation server for over 8hrs I gave up and disabled the service… for now.

    here’s a way to do it without having to modify permissions or booting into recovery: start an elevated command prompt and execute
    taskkill /IM silsvc.exe /F && sc config silsvc start=disabled

    1. Hi Thomas,

      thank you very much for this elegant solution!

      I can confirm that the proposed command concatenation with && works reliable. Just tested in a virtual machine with Windows Server 2012R2 Essentials. The silsvc service stays deactivated after a reboot.

      Here is the log (prove) from the shell:

      ————————————————–
      C:\Windows\system32>sc query silsvc

      SERVICE_NAME: silsvc
      TYPE : 10 WIN32_OWN_PROCESS
      STATE : 4 RUNNING
      (NOT_STOPPABLE, NOT_PAUSABLE, IGNORES_SHUTDOWN)
      WIN32_EXIT_CODE : 0 (0x0)
      SERVICE_EXIT_CODE : 0 (0x0)
      CHECKPOINT : 0x0
      WAIT_HINT : 0x0

      C:\Windows\system32>taskkill /IM silsvc.exe /F && sc config silsvc start=disabled

      ERFOLGREICH: Der Prozess “silsvc.exe” mit PID 2504 wurde beendet.
      [SC] ChangeServiceConfig ERFOLG

      C:\Windows\system32>sc query silsvc

      SERVICE_NAME: silsvc
      TYPE : 10 WIN32_OWN_PROCESS
      STATE : 1 STOPPED
      WIN32_EXIT_CODE : 1067 (0x42b)
      SERVICE_EXIT_CODE : 0 (0x0)
      CHECKPOINT : 0x0
      WAIT_HINT : 0x0

      —————————————–

      BTW short translation of the German output: “SUCCESS. “The process silsvc.exe was terminated”. Change ServiceConfig: SUCCESS

      So, it is not necessary anymore to open the registry offline for modifying the service start option.

  14. Heck, disabling licence servers – brings us back to the NT days.

    Did anyone mistakenly purchase 2012 Essentials thinking it would be a suitable member server?

    Foundations doesn’t let you install in a VM so that isn’t suitable, I know some people complain about too many license options, but I think there isn’t enough – or at least they leave an annoying gap in places you need stuff.

    Adding HyperV is new to me, this wasn’t originally the case which is obviously why the guest version is having an issue as it does not realize it can run “not as a DC”.

    1. Simon, I can sing a whole opera about it: do you think I implemented Essentials because tight is right? No, it was the alleged ‘simplicity’ for Small Businesses (in my customer’s case the password sync with O365 without configuring AD federation). Now I invested more time to twist and tweak. Oh, whatever.
      PS: my old IT guts tell me that Essentials will be deprecated instead of improved. That’s MS: abandoning genuine discoveries and ’embracing’ established third party solutions.
      Pooh!

  15. Just a follow on from a year ago, I can say that this successfully resolved the issue for me.
    Has there actually been any word from MS on this issue? Because it took me a good while to realize what was going on before finding your article.
    Much appreciated again.

  16. Microsoft is changing its products in extremely inconsistent and unprofessional ways, following hypes and their changing manager’s changing moods. In former versions there was at least something to rely on, now everything is chaos, they don’t even care about documenting and writing clear licensing guidelines, not only for Windows 10 but also for their server products. At the same time things become more complex through virtualization etc. Finding your small business server shut down without warning is a desaster but they just don’t care. Let’s see how long it will take until they lose all customers, they are working in the “right” direction…

  17. IMPORTANT NOTE for those trying Thomas’s great May 21st solution. You MUST HAVE A SPACE AFTER THE EQUAL SIGN (The forum software may remove extra spaces from posts).
    (At elevated cmd prompt) taskkill /IM silsvc.exe /F && sc config silsvc start= disabled (space between = and disabled)

    Even after that then the service still resets the startup, so perhaps Microsoft has gotten wiser (with updates), or other posters just had better luck.

    To get it to stick I had to first take ownership of C:\Windows\System32\silsvc.exe, then give myself (the administrator account) full permissions, and remove all other users (System, TrustedInstaller and everyone) from the security tab as per Antonio Aguirre’s 12/16/14 post. I didn’t need to delete the file. Just changing the permissions were enough to prevent the service from restarting and allowed the sc command to change the startup to disabled.

  18. Sweet baby Jesus… This had been an issue for months.
    EBS environment was upgraded but retained one server running FSMO roles, which proceeded to shut down weekly.

    Renamed silsvc.exe.msu and stopped the process.
    Event viewer shows event 7034 The Software Licensing service terminated unexpectedly. It has done this 1 time(s).

    Will inform if this did not work, I doubt it occur again.

    Thank you so so sooooo much!

  19. Hi Joachim,
    please read the post above from Kinga, in his case Windows showed not activated status as well. I cannot judge under what circumstances this happens, but you can either live with that or roll-back the silsvc and/or activate over the phone, as proposed here: http://answers.microsoft.com/en-us/windows/forum/all/error-0x80070426windows-activation-error-error/25eb3632-c704-4872-9584-e530ad22681d
    After that you can disable the service in one command line as proposed and improved by Thomas, Thorsten and Marty here (search for &&)

    1. Moodjbow,

      Thanks for the reply. I ran “taskkill /IM silsvc.exe /F && sc config silsvc start= disabled”
      Windows Standard Server is still showing as not activated, I successfully ran a windows update however.

  20. Hi Joachim,
    I hope that everything will still work, despite the status, from experience with other non-activated installations. But I’d still suggest that you monitor the system for a while.
    Best

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s