deployment seminar

Configuring DeployStudio 101: Part 2

Hi All, and welcome back to our series on configuring DeployStudio. Last time, we went over where you can find out information on DeployStudio and running the install on our Mac Server.

This ‘part 2’ looks to cover the configuration of the DeployStudio Repository and server. ‘Part 3’ should cover the configuration of the Netboot service and building of the DeployStudio NetBoot set. These should leave you with a fully functioning DeployStudio solution.

The usual Disclaimer:
While the author has taken care to provide our readers with accurate information, please use your discretion before acting upon information based on the blog post. Amsys will not compensate you in any way whatsoever if you ever happen to suffer a loss/inconvenience/damage because of/while making use of information in this blog.

Key Details

OS Used:                              OS X Yosemite (10.10.5)

DeployStudio Used:                        1.6.16

I will often be using “DS” as shorthand for “DeployStudio” throughout this series.

I will also be using “Repo” as shorthand for “Repository” throughout this series.

Step-By-Step: The Repo File Share

In a similar way to Casper (and I believe SCCM), DS utilises a network file share to host and access the data it uses during the imaging process. This is referred to as the DS Repository or DS Repo for short. I’ve seen some admins try to configure this as the same location as the NetBoot image store (more on that next time), but I would highly suggest treating it as every other kind of file share. Personally, I’ll create a “File Shares” directory on the non-boot / data volume of the server, which is what I’ll do for our example.

  1. In the Finder GUI, navigate to the root of your non-boot / data drive.

DS blogs - 2- Data HD highlight

2. Create a new folder here called “File_Shares”. This will be used to host the server shares. My personal preference is to use underscores (“_”) in place of spaces in folders that system services or automation solutions may use, to minimise any risk if the related solution may have a bug!

DS - 2 - File_Shares

3. Inside this folder, create another new one called “DS_Repo”

DS - 2 - DS_Repo

4. Now launch your from the dock or the Applications folder (“/Applications/”).

DS - 2 - server app dock

5. Once loaded, go to the “Users” section of the

DS - 2- Users in Serverapp

6. Click the plus (“+”) symbol to start the new account creation.

DS - 2 - Add user server app

7. Enter “DS Repo Access” for the Full name (automatically filling in the Account Name with “dsrepoaccess”) and enter the desired password. This account will have read and write access to the DS Repo so should have a secure password. Do not click the “Allow user to administer this server” box, its not needed. Set the Home Folder option to “None – Services Only” and click “Create”.

DS - 2 - DS Repo Access user server app

8. Once created, go to the “File Sharing” section of the

DS - 2 - Server app file sharing

9. By default, your log in account’s home folder is automatically configured for sharing.

DS - 2 - Server app file sharing 2

10. I tend to remove this, simply by clicking the name, and clicking the minus (“-“) button, followed by the “Remove” button in the pop up window.

DS - 2 - Server app file sharing remove share

DS - 2 - Remove share confirm box

11. Now we’ll add our DS Repo folder to the file sharing. Click the plus (“+”) symbol.

DS - 2 - Server app add file share

12. In the Finder window, navigate to the “DS_Repo” folder we created in step 3.

DS - 2 - Finder file share

DS - 2 - Finder ds repo

13. Once found, select (not open!) the folder, and click the “Choose” button.

DS - 2 - Finder ds repo select

14. This will add the DS_Repo folder to the “Shared Folders” list in

DS - 2 - DS Repo in server app

15. We now need to edit user access to the share. Select the share in the “Shared Folders” window and click the pencil icon (or double-click the share).

DS - 2- File share edit

16. This will open the share settings page and show the default permissions assigned to the folder.

DS - 2- ds-repo summary

17. Optionally, you can disable SMB access to the share by un-ticking the “Share Over: SMB” box. I also set the primary group (in the example this is “Guests”) and everyone permissions to “No Access”. This is done by clicking the “Read Only” drop down menus next to each user and selecting “No Access”.

