Skip navigation

OS X Server 10.6.8 -> OS X Server 10.8.2 checklist

6123 Views 20 Replies Latest reply: Mar 30, 2013 6:36 AM by Gerben Wierda RSS
1 2 Previous Next
TigerKR Level 1 Level 1 (25 points)
Currently Being Moderated
Jan 18, 2013 12:37 PM

Hello,

 

I'm about to upgrade from Mac OS X Server 10.6.8 to Mac OS X 10.8.2 Server (my Mac mini Server hardware is 10.8 ready). The services that I run on the server are Mail (POP3, IMAP, SMTP), Web (HTTP, HTTPS), WebMail (currently squirellmail, but moving to roundcube), SoftwareUpdate, and Time (NTP). The process that I will follow to upgrade is:

 

A. ensure that all 10.6.8 updates are installed

B. make 10.6.8 backup

C. install clean 10.8 on 2nd internal HDD (I have a mac mini server with two internal HDDs, one of which is unused)

D. migrate all users, settings, apps, etc from 10.6.8 to 10.8 using OS X setup/migration

E. install all 10.8.2 updates

F. install OS X Server app

G. migrate all server settings from 10.6.8 to 10.8.2 using OS X server.app

H. configure virtual hosts

I. configure server.app settings

J. install MacPorts (for Amavisd-New, ClamAV, SpamAssassin, MySQL, RoundCube, etc.)

K. port install MySQL (for roundcube)

L. port install RoundCube

M. configure misc. settings in the new server app and flat files

 

Are those all the steps I should follow, and in the correct order?

 

Follow-up question, will my users IMAP folders persist through the upgrade? My understanding is that once the server is setup, users have to login to roundcube and subscribe to their IMAP folders, and then they're good to go. Is this correct?

 

Thank you so much for all of you help!

 

Best Regards,

 

TigerKR

