将电子邮件帐户转移到其他域

时间:2014-04-01 00:44:29

标签: email plesk

我想将 domain.org 电子邮件帐户转移到 domain.tn ,以使域名 domain.org 成为域名的别名域名域 domain.tn

这是可能的吗?

1 个答案:

答案 0 :(得分:3)

正如我已经说过的,最简单的方法是在订阅之间转移邮件帐户 在目标域上创建与源域名称相同的新邮件帐户。 可以使用shell脚本和PLesk CLI实用程序/ usr / local / psa / bin / mail自动完成 - 只需获取/var/qmail/mailnames/domain.org/中的文件夹列表并在循环调用中:

/usr/local/psa/bin/mail -c <mail>@domain.tn -passwd <somerandompass>

这里的问题是你会错过帐户别名。

下一步是将来自/var/qmail/mailnames/domain.org/somemail/的内容复制到/var/qmail/mailnames/domain.tn/somemail/。修复popuser的权限:popuser(如果需要)。

现在您在domain.tn上拥有与domain.org上相同名称的邮件帐户。 问题在于您使用一些临时密码创建了此帐户,您需要在domain.org上进行更改。

因此,以下查询显示此域名上相同名称的帐户的当前和旧密码:

SELECT
    domains.name, mail.mail_name, account_id, dom_id, password, passfrom 
FROM accounts
    INNER JOIN mail ON accounts.id = mail.account_id 
    INNER JOIN domains ON domains.id = mail.dom_id 
    INNER JOIN (select mail_name, password passfrom from mail, domains, accounts where domains.name = 'domain.org' and domains.id = dom_id and accounts.id = account_id) tfrom ON mail.mail_name = tfrom.mail_name  
WHERE 
    domains.name = 'domain.tn';

以下查询使其等效:

UPDATE accounts 
    INNER JOIN mail ON accounts.id = mail.account_id 
    INNER JOIN domains on domains.id = mail.dom_id
    INNER JOIN (select mail_name, password passfrom from mail, domains, accounts where domains.name = 'domain.org' and domains.id = dom_id and accounts.id = account_id) tfrom ON mail.mail_name = tfrom.mail_name 
SET
    password = passfrom
WHERE
    domains.name = 'domain.to';