Mac – How should I copy OS X server environment to another machine for update

backupmigration-assistantosx-serverserver.apptime-machine

I have a server running Server.app (3.2.2) on Mac OS X 10.9.5. It hosts File Sharing, Mail, VPN, Websites, DHCP, DNS, and Open Directory etc. It also hosts phpBB3 bulletin boards.

Because the OX version is not up-to-date, I want to transfer everything to a new Mac mini running OS X El Capitan (10.11). I thought it would be safer to use another machine than simply updating the running server machine itself.

The server machine has two partitions and one is used for the Time Machine backup.

I thought a situation like this is not uncommon, and should be straightforward. But seemingly I was wrong… it might be more like heart bypass surgery.

My initial plan was to import the latest Time Machine backup of the old server to the new Mac mini with Migration Assistant.app. While both machines are connected to the same local network, I could not let Migration Assistant.app find the backup file. I chose "From a Mac, Time Machine backup, or startup disk" on the screen, but on the next screen the old server is not automatically shown, and I could not connect to the server manually through the "Other Server…" button either.

Then I tried to manually copy the Time Machine backup (Backups.backupdb) to a partition of the new Mac mini. Although the destination on the new Mac mini is formatted to OS X Extended (Journaled), Finder.app complains, "The operation can't be completed because it isn't supported."

So at the very first step of the long winding road, I'm already stuck. Could anyone advice me how to copy the old server to new machine to inherit the server function without causing a disaster? At the moment I have three scenarios.

  1. Copy Time Machine backup somehow (I need to know how, though!) to the second partition of the new Mac mini and then use Migration Assistant to import it. …. The backup is not the latest state of the old server, but most of data will be available. I don't need to stop the server while copying data (probably). Question is how to copy the backup file to the new desination.

  2. Use Migration Assistant directly from the old server to the new server. (Have not tried yet)…. Obiviously, I need to halt the server quit a long time to do this.

  3. Just bluntly try to update the old server to El Capitan and install the new version of Server.app. Try to recover from Time Machine backup when failed. … I thought this aproach is too risky.

Best Answer

There is no silver bullet to migrate your Mavericks server installation to a brand new machine.

It really depends on the acceptable downtime and on the hardware.

First some facts:

  • Migrating a server installation or a Time Machine backup of it over a network is not possible
  • Any migration either with the System Assistant or the Migration Assistant has to be completed before starting the new Server.app
  • Copying a Time Machine backup (Backups.backupdb) can't be done simply with the Finder by drag and drop. Time Machine has to be stopped while copying - it is possible to copy it with the Finder but not by simply dragging and dropping!
  • A backup to a second partition on the same disk is - in the proper sense - no backup.

Prerequesites:

OS X El Capitan bootable installer thumb drive


  1. dd or rsync method

    • Start the new Mac in Target Disk Mode and attach it to the old Mac with a Thunderbolt cable
    • Prepare the additional disk - i.e. remove all partitions except the EFI partition (and the Recovery HD if necessary - but it will be recreated later if not present)
    • Now either create a new partition using gpt with the same size as the server volume on the target disk and dd the source partition to the target partition in Recovery Mode or booted to the installer thumb drive.
    • or install Carbon Copy Cloner (which uses rsync), create a new partition on the target with Disk Utility and clone the source volume to the target volume
    • unmount the new Mac and detach the Thunderbolt cable
    • boot to the OS X El Capitan bootable installer thumb drive and "upgrade" the old server installation
    • Download and start Server.app

      Time needed:

    • dd: ~85 min (all blocks are copied)

    • rsync: depends on the size of all files and folders (~50-70 MB/s)
    • OS X install: ~30-40 min
  2. System Assistant

    • Start the new Mac in Target Disk Mode and attach it to the old Mac with a Thunderbolt cable
    • Now create two volumes with Disk Utility - one for the future main volume and one for the Time Machine backup volume.
    • Disable "Ignore ownership of this volume" for the new "backup volume"
    • Stop Time Machine in the System Preferences
    • In Finder open your current backup volume
    • Choose the backup folder and hit cmdC
    • open the new Time Machine backup volume and hit shiftalt cmdV. After some time you have to enter an admin name and its password. Alternatively use this method: Time Machine: How to transfer backups from a current backup drive to a new backup drive.
    • After copying is done unmount the volume and detach the new Mac mini.
    • Reenable Time Machine in the System Preferences
    • boot the new Mac mini to the OS X El Capitan bootable installer thumb drive and install OS X to the system volume
    • While configuring the new Mac use the System Assistant to migrate users and data from the Time Machine backup volume.
    • Download and start Server.app
  3. Migration Assistant (keep already installed OS X El Capitan)

    • Split your main volume in two on your new Mac mini
    • Disable "Ignore ownership of this volume" for the new "backup volume"
    • Stop Time Machine in the System Preferences on the old Mac mini
    • Share the Time Machine backup volume on the old Mac mini
    • Mount the shared Time Machine backup volume on the new Mac mini
    • Choose the backup folder and hit cmdC
    • open the new Time Machine backup volume and hit shiftalt cmdV. After some time you have to enter an admin name and its password.
    • Open Migration Assistant on the new Mac mini and migrate the server installation from the local backup volume
    • Download and start Server.app
  4. Just bluntly try to update the old server to El Capitan and install the new version of Server.app. Try to recover from Time Machine backup when failed.

    If the upgrade is successful that's by far the fastest method (dding to the new server not included). Disable Time machine before upgrading.

  5. (Experimental) Migrate everything to a hypervisor - but that's probably an extra answer.

    • Get a hypervisor like VMware ESXi 6.0 and install it on a Mac mini
    • Install the vSphere client on a VM Windows box.
    • Create an image of the old Mac mini
    • Probably some hacking (of the hypervisor and the OS X image) is necessary to get that running
    • In the future you may easily move guest VMs to new hardware by simply firing up vSphere client and choosing a new host also equipped with an hypervisor.
    • link1 link2 google-search-link