8. Migration

Mac OS X Server to newer version

The best recommendation for this is to do a clean install of the new version. The drawback is that passwords cannot be preserved through this process. If you apply the upgrade to an existing older version of MOSXS, the passwords will be preserved and there is no need for Passenger.

If you've used Passenger before to create accounts and used an algorithm or other concatenation to create the passwords or imported them and they haven't been changed by the users since, you can use Passenger to do this again.

1. Select all users in the Workgroup Manager and export that file to a backup drive or another server.

2. Copy the entire directory of home directories to another drive. If you are using any Macintosh Manager files, copy those directories as well. There may be other folders you want to preserve as well that you will need to copy.

3. After installing the new version of the server, applying all updates, and configuring it properly so that you can manually create users and all works well, use Passenger to import, concatenate, setup passwords, setup for MOSXS, and export and then import those users and/or groups back into the Workgroup Manager.

4. Copy back all data including user's home directories to their new home directory folder(s).

5. Use Batch Permissions to set all permissions correctly

6. If you use Macintosh Manager in MOSXS 10.0 - 10.1.5, the new Macintosh Manager user preferences location changed in 10.2 and higher. Use Folder Migration to move preferences for all your users from ~/Library/Preferences to ~/Library/Classic/Preferences

AppleShare IP to Mac OS X Server 10.x

Being a tool, there are many more applications for Passenger than cannot be practically described. I'm choosing this one because it is fairly common one that I've done and you may find Passenger is a good choice for this particular migration. Evaluate the following overview of a migration to see if Passenger might also work for the migration you intend.

1. In AppleShare IP, in the Admin, select all users and select Export so that you produce an XML file of all the users.

2. If you are performing the migration on the same Mac, copy all the user folders and the XML to a different drive than the boot drive or a different Mac. You will be formatting the boot drive to install OS X Server. If you are moving to a different Mac for the server, you can skip this step.

3. Install OS X Server if needed and login as root. Install and run Passenger. Import the XML file into Passenger. If this is for OS X Server prior to 10.2, if the usernames on the ASIP server are longer than 8 characters (most likely they are), formulate the short name based on the username. A good choice is to use <u7> which allows one extra character in case there is a conflict with duplicate short name so that with append number for duplicates check box is checked, there will be space for the digit.

4. Devise a formulation for passwords, enter a master password if necessary, choose ASIP/Mac OS X Server for the export, click setup and click the appropriate version of Mac OS X 10.x . In this dialog you may choose to create the user IDs or allow the server to create them. Click okay to dismiss this dialog and you may Preview the export if you like and export the new XML file.

5. You will want to use folder migration to move the account folders because the account folder names on the OS X server may not match the new folders and they will most likely also have their data stored in a new embedded folder called "Documents". The relationship of the username to short name or username to username is the basis on which Passenger can match up folders for migration. Otherwise, if the usernames already match the short names, and the user's documents are already in a Documents folder, just move or copy the folders to the new location, usually the Users folder on the top level of the server volume or wherever else you may set your sharepoint. From Macintosh Manager accounts, the Preferences can also be migrated using folder migration to the Preferences folder in the Library folder on the OS X Server. Folder Migration will create any missing embedded folders. Folder migration to a Mac OS X Server is most successful when Folder Migration is done on the OS X Server as logged-in as root. See the subtonic below for instructions on using Folder Migration.

6. Launch the Server Admin on the OS X Server and import the XML file that you generated with Passenger for the OS X Server.

7. Use X Privileges in Passenger to set all the privileges correctly or to your liking. For Macintosh Manager home directories, it is best to leave the home directory as read/write for the user so that Macintosh Manager can write a special file which will prevent multiple logins for the same user.

Preserving ASIP passwords

Even though the XML header for OS X Server shows that it accepts "encrypted" as a password format, it doesn't. However, it does accept this password format if the XML is from ASIP 6.3. Here is a way to preserve ASIP passwords at the expense of not being able to explicitly set User IDs.

1. Import the ASIP XML file

2. Formulate the short name based on the username.

3. Select the setup for ASIP 6.3

4. For Internet Alias, check the box to use Short name for Internet Alias and don't check the box to check for duplicates with usernames.

5. Export the XML file.

The User IDs will be determined implictly by the server. It is not known how this method will handle some options such as the mail options.

Folder Migration

Folder Migration moves folders and files from one set of account folders to another. It requires a relationship be known of the account folder names. It can use imported or formulated usernames and short names. It can move files from the root of each account folder or a subfolder of it. Import users either from a file or folders, set the formulations for username and short name as needed and select Folder Migration from the Utilities menu.

Setup your migration instructions. Copy makes a copy, leaving the source account folders completely intact. This is safer but less informative. Move moves the contents of the folders whether or not they are on the same volume or another. This is riskier but will show you which files were moved and which were left behind. Any files that were matched will be removed from the source.

If a match is made, but there is a conflict because something in the destination folder has the same name as what is in the source folder, that part of the copy or move will not be made. There is no reporting of this. But the benefit of using move is it will leave the unmoved files or folders so that you can see which didn't make it. The migration is generally intended for new account folders that have nothing put in them yet.

Matches are case insensitive.

When a match is made, both the source account folders and the destination account folders which were matched, are touched meaning their modification date is set to present. I might have used labels or comments instead but neither is working or consistent in both Classic and Mac OS X.

Let's say we want to move preferences from one folder to another. In one account folder structure, the Preferences folder is located right in the account folder. On the destination, it is located in the Library folder. To do this, put "Preferences" in the field for copy the contents of and put "Library/Preferences" in the to field. In this example, if the Preferences folder doesn't exist in on the source side, the match isn't made and the copy or move is not done. However, if the Preferences folder doesn't exist on the destination side, it will be created.

Using the relationship for folder names, it is possible to move the contents from one folder to another even though the names are different such as below where the username is used for the old account folders and the short name is used for the new.