Mac mini, OS X Server, 10.6.8
  • UptimeJeff Level 4 Level 4 (3,390 points)
    Currently Being Moderated
    Jan 19, 2013 9:03 AM (in response to TigerKR)

    personally, I don't bother with the migration tools... too often it gets messy.

    I like a very clean install and I like to know exactly what was moved and to where.

     

    - install clean 10.8, apply all updates 10.8.2 etc.

    - install Server.app 2.2

    - Verify DNS is good.

     

    At this point, you have a nice clean install.

    Clone it, so if anything goes bad, you can easily get back to this point.

     

    - Setup OD

    - migrate users (in most small biz environments, I just do an export of users/groups and deal with resetting pws)

         (a little extra work, but can be cleaner in the end)

    - Setup sharepoints, permissions

    - Configure/Enable Mail

    - Mailboxes can be moved quite easily because 10.6 and 10.8 both use dovecot. The difference though is that 10.8 names each user mailbox with their GUID not their shortname. In a typical mac server environment, I just copy these to new server, rename them with user GUID then reset permissions. Before you do this, you can check mail on the 10.8 server with an imap client, then look in the mailstore so you see how perms and the guid are setup. Copy old mailboxes over to new mailstore with the same name/perm scheme.

     

    - Setup everything else.

    (I'm not a ports user, so can't comment on that)

  • Paul Kleeberg Level 1 Level 1 (40 points)
    Currently Being Moderated
    Jan 21, 2013 12:41 PM (in response to UptimeJeff)

    I wish I was smart enough to comment on TigerKR's lilst which looks great, but I am encountering a challenge in migraating mail data.  Again, a 10.6.8 Server to 10.8.2 Server.  I cannot seem to find the mail files on the server.  The only location can find for the mail is /var/spool/imap/dovecot/mail but what I see are:

     

    drwx------  10 paul                      mail   646 Jan 21 14:28 C0021751-513E-4A3B-8829-F8AA4989FF15

     

    Uet all the documentation says that the mail files should be under shortnames.  How do I migrate these and attach them correctly?  Just like you say above but renaming with guid and ignore the fact that the directories have such odd names?

     

    Paul

  • UptimeJeff Level 4 Level 4 (3,390 points)

    My bad...

     

    On 10.6, each mailbox is named by the user's GUID.

    Each user mailbox has its owner set to the user, so in Paul's example above

    user=Paul is named:    C0021751-513E-4A3B-8829-F8AA4989FF15

     

    Going from 10.6 yo 10.8:

    If you exported/imported users (so that their GUID is preserved), then you can copy those mailboxes to the new server.

    On 10.8, all mailboxes are owned by _dovecot, so you'll want to run

    sudo chown -R _dovecot /Library/Server/Mail/Data/mail

      * adjust to your path

     

    Jeff


  • cellcore Level 1 Level 1 (40 points)
    Currently Being Moderated
    Jan 22, 2013 12:08 PM (in response to TigerKR)

    I recently went from 10.7 server to 10.8 server. Migration tool did not work at all.

     

    Had to basically do what UptimeJeff posted.

     

    I haven't used ports for a while after switching to this http://mxcl.github.com/homebrew/

     

    However if you follow the steps in this thread you don't need to install MySQL.

    https://discussions.apple.com/thread/4153247?start=0&tstart=0

     

    The email migration is pretty straightforward like UptimeJeff said as well.

    I used this command to move it. Takes a few minutes if your mailboxes are a few gigabytes.

    Run this command from the 10.8 server and it will do a full sync from the old server to the new server.

         sudo dsync -u username -f mirror username@IP_of_old_server

              EDIT - The username specified in the above command is you user's usernames.

              For example: sudo dsync -u Bob -f mirror Bob@IP_of_old_server

              Would sync Bob's email from the old server to the new server.

     

    That's it for email, no permissions checks or changes needed after this.

     

    Message was edited by: cellcore

  • angryiphoneuser Level 1 Level 1 (0 points)
    Currently Being Moderated
    Feb 9, 2013 12:32 PM (in response to cellcore)

    CellCore,

     

    How did you get this to work?  Firstly is asks for a password - adding 'dsync -u <remoteserveradmin>' allows it to accept the remote users mailbox password but then it returns an error saying it could not access a non-existant location in the /Network directory on the remote server.

     

    Any more hints on how you got this to work?  I have the weekend to rebuild a corrpted server with backup issues and have c.50 large Dovecot mailboxes to move to a new machine....

     

    Many thanks for any help

     

    Nick

  • UptimeJeff Level 4 Level 4 (3,390 points)

    Top copy mailboxes, I like to compress/copy/decompress in one motion.

    Because a maildir is thousands of tiny files, seems I get the best performance this way.

     

    Something like this (from the source machine)

     

     

        tar -cz /path/to/source/directory/ | ssh admin@10.5.5.10 tar xz -C /Volumes/Data/

     


  • angryiphoneuser Level 1 Level 1 (0 points)

    Thank you Jeff - I have the problem of file size to confront - but right now that is a quality problem.  The real route of the problem is Time Machine just doesn't backup OSX10.8 (2.2.1) Servers properly across the LAN (in my case a NAS box with Time Machine emulation). I have learnt this the hard way with corrupted user accounts  - restoring the server wholesale results in hundreds of issues stopping all server services working properly and I cannot just restore user accounts to a rebuilt server using TM. 

     

    Hence I have recreated the user accounts on the rebuilt server but because OSX assigns them different GUIDs (which are used to identify mail files) and hence I cannot just copy the mailboxes across and expect the rebuilt user accounts to access them.  I need to somehow sync or being across the data to the rebuilt accounts.

     

    Maybe I am missing an easy way to do this but haven't yet found it!  dsync sounds like a possible solution if I can get the syntax right.

     

    Any hints very welcome!!

     

    Nick

  • UptimeJeff Level 4 Level 4 (3,390 points)

    you can still simply copy...

     

    you'll need to have a list of old-server Name/GUID and new server Name/GUID.

     

    copy mailboxes.

    rename each mailbox to proper guid

     

    Get a list of name/guid on each server with:

     

     

    For the local directory

     

         dscl . -list /Users GeneratedUID

     

    For a shared directory

     

         dscl /LDAPv3/127.0.0.1 -list /Users GeneratedUID

     

    This should be much faster than a imap migration

  • cellcore Level 1 Level 1 (40 points)

    Don't alter the command I posted with different usernames, it will cause problems later on.

     

    Make sure ssh is enabled on the old server.

     

    If your admin accounts are the same across both servers then you will be fine with sudo. If not then it is best to run it as root as it will use the user you are running the command under to access the old server.

     

    http://wiki2.dovecot.org/Tools/Dsync

  • angryiphoneuser Level 1 Level 1 (0 points)
    Currently Being Moderated
    Feb 10, 2013 3:57 AM (in response to cellcore)

    Thank you Cellcore

     

    I have done a clean install of Server 10.8.2 on a new machine and have my sick Server 10.8.2 running with ssh enabled.  Admin accounts are identical (username and password).  A carbon copy of the user CLHouse has been created on the new machine. 

     

    I get the following error

     

    hds001:~ NickAdmin$ sudo dsync -u CLHouse -f mirror CLHouse@192.168.1.3

     

    WARNING: Improper use of the sudo command could lead to data loss

    or the deletion of important system files. Please double-check your

    typing when using sudo. Type "man sudo" for more information.

     

    To proceed, enter your password, or type Ctrl-C to abort.

     

    Password:

    dsync(root): Error: userdb lookup: connect(/var/run/dovecot/auth-userdb) failed: No such file or directory

    dsync(root): Fatal: User lookup failed: Internal error occurred. Refer to server log for more information.

    hds001:~ NickAdmin$

     

    Any ideas on what I am missing?

  • angryiphoneuser Level 1 Level 1 (0 points)

    Okay dumb error - I didnt have the mail service running on the rebuilt server.

     

    I now get:

     

    hds001:~ NickAdmin$ sudo dsync -u CLHouse -f mirror CLHouse@192.168.1.3

    Password:

    Password:

    Password:

    Permission denied (publickey,gssapi-keyex,gssapi-with-mic,keyboard-interactive).

    dsync-local(CLHouse): Error: read() from worker server failed: EOF

    hds001:~ NickAdmin$

     

    However I do not know what password it is seeking - not the NickAdmin password (identical on both machines) or the password for CLHouse user (identical on both machines).  ssh access is enabled for all users on the old server.

     

    This is the problem I originally encountered yesterday.

     

    Nick

     

  • cellcore Level 1 Level 1 (40 points)

    You'll need to create the users on the new install before running dsync.

     

    You may want to run -   sudo passwd root   - on the old server.

    Enter in a password for the root user and then use that on the second password prompt.

    The first password prompt will be for you sudo command on the local server then it will ask for a password on the remote server - which I think will be the root users password that you setup using the sudo passwd root command.

  • angryiphoneuser Level 1 Level 1 (0 points)
    Currently Being Moderated
    Feb 10, 2013 10:19 AM (in response to cellcore)

    An improvement but I now get:

     

    sh: dsync: command not found

    dsync-local(CLHouse): Error: read() from worker server failed: EOF

     

    dsync/? runs on both machines

1 2 Previous Next

Actions

More Like This

  • Retrieving data ...

Bookmarked By (2)

Legend

  • This solved my question - 10 points
  • This helped me - 5 points
This site contains user submitted content, comments and opinions and is for informational purposes only. Apple disclaims any and all liability for the acts, omissions and conduct of any third parties in connection with or related to your use of the site. All postings and use of the content on this site are subject to the Apple Support Communities Terms of Use.