DS - 2 - set guest access

18. We now need to add our new “DS Repo Access” user to the Permissions list. In the same Window, click the plus (“+”) symbol.

DS - 2 - ds-repo add user

19. This will add a new (blank) user to the top of the list. Click in the new box and start typing the first three letters of the user.

DS - 2 - Add dsr user

20. A dropdown box will list any user’s that match your text entry. Click on the “dsrepoaccess” user to add them to the list. Confirm the user has “Read & Write” access.

DS - 2 - Full perms

21. Once complete, click “OK”.

DS - 2- final user list

22. Right, the share’s been added and permissioned, the next step is enabling file sharing! Click the “OFF” slider in the top right to turn the service on.

DS - 2- file sharing off

DS - 2- file sharing on

23. And that’s it; you’ve successfully enabled and configured the DS Repo File Share!

DS - 2- file sharing is running

Phew, that was a fair few steps (and a lot of work to post!). What next? Let’s get that DS Server Service configured, and up and running.

You can also quit the as we have no use for it for the remainder of part 2.

Step-By-Step: Configuring DeployStudio

24. Navigate to the “DeployStudio Assistant” shortcut, located in the Utilities folder (“/Applications/Utilities/DeployStudio Assistant”). Double click this to launch it.

DS - 2- DS assist

25. A new window will pop up. The first thing it’ll do is complain that the DeployStudioServer is not running on this computer. As this is going to be our DS server, we kind of need it working! Click “Start”.

DS - 2- start ds service

26. Once started, you’ll get another pop-up. Click “OK” to dismiss this.

DS - 2 - DS server running

27. And finally, you’ll be dumped into the DS Assistant wizard selection screen. As you can probably guess from the title of this blog, ensure “Set up a DeployStudio Server” is selected in the radio buttons, and click “Continue”.

DS - 2- set up server assist

28. The first screen will ask you for the address of the DS server to configure and fill in the default protocol (HTTP) and port (60080). These can be changed as part of this wizard. You’ll also be asked for a username and password. I’d suggest using the local admin details for now. Enter these and click “Continue”. Please Note: In the past we have had issues where a system proxy on the server has blocked the use of the DeployStudio Admin. Remember to add the server itself (typically via DNS name and / or IP) to the exclusions list in the relevant “Network” area of System Preferences.

DS - 2- DS assist connect

29. Once connected, you’ll be asked if you’re setting up a master or replica DS server. As this is our first one, it will certainly be a master. Ensure the “a master” radio button is selected and click “Continue”.

DS - 2 - setup master

30. Next Question: Do you want to setup a local folder or a network sharepoint for the DS Repo. If you want to host your Repo on a file share (as pair this guide) you should select “a network sharepoint” and click “Continue”. The second option is if you wish to serve the DS files from an externally attached Hard Drive.

DS - 2- network sharepoint

31. Next Question: Where is this network sharepoint? Fill in the network protocol, server name and share name in the “URL” box. For example, my “demo-server.local” hosting a share called “DS_Repo” over AFP would be entered as “afp://demo-server.local/DS_Repo”.

Please Note: Ensure to use the Fully Qualified Domain Name for the server that the client devices can resolve. E.g. If your Mac server is ‘’ then use this for the server address. You can also use an IP address if the client devices cannot resolve the DNS name, just be aware that you will need to re-run this wizard should that IP address change.

