~3 min read • Updated Mar 1, 2026
1. آمادهسازی سرور مقصد
قبل از شروع مهاجرت، باید DirectAdmin روی سرور جدید نصب شود. میتوانید از پشتیبانی DirectAdmin یک لایسنس موقت رایگان برای مهاجرت درخواست کنید. پس از پایان مهاجرت، لایسنس اصلی خود را روی سرور جدید اعمال کنید.
نکته مهم برای لایسنسهای Legacy: لایسنس موقت ارائه نمیشود. این لایسنسها دیگر قابل نصب روی سرور جدید نیستند و باید از یک لایسنس Legacy دیگر استفاده کنید.
1.1 روشهای نصب DirectAdmin
A. روش آسان — نصب پیشفرض
با یک دستور، DirectAdmin همراه با نسخههای پیشنهادی PHP و نرمافزارهای لازم نصب میشود.
B. روش متوسط — بارگذاری متغیرهای محیطی قبل از نصب
export [email protected]
export DA_NS1=ns1.example.com
export DA_NS2=ns2.example.com
export php1_release=8.0
./setup.sh LICENSE_KEY
C. روش پیشرفته — بارگذاری options.conf
میتوانید فایل options.conf و کل مسیر /usr/local/directadmin/custombuild/custom/ را قبل از نصب به سرور جدید منتقل کنید.
نکته: مطمئن شوید نسخههای PHP و MySQL/MariaDB در فایل options.conf توسط نسخه فعلی DirectAdmin پشتیبانی میشوند.
2. نکات مهم قبل از مهاجرت
2.1 برنامهریزی DNS
DNS مهمترین بخش مهاجرت است. بررسی کنید چه کسی کنترل DNS دامنهها را بر عهده دارد.
- اگر DNS خارجی است، کاربران باید رکوردها را دستی تغییر دهند.
- TTL را قبل از مهاجرت کاهش دهید.
- اگر نیاز به تغییر DNS Server یا Glue Record دارید، رکوردها را روی هر دو سرور (قدیم و جدید) به مقصد جدید اشاره دهید.
2.2 فایلهای تنظیمات
فایل directadmin.conf معمولاً بهتر است نسخه پیشفرض باشد. فقط موارد زیر را اصلاح کنید:
ns1وns2max_username
قالبها و اسکریپتهای سفارشی را بررسی کنید:
/usr/local/directadmin/data/templates/custom
/usr/local/directadmin/scripts/custom
Multi Server Setup را دوباره پیکربندی کنید. تنظیمات php.ini برای تمام نسخههای PHP را بررسی کنید.
3. روشهای مهاجرت
سه روش کامل برای مهاجرت وجود دارد. روش سادهتر، downtime بیشتری دارد. روشهای پیشرفته downtime را کاهش میدهند اما نیازمند تجربه بیشتر هستند.
A. روش آسان — بکآپ کامل
مناسب برای کاربران تازهکار.
مرحله 1 — ساخت بکآپ کامل
Admin Tools → Admin Backup/Transfer
Who: All Users
When: Now
Where: /home/admin/admin_backups/
What: All Data
مرحله 2 — انتقال بکآپها به سرور جدید
rsync -av /home/admin/admin_backups/ root@dest_server_ip:/home/admin/admin_backups/ --delete
مرحله 3 — ریاستور روی سرور جدید
از همان ابزار Admin Backup/Transfer برای ریاستور استفاده کنید.
پایان.
B. روش متوسط — بکآپ جزئی + همگامسازی home
downtime کمتر، نیازمند دانش بیشتر.
مرحله 1 — ساخت بکآپ جزئی
در بخش “What” گزینههای زیر را غیرفعال کنید:
Domains DirectoryE-mail Data
مرحله 2 — ریاستور کاربران
مطمئن شوید همه کاربران با موفقیت ریاستور شدهاند.
مرحله 3 — همگامسازی پوشه home
rsync -av --progress --delete /home/ root@dest_server_ip:/home/
هشدار: این دستور کل /home مقصد را حذف و جایگزین میکند.
پایان.
C. روش پیشرفته — بکآپ جزئی + همگامسازی home + همگامسازی MySQL
کمترین downtime، اما نیازمند تجربه بالا.
مرحله 1 — ساخت بکآپ جزئی
گزینههای زیر را غیرفعال کنید:
Domains DirectoryE-mail DataDatabase SettingsDatabase Data
مرحله 2 — ریاستور کاربران
مرحله 3 — همگامسازی home
rsync -av --progress --delete /home/ root@dest_server_ip:/home/
مرحله 4 — توقف MySQL روی هر دو سرور
sed -i -e 's/mysqld=ON/mysqld=OFF/g' /usr/local/directadmin/data/admin/services.status
systemctl stop mysqld
MySQL باید روی هر دو سرور کاملاً خاموش باشد.
مرحله 5 — همگامسازی دیتابیس
rsync -av --delete --progress /var/lib/mysql/ root@dest_server_ip:/var/lib/mysql_new/
دستور را دوباره اجرا کنید تا مطمئن شوید دیتابیس تغییر نکرده است.
مرحله 6 — جایگزینی دیتابیس
پوشه mysql_new را به mysql تغییر نام دهید.
مرحله 7 — کپی فایلهای تنظیمات MySQL
/usr/local/directadmin/conf/my.cnf
/usr/local/directadmin/conf/mysql.conf
مرحله 8 — راهاندازی MySQL و ارتقا
mysql_upgrade
سپس:
da build roundcube
پایان.
Written & researched by Dr. Shahin Siami