I have been working on a DirectAdmin 2 Plesk migration script. This is work in progress and "AS IS". It also requires some general Linux/programming skills to use. Is it not meant as a ready-to-use migration system. It needs work. No documentation as of now.
You can get it from Git:
https://github.com/Tozzje/da2plesk/
Basicly, this script takes an unpacked DirectAdmin backup (login as admin on DA -> Create/restore backup -> select user and create backup. Copy the .tar.gz backup to your plesk server, unpack it somewhere) and retrieves data from the backup file.
The script outputs a series of CLI commands, run those to migrate the domain.
It does the following:
- Find and replace pathnames to Plesk path structure
- Create client account and subscription
- Upload files using ncftpput
- Create and insert databases and database users
- Create and migrate POP3 accounts (including e-mail using imapsync)
- Create mail forwards
- Create subdomains, aliases, pointers (using custom 301 redirects)
- Migrate protected directories and restore/reset .htaccess files (set proper password file location)
- (optionally) e-mail your customer with the new login details.
- Install cron scripts
It does NOT:
- Do anything DNS related
- Migrate mailinglists
Current issues:
- DirectAdmin supports 1 MySQL username for multiple databases. Plesk does not, so any account utilizing this will result in an incomplete MySQL migration
- The script sets the mysql password using MySQL CLI instead of PSA tools. This causes the 'DB WebAdmin' link to fail in Plesk. Fix is to enter the MySQL user password in Plesk.
- Limited to one account at a time
- Script needs to differentiate between errors and warnings, and exit on error(s).
- Uploading lots of files fails due to emphemeral port exhaustion. (
http://www.ncftp.com/ncftpd/doc/misc/ephemeral_ports.html)
The script relies on a file containing all e-mail passwords. I have gathered the e-mail passwords by patching Dovecot to log passwords. More details on this will be in the readme.md.