the codingmerc llc

application programming expert for hire

Enable Server Performance Mode on OSX El Capitan

In order to enable Server Performance Mode on OS X you need to use the serverinfo tool to tell the operating system to focus system resources on the installed and running server application. The catch is that with OS X 10.11 Apple introduced a concept called “System Integrity Protection“. This mechanism prevents the value to be set because the responsible .plist file resides in a protected directory.

In order to make that file writeable, the server needs to be rebooted into Recovery Mode which allows for SIP to be disabled using the following command:

csrutil disable

If you attempt to set Server Performance Mode with SIP enabled, you will receive the following error message:

ERROR: Server performance mode could not be modified.
Failed to create write propery list to disk!

Enable Server Performance Mode

I outlined the steps necessary below.

  1. Reboot the mac mini into Recovery mode
  2. Disable System Integrity Protection with csrutil disable
  3. Reboot
  4. Enable performance mode with sudo serverinfo --setperfmode 1
  5. Verify with sudo serveradmin settings info:enableServerPerformanceMode = yes
  6. Reboot the mac mini into Recovery mode
  7. Enable System Integrity Protection using csrutil enable
  8. Reboot the system one last time

If all goes well performance mode should now be activated and SIP should be enabled again.

Remote Access

Keep in mind that you can not disable SIP remotely. In turn that means that you can not enable Server Performance Mode remotely. You need physical access to the machine your server is running on. In my case I have a Mac Mini server running in a colocation site and now have to send an engineer to the box and run the steps mentioned above for me. Prior to 10.11 one could just enable Server Performance Mode via remote login. 

© 2017 the codingmerc llc