I've migrated a server to another server/OS.
I did the following:
Old server:
- Scripts reads all users on server (DA API) So it can create accounts through API
- Tarred up /usr/local/directadmin/data/users/
- From all reseller levels created "user backups" and backup of resellers
New server:
- Created a script that (re)creates all users. (DA API)
- Overwritten /usr/local/directadmin/data/users/
- Restored al user backups
And that was it. Some files didn't got backuped completly, about (5%, mostly DB's)
I'm sorry, but can't give you the scripts as it is specifacaly written for that server. But all you really need are the user backups and a way to firstly create ALL accounts, as the user restore doesn't create the accounts.
You could get some errors when restoring user files. (Permissions on /etc/virtual/passwd) (some bug or something), but deleting the user and than creating it again through the panel should fix it. Otherwise just overwrite that specific user from the old files.
I've done all this on ONE server, put HD in new one as second and than installed everything and migrated as described above.
(This is how I did it, not sure if it works for everyone) If you don't change OS and Major Hardware, you can use
www.mondorescue.org