Comprehensive Guide to Migrating Accounts in DirectAdmin: Moving Users, Avoiding Sync Issues, Multi Server Transfers, and rsync Data Pulling

This article explains how to migrate users between resellers, avoid synchronization issues during backup/restore operations, handle transfers between multi server setups, manage DNS and domain conflicts, and efficiently move large data directories using rsync. It provides practical steps, scripts, and best practices for smooth account migration in DirectAdmin.

DirectAdmin MigrationMove Usersrsync Transfer

~3 min read • Updated Feb 28, 2026

1. Moving Users Between Resellers


DirectAdmin provides a built in interface for transferring users between resellers:


Admin Level → Account Manager → Move Users Between Resellers

You can also access it directly via:


https://yourdomain.com:2222/CMD_MOVE_USERS

This tool is a GUI wrapper for the move_user_to_reseller.sh script. You can run it manually:


/usr/local/directadmin/scripts/move_user_to_reseller.sh 'user' 'oldreseller' 'newreseller'

2. Avoiding Sync Issues During Backup/Restore Migration


When migrating accounts from server A to server B, data may change between backup creation and DNS propagation. Common concerns include:


  • New email arriving on server A
  • Database updates after backup creation
  • User changes (passwords, files, settings)

General recommendation: Lower DNS TTL several hours before migration.


2.1 Preventing Email Loss


To ensure no email is lost:


  • Block port 25 on server A temporarily (SMTP senders will retry later)
  • Or perform a final rsync of mail data right before DNS switch

2.2 Handling Database Changes


Databases are harder to sync. Options:


  • Perform a final mysqldump and import right before DNS switch
  • Temporarily point server A’s website to server B’s database
  • Enable maintenance mode in CMS (WordPress, Joomla, etc.)

2.3 Other User Changes


You may suspend the user on server A during migration and show a maintenance page to prevent changes.


3. Migrating Users Between Multi Server Setup (MSS) Linked Servers


When servers A and B are linked via Multi Server Setup with DNS zone transfer, restoring a user on B may cause a “Domain Already Exists” error.


3.1 Steps to Fix the Issue


Step 1: Create backup on A and transfer it to B.


Step 2: On server B, go to:


Admin Level → Multi Server Setup

  • Disable Domain Check
  • Keep Zone Transfer enabled

Step 3: Change restore behavior:


Admin Level → Admin Backup/Transfer → Backup/Restore Settings

Enable:


Check for domain conflict in domainowners instead of named.conf

Step 4: Restore the user normally on B.


Step 5: Re enable Domain Check in MSS.


Step 6: When deleting the user from A, ensure:


Leave DNS

This keeps DNS zones intact while removing the account.


4. Pulling Large Data from Remote Server Using rsync


If a user has massive data under /home/username/domains/, it is better to exclude it from the backup and transfer it manually.


4.1 Create Backup Without Domains Directory


Admin Level → Admin Backup/Transfer → Create Backup → Step 4: What

Deselect:


Domains Directory

This produces a much smaller tar.gz file.


4.2 Restore the Backup Normally


Restore the tar.gz file on server B.


4.3 Pull the Domains Directory via rsync


On server B, run:


rsync -ave 'ssh -p 22' 1.2.3.4:/home/username/domains/ /home/username/domains/

Replace:


  • 1.2.3.4 → IP of server A
  • 22 → SSH port

For enhanced security:


rsync -ave 'ssh -l username -p 22' oldserver:/home/username/domains/ /home/username/domains/

This ensures only user level access is used.


Written & researched by Dr. Shahin Siami