EL7 to EL 8 or 9: Difference between revisions
Jump to navigation
Jump to search
No edit summary |
No edit summary |
||
(5 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
[[Migrate|Back]] | |||
'''On destination host''' | '''On destination host''' | ||
Install Rocky [[Rocky,_Alma,_Springdale_8_QT_Install|8]] or [[Rocky,_Alma,_Springdale_9_QT_Install|9]] | Install QMT, Rocky [[Rocky,_Alma,_Springdale_8_QT_Install|8]] or [[Rocky,_Alma,_Springdale_9_QT_Install|9]] | ||
qmailctl stop && systemctl stop dovecot | qmailctl stop && systemctl stop dovecot | ||
Line 58: | Line 59: | ||
''If you're migrating from a Many-Domain to Many-Domain backend nothing more is required'' | ''If you're migrating from a Many-Domain to Many-Domain backend nothing more is required'' | ||
''If you're migrating from a Domain-Table backend to a Many-Domain backend you'll need to run [[Many-Domain_script|this]] script'' | ''If you're migrating from a Domain-Table backend to a Many-Domain backend you'll need to run [[Many-Domain_script|this]] script'' | ||
'' | ''If you're migrating from a Domain-Table to Domain-Table backend and want to convert to [[Many-Domain_conversion|Many-Domain]]'' | ||
# qmailctl cdb && qmailctl start && sleep 2s && systemctl start dovecot && toaststat | # qmailctl cdb && qmailctl start && sleep 2s && systemctl start dovecot && toaststat | ||
Questions, comments, suggestions, corrections...contact Eric on the QMT list | Questions, comments, suggestions, corrections...contact Eric on the QMT list |
Latest revision as of 07:20, 2 April 2024
On destination host Install QMT, Rocky 8 or 9 qmailctl stop && systemctl stop dovecot
On source host Source host most likely EL7 # dhost=192.168.1.3 Change IP address for your needs # ssh-keygen # ssh-copy-id $dhost # ssh $dhost
First rsync email db # rsync --progress -zv -are ssh /home/vpopmail/domains/ root@$dhost:/home/vpopmail/domains
Stop services for 2nd rsync # qmailctl stop && systemctl stop dovecot
Second rsync subsequent changes to email db # rsync --progress -zv -are ssh /home/vpopmail/domains/ root@$dhost:/home/vpopmail/domains
Bring over the rest of the data # rsync --progress -zv -are ssh /var/qmail/control/ root@$dhost:/var/qmail/control # rsync --progress -zv -are ssh /var/qmail/users/ root@$dhost:/var/qmail/users # rsync --progress -zv -are ssh /etc/tcprules.d/ root@$dhost:/etc/tcprules.d # rsync --progress -zv -are ssh /usr/share/toaster/include/admin.pass root@$dhost:/usr/share/toaster/include # rsync --progress -zv -are ssh /usr/share/toaster/include/admin.htpasswd root@$dhost:/usr/share/toaster/include # [ ! -d /etc/mail/spamassassin ] && sqadj= || sqadj=mail/ # rsync --progress -zv -are ssh /etc/${sqadj}spamassassin/.spamassassin/ root@$dhost:/etc/mail/spamassassin/.spamassassin # rsync --progress -zv -are ssh /etc/${sqadj}spamassassin/*.cf root@$dhost:/etc/mail/spamassassin # rsync --progress -zv -are ssh /usr/share/squirrelmail/plugins/ root@$dhost:/usr/share/squirrelmail/plugins # rsync --progress -zv -are ssh /var/lib/squirrelmail/prefs/ root@$dhost:/var/lib/squirrelmail/prefs
Dovecot files are not necessary for EL 8/9 they are only for reference # rsync --progress -zv -are ssh /etc/dovecot/toaster.conf root@$dhost:/etc/dovecot # rsync --progress -zv -are ssh /etc/dovecot/local.conf root@$dhost:/etc/dovecot
Bring over MySQL DBs # mysqldump -u root -p dspam > dspam.sql # mysqldump -u root -p spamassassin > spamassassin.sql # mysqldump -u root -p roundcube > roundcube.sql # mysqldump -u root -p vpopmail > vpopmail.sql # scp *.sql root@$dhost:/root
On destination host Create credentials # credfile=~/sql.cnf # echo -e "[client]\nuser=root\npassword=mysqlpass\nhost=localhost" > $credfile Edit credentials file and update password setting Load vpopmail # mysqladmin --defaults-extra-file=$credfile vpopmail < vpopmail.sql Load DSpam # mysqladmin --defaults-extra-file=$credfile create dspam # mysql --defaults-extra-file=$credfile -e "CREATE USER dspam@localhost IDENTIFIED BY 'p4ssw3rd'" # mysql --defaults-extra-file=$credfile -e "GRANT ALL PRIVILEGES ON dspam.* TO dspam@localhost" # mysql --defaults-extra-file=$credfile dspam < dspamdb.sql Load Roundcube # mysql --defaults-extra-file=$credfile -e "create database roundcube character set utf8 collate utf8_bin" # mysql --defaults-extra-file=$credfile -e "CREATE USER roundcube@localhost IDENTIFIED BY 'p4ssw3rd'" # mysql --defaults-extra-file=$credfile -e "GRANT ALL PRIVILEGES ON roundcube.* TO roundcube@localhost" # mysql --defaults-extra-file=$credfile roundcube < roundcube.sql Load Spamassassin # mysqladmin --defaults-extra-file=$credfile create spamassassin # mysql --defaults-extra-file=$credfile -e "CREATE USER spamassassin@localhost IDENTIFIED BY 'p4ssw3rd'" # mysql --defaults-extra-file=$credfile -e "GRANT ALL PRIVILEGES ON spamassassin.* TO spamassassin@localhost" # mysql --defaults-extra-file=$credfile spamassassin < spamassassin.sql
If you're migrating from a Many-Domain to Many-Domain backend nothing more is required If you're migrating from a Domain-Table backend to a Many-Domain backend you'll need to run this script If you're migrating from a Domain-Table to Domain-Table backend and want to convert to Many-Domain # qmailctl cdb && qmailctl start && sleep 2s && systemctl start dovecot && toaststat
Questions, comments, suggestions, corrections...contact Eric on the QMT list