extmail 批量導入用戶的程序使用說明


程序位置:extman/toolslinux

程序名:userctl.plweb


修改userctl.pl——windows

註釋掉139行(默認name取usename@前一部分)ide

#my $name = defined $opt{name} ? $opt{name} : $user;編碼

修改269行,添加$info[4](4爲name字段)加密

$rv = adduser $info[0],$info[1],$info[2],$info[3],$info[4];
unix

130行下添加一行代碼(自定義name字段)md5

my $name = $_[4];utf-8

234行下添加兩行代碼,並修改248行代碼(使add方法能夠自定義網盤空間和name字段)get

my $netdiskquota = $c->{SYS_USER_DEFAULT_NDQUOTA}; #default size got from webman.cf

my $name = $opt{name};

if(! (adduser $email,$password,$quota,$netdiskquota,$name)){


若是在批量導入時,原始密碼已經加密且不能獲取明文的狀況下,能夠這樣作——

首先,設置extmail的加密方式與原有的加密方式一直,須要修改webmail.cf和webman.cf兩個文件中的SYS_CRYPT_TYPE的值。這裏須要注意,若是要修改成md5方式,請選擇plain-md5,由於extmail官方解釋爲md5和md5crypt都是md5crypt方式,32位的hex的md5必須選擇plain-md5。

而後,修改extman/libs/Ext/Mgr/MySQL.pm的302行,改成my $passwd = $opt{passwd}; ,不使用encrypt來加密。



命令舉例:

添加一個用戶——

./userctl.pl --mod=add --name=test1 --username=test@test.com --password=123456

參數有不少,能夠執行./userctl.pl來查看參數,或直接看程序。


批量添加——

./userctl.pl --mod=badd --file=test.csv

文件能夠是csv或者txt的。內容爲一行一個用戶:郵箱全名,密碼,郵箱空間MB,網盤空間MB,用戶名。

好比:zhangsan@test.com 123456 1000 500 張三

字段之間要用逗號或者空格,不能用如tab。若是用戶名是中文的話,須要保證文件時utf-8的編碼格式。在linux下編輯,若是是windows上傳的,須要dos2unix來轉。


刪除一個用戶——

./userctl.pl --mod=del --username=test@test.com --delmaildir=1

delmaildir=1的意思是刪除用戶的同時,刪除此用戶的郵箱目錄。


批量刪除用戶——

./userctl.pl --mod=bdel --file=test.csv

test.csv中只保留username字段,不然會沒法刪除。

相關文章
相關標籤/搜索