Also Note: you only need to enter the first letter of the protocol and the assistant will autofill the rest (e.g. enter “a” and it will autofill “afp://”).

DS - 2 - url

32. Remember our “dsrepoaccess” user? Fill in its username and password in the “User” and “Password” boxes. Don’t worry about the other boxes for now and click “Continue”.

DS - 2 - user details

33. Next Question: Email notifications! You may enable this if you wish and select what kind of emails you wish to receive. This would prove handy if you’re having trouble catching the error message when running deployments. For this demo, we’ll not bother. Click “Continue”.

DS - 2- add email nots

34. More Questions!! This time about the server connections. For this blog, we will leave these at their defaults (“No SSL encryption”, “Any”, “60080” and unticked). Click Continue.

a. The first options allow you to pick an SSL certificate to use to encrypt the DS encryption using HTTPS. This is recommended in a production environment, but is not required.b. The second and third options (“Interface”) allow you to modify the networking interface and port number DS uses for its communication. This is recommended if you have another service running on the default port and interface.

c. The last option (“Reject unknown computers”) will block any and all connection attempts from computers not already in the DS database. This option is useful for certain scenarios (say, to stop a user netbooting their personal device and running a workflow that wipes the internal Hard Drive) but sometimes causes more administration frustration then it prevents.

DS - 2- SSL options

35. Another question (we’re nearly there)! This time regarding controlling who has permission to run the setup assistant (what we’re running), the DS Administration application (we’ll hopefully cover that in a later blog) and the imaging runtimes. This should be a group that the DS server itself can read the membership of. For this blog we will leave these blank (any user in the directories the server can read is allowed access to each application) but for production it is highly recommended that these be configured.

DS - 2 - limited access

36. Next one, Multicasting! I’ve got to be honest, I haven’t yet had this work correctly and typically don’t bother anymore. It requires a fair bit of tweaking on both the DS server side and the networking side (so would require buttering up your networking tech), time that could be spent imaging Macs! However, if you can get it working correctly, this will both speed up your imaging, and reduce the network traffic it uses. For this blog, leave this as-is and click “Continue”.

DS - 2- multicast

37. We’re so close! Now, how do we want to identify our Mac devices individually? You can select either Hardware Serial Number or MAC Address. I would highly recommend using the first option, as this should be truly unique per Mac. With many Macs lacking an Ethernet interface and the use of USB to Ethernet and Thunderbolt to Ethernet adapters, many different Macs can actually have the ‘same’ MAC address as far as DS is concerned, so using the Serial Number is a better bet. Select this and click “Continue”.

DS - 2- UUID

38. Finally! Here you’ll have a screen asking if you wish to update the DS server with these settings. Click “Continue”.

DS - 2- complete

39. Once saved, you’ll get a confirmation message. Click “OK” and quit the DS Assistant.

DS - 2- settings saved

40. Right, all done. You can re-run the assistant as many times as required, however you may need to re-enter some details so make sure your documentation is up to scratch!

And that’s pretty much it. Congratulations you now have your DS server up and running.

Next time, we look at configuring a NetBoot set to work with your DS server, and how to configure the NetBoot service.


As always, if you have any questions, queries or comments, let us know below and I’ll try to respond to and delve into as many as I can. I’m especially eager to hear any feedback on this new series.

2 Replies to "Configuring DeployStudio 101: Part 2"

  • Mattias

    Great stuff!

    However, it’s too bad the Multicasting part is not handled here. My experience is that the deployment process is pretty slow, when the DS repository is located on the local hard drive. I have chosen to locate the DS repository on a (synology) SAN and this has speed up the process a lot!
    Our images are about 7-8 GB and the deployment part only takes about two minutes! Where in the old situation it could take up to an hour. I’m still not sure what caused this but it has crossed my mind that Multicasting could be the solution.

  • Hi Mattias,

    Thanks for the reply.
    I’m afraid I’ve not had too much experience with the multicasting and what I have wasn’t the best so I tend to avoid it. To be honest most, if not all of our installs will have the deployment data and netboot images / caches on a non-OS volume, and with gigabit Ethernet it always comes in as ‘good enough’.

    Currently we’ve moved to more of a minimalistic imaging approach (at most, laying down an OS, some sort of enrolment (Casper) or set of local tools (Munki) plus the configuration for these) which means that the time a device needs to be netbooted is drastically reduced.

    Thanks again for your reply!

Leave a Reply

Your email address will not be published. Required fields are marked *

I accept the Privacy Policy