用户工具

站点工具


doc:m:mldonkey_start

有关mldonkey

mldonkey是一款强大灵活的p2p工具。

安装

cd /usr/ports/net-p2p/mldonkey-core/ && make install clean

第一次启动和基础配置

确认用户harbinbeer已存在

echo 'mlnet_enable="YES"' >> /etc/rc.conf

echo 'mlnet_user="harbinbeer"' >> /etc/rc.conf

/usr/local/etc/rc.d/mlnet start && /usr/local/etc/rc.d/mlnet stop

之后会生成mldonky的工作目录:/home/harbinbeer/.mldonkey/

让mldonkey支持中文文件名

printf "export LANG=zh_CN.GBK\nexport LC_ALL=zh_CN.GBK" >> /home/harbinbeer/.profile

配置http管理

编辑 /home/harbinbeer/.mldonkey/downloads.ini

在allowed_ips中加入允许http访问的ip(段),比如:

  allowed_ips = [
  "127.0.0.1";
  "10.0.0.0/8";]

同时也可以通过修改http_port来定义http访问端口,默认是4080

cp /home/harbinbeer/.mldonkey/downloads.ini /home/harbinbeer/.mldonkey/old_config/

使用

完成初次配置后,启动mldonkey:

/usr/local/etc/rc.d/mlnet start

然后就可以通过浏览器访问ip:4080来管理

ed2k下载

添加ed2k服务器:

servers http://eserver.googlecode.com/svn/server.met

修改ed2k端口

点击options按钮,在plugins下拉菜单中选择donkey,修改ed2k-port

如果确认端口已经映射,可以把ED2K-force_high_id和ED2K-force_client_high_id设置为true

添加下载任务

单一任务可以在input行直接输入ed2k链接,也可以点击dl按钮,在弹出窗口输入多个ed2k链接

bt下载

修改bt端口

点击options按钮,在plugins下拉菜单中选择bittorrent,编辑BT-client_port

通过http添加bt任务

直接在input行输入种子链接即可

种子文件扫描

把种子放到/home/harbinbeer/.mldonkey/torrents/incoming/,mldonkey会自动扫描添加

给bt任务添加tracker

在input行输入:

tracker <file#>  http://tracker.publicbt.com/announce udp://tracker.openbittorrent.com:80/announce

<file#>可以在下载列表界面,鼠标悬停在任务名上看到

http下载

直接在input行或者dl窗口输入链接即可

常见问题

意外断电后,下载任务/列表损坏或丢失

mldonkey工作盘建议用zfs,如果ufs最好关闭softupdate

意外断电后,mldonkey无法启动

tail ~/.mldonkey/mlnet.log查看错误 也可以手工运行mlnet查看输出信息 有时候可以尝试删除/home/harbinbeer/.mldonkey/friends.ini

MLDonkey命令

用户命令

  • auth <用户名> <密码>: 用户登录
  • useradd <用户名> <密码> [<邮箱>] : 添加新mldonkey用户/更改用户密码
  • userdel <用户名> : 删除一个mldonkey用户
  • users : 列出所有用户和用户组
  • whoami : 列出所有已登录用户

用户组命令

  • groupadd <用户组名> <admin: true|false> : 添加用户组 <管理员>

服务器命令

  • vm : 列出已连接服务器
  • vma : 列出所有已知服务器
  • n <ip地址> [<端口>] : 添加服务器
  • server_banner <num> : 打印编号为<num>的服务器的旗帜(欢迎信息),其中<num>由vm命令获得
  • servers <文件名> : 从一个server.met文件中添加服务器
  • c [<num>] : 连接到更多服务器(或者连接到<num>号服务器)
  • x <num> : 断开与<num>号服务器的连接
  • id : 列出本机在已连接服务器上的id
  • preferred <true/false> <ip> : 设置/取消<ip>为首选服务器
  • bs <ip1> [<ip2> …] : 将所给ip加入服务器黑名单
  • bp <port1> [<port2> …] : 将所给端口加入端口黑名单
  • rem <serv1> [<serv2> …] : 从服务器列表移除指定服务器 ('all'清空服务器列表)
  • remove_old_servers :移除几天没有连接上的服务器

搜索命令

  • xs : 扩展搜索以获得更多的搜索结果(向一些低优先级的服务器发送查询请求)
  • vs : 显示查询历史和结果统计
  • vr <num> : 查看某此查询的详细结果,其中num由vs获得
  • view_custom_queries : 列出定义的自定义查询种类,如[Complex Search],[MP3 Search],[Movie Search],[Album Search]等
  • forget <num1> [<num2> …] : 丢弃指定编号搜索记录,num由vs获得
  • s [特殊搜索参数] <查询内容> : 在所有网络上搜索文件
    * 特殊搜索参数(SpecialSearchArgs)
    -minsize <size> : 限制最小文件大小 
    -maxsize <size> : 限制最大文件大小 
    -media <Video|Audio|...> : 限制文件类型 
    -Video : 指定为视频文件
    -Audio : 指定为音频文件
    -format <format> : 指定为特定格式 <扩展名>
    -title <word in title> : 搜索标题(Mp3 tag搜索)
    -album <word in album> : 搜索专辑(Mp3 tag搜索)
    -artist <word in artist> : 搜索艺术家(Mp3 tag搜索)
    -field <field> <fieldvalue>
    -not <word> : “非”条件搜索
    -and <word> : “与”条件搜索
    -or <word> : “或”条件搜索
    -without

好友命令

  • friends : 列出所有好友的名称和好友编号
  • files <client num> : 列出指定标号的好友的共享文件
  • vfr : 列出所有好友的详细信息,friends命令的扩展,包括IP和积分等
  • gfr <friend_num> : 请求指定编号好友的共享文件列表,以便用files命令查看
  • friend_add <client_num> : 添加指定编号客户端为好友,client_num可由downloaders和uploaders命令得到
  • friend_remove <client_num> : 移除指定编号好友 (编号all清空好友列表)
  • message <client num> <msg> : 向指定编号客户端发送消息

下载命令

  • cancel <num> : 取消指定编号的下载任务,用法同pause,另见confirm
  • confirm <yes|no|what> : 确认取消下载任务,当使用cancel取消下载任务后,需要用 confirm yes确认取消
  • d <num> : 下载指定编号文件,编号可由s等搜索命令获得
  • dllink <link> : 下载以ed2k、sig2dat、BT种子等链接形式给出的文件,比如ed2k打头的ed2k文件hash
  • dllinks <file> : 下载指定文件中的所有url(允许有空行)
  • dd <size> <md4> : 下载一个已知大小和md4-hash码的文件
  • http <url> : 从一个http/ftp/ssh url下载文件(注:FTP尤其是SSH仍处于实验阶段)
  • mirror <file_num> <url> : 给指定编号下载任务添加源(镜像),其中file_num由vd得到(这是迅雷的强项)
  • merge <file num1> <file num2> : 这是条强大的命令。这条命令将不同协议(ed2k/BT/HTTP/FTP等)但文件相同的下载任务链接到一起(可以说是mirror的升级版),其中 file1是主文件,不能取消链接(注:这条命令仍处于实验阶段)
  • force_download : 强制重新下载一个已经下载的文件。用法是,先用d/dd/dlink等命令下载文件,mldonkey会提示该文件已经下载,此时键入此命令
  • vd [<num>] : 不加参数将会列出所有处于下载队列中的下载任务信息,加上参数num则列出指定编号的下载任务
  • pause <num> : 暂停指定编号下载任务,all暂停所有任务,编号由vd获得
  • resume <num> : 恢复指定编号下载任务,用法同pause
  • tracker <num> <url> [<url>…]:给指定编号的BT热任务添加tracker服务器
  • priority <priority> <file_num1> [<file_num2>…] : 改变下载任务的优先级
  • rename <num> “<new name>” : 重命名一个已经完成下载的文件
  • commit : 将完成下载的文件从download文件夹移动到income文件夹,文件夹的具体位置在download.ini中设置
  • startbt <URL|file> : 开始一个BT下载任务

上传命令

  • compute_torrent <filename> <comment> : 为指定文件制作BT种子
  • nu <m> : 暂停上传m分钟。注:此命令受一个积分系统控制(credit system),没上传1分钟,得到1点积分(最大300),每暂停上传1分钟消耗1点积分,所以每次暂停最多300分钟。
  • reshare : 从共享目录更新共享文件列表。(现在mldonkey会自动监视文件变化,这条命令很少用了)
  • reshare_torrents : 更新共享的种子列表
  • seeded_torrents : 列出所有共享的种子
  • shares : 列出所有共享目录
  • unshare <dirname> : 将指定目录从共享目录中移除

全局控制命令

  • version : 打印mldonkey的版本
  • q : 退出当前的telnet会话
  • save <“options”|“sources”|“backup”> : 保存当前的选项(通常不用手动执行这条命令,mldonkey会每save_options_delay秒自动保存
  • kill : 保存配置文件并关闭mldonkey客户端
  • ! <command> : 远程执行shell命令,如: ! halt
  • close_fds : 关闭所有文件,清除文件缓存,释放磁盘空间。
  • close_all_sockets : 关闭所有打开的sockets。这条命令主要作用是mldonkey在IP改变后(动态IP)快速恢复正常工作,而不是等待连接超时。
  • activity <minutes> : 列出指定时间内的edonkey和overnet所有活动

用户配置命令

  • alias : 自定义命令,如: “alias ca cancel all”,使得 “ca” 等于“cancel all”
  • ansi <bool> : 如果设置成true,命令行将采用彩色显示文字,但是有些命令行并不支持(如windows的comandline),这时就需要将其设置成false
  • disable <num> : 禁止指定编号的网络
  • enable <num> : 激活指定编号的网络
  • html_mods : 切换web界面模式(两种)
  • html_mods_style [<style_num>] : 不加参数则列出所有可用的web颜色风格及编号,加上编号参数则选择指定web界面的颜色风格(切换颜色风格后web界面自动变回第一种模式,应该是个bug)
  • html_theme <theme> : 选择web界面的主题
  • import <dirname> : 从指定目录导入edonkey官方客户端的下载任务
  • port <port> : 改变ed2k端口,默认是4662,改变在重启core后生效
  • set <option_name> <option_value> : 设置某个选项的值
  • share<priority> <dir> [<strategy>] : 将指定目录以指定优先级共享,可选参数是共享策略。优先级越高,为此目录预留的上传槽越多。下面是预定义的共享策略:
    "all_files": 共享所有文件,包括子目录(默认) 
    "only_directory": 共享所有文件,不包括子目录
    "incoming_files":设置目录为默认文件下载目录,共享文件不包括子目录
    "incoming_directories": 设置目录为默认文件夹下载目录,例如多文件的BT任务。共享文件不包括子目录
  • unalias : 删除由alias设置的自定义命令,如: “unalias ca”
  • urladd <kind> <url> : 从url载入指定类型的文件,定义的kind如下
    <server.met> donkey服务器列表
    <rss> 增加rss同步频道. 其内容可由rss命令获得
    <motd.conf> Setup changes of the day
    <motd.html> Information of the day in HTML format
    <comments.met> edonkey的文件注释列表
    <contact.dat> Overnet网络结点列表
    <ocl> Overnet网络结点
    <kad> kad网络结点
    <geoip.dat> IP to country mapping database
    <guarding.p2p> IP过滤列表 (ipfilter and guardian v2格式)
    <nodes.gzip> fasttrack结点列表
  • urlremove <url> :从web_infos列表中移除url,web_infos列表由vwi命令查看
  • vo : 列出关键选项的值,如上传/下载限制速度,昵称,端口等
  • voo [<regexp | num>]: 列出所有可用选项,可选参数正则式作匹配条件,如voo *ED2K, voo *port
  • options [<section>]: 不加参数列出所有选项分类,如Header, main, interface, ed2k等,option 分类名 则列出指定分类下的选项
  • reset_md4 : 重置客户端的md4 hash(估计是被ban了才会用)

Overnet 命令

  • ov_boot <ip> <port> : 添加一个overnet结点
  • ov_boots : 列出所有overnet结点
  • ov_dump_bucket <bucket_nr> : 废弃指定序号索引桶,索引桶序号由ov_store得到,见ov_store(This is for development)
  • ov_dump_known_peers : dumps known_peers (This is for development)
  • ov_link <fhalink> : 从overnet网络下载一个以fha链接给出的文件(就像edonkey的ed2k链接一样)
  • ov_load <filename> : 从一个contact.dat文件中增加overnet结点
  • ov_md4 : 得到客户端在Overnet网络中的md4 hash码
  • ov_send_udp : 通过udp向ov网络中的指定客户端发送消息
  • ov_store : 显示在本客户端上索引的关键字和文件(overnet是纯p2p的网络,没有服务器,所以每个客户端都要存储一笑部分网络信息)
  • ov_view_stats_cmds : 显示overnet的状态(一堆正则式,调试用命令)
  • ov_web <urls> : 用指定url的ocl(overnet contact list)文件初始化

Kad(emlia)命令

  • kad_boot <ip> <port> : 添加一个kad结点
  • kad_dump_bucket <bucket_nr> : 废弃指定序号索引桶,索引桶序号由ov_store得到 (This is for development)
  • kad_dump_known_peers : dumps known_peers (This is for development)
  • kad_link <fhalink> : 从kad网络下载一个以fha链接给出的文件
  • kad_load <filename> : 从一个contact.dat文件中增加kad结点
  • kad_md4 : 得到客户端在kad网络中的md4 hash码
  • kad_send_udp : 通过udp向kad网络中的指定客户端发送消息(消息是16进制的)
  • kad_store : 显示在本客户端上索引的关键字和文件(见ov_store)
  • kad_view_stats_cmds : 显示Kad网络的状态
  • kad_web <urls> : 用指定url的ocl文件初始化

恢复命令

  • import_temp <temp_dir> : 从eDonkey / eMule / lMule临时文件目录导入未完成的下载,
  • scan_temp : 列出临时目录下的文件
  • recover_bytes <file_num1> [< file2_num2> …] : 尝试修复指定的部分下载的文件(字节级别),未完成部分用非零字节填充(最好用verify_chunks进行校验),file_num由vd得到,见选项max_recover_gap。
  • recover_temp : 从指定目录恢复未完成的下载。这个命令的作用是恢复那些文件信息丢失(files.ini)但是下载数据还在的下载任务,重建文件信息。并且只能恢复文件中已经完成的块(chunck)。
  • verify_chunks <num> : 按块(chunk)检查文件的正确性,num由vd获得

状态及统计命令

  • block_list : 列出被mldonkey阻止ip段,分成网络和本地两个列表
  • buildinfo : 显示mldonkey核心的版本信息
  • bw_stats : 显示上传/下载速度,共享文件数,上传槽/下载槽数
  • cs : 显示按按ed2k客户端软件分类的ed2k上传/下载统计表
  • csbt : 显示按BT客户端软件分类的BT上传/下载统计表
  • csm : 显示按eMule MODs分类的ed2k上传/下载统计表(emule_mods_count = true)
  • client_stats : 显示按按ed2k客户端软件分类的成功连接数/文件请求/上传/下载/阻止数统计
  • client_stats_bt : 显示按按BT客户端软件分类的成功连接数/文件请求/上传/下载/阻止数统计
  • diskinfo : 显示mldonkey磁盘信息,列出下载/共享/临时文件夹信息
  • downloaders : 列出当前正在从哪些客户下载数据
  • gdstats : 显示图形化的统计信息(只在web界面可用)
  • kad_boots : 列出kad网络结点信息
  • kad_buckets : 显示kad索引桶信息
  • kad_stats : 显示kad网络状态
  • links : 列出所有共享文件的ed2k链接
  • ov_buckets : 显示Oernet索引桶信息
  • ov_stats : 显示Overnet网络状态
  • runinfo : 显示mldonkey的运行信息,包括用户/网络种/DNS/系统信息等
  • sources : 显示下载文件的源的统计信息
  • sysinfo : 列出mldonkey的core build, runtime, disk, Port信息,见buildinfo, runinfo, diskinfo和portinfo
  • upstats : 上传统计信息,显示所有共享文件,并按请求数高低排序
  • reset_stats : 重置此次会话的统计信息
  • stats : 显示所有网络的传输状态
  • torrents : 列出服务器上所有BT种子文件
  • uploaders : 列出当前正在上传给哪些客户数据
  • uptime : 核心运行时间统计
  • vu : 显示当前的上传积分,关于上传积分见nu(上传命令)
  • portinfo : 列出mldonkey的端口使用情况

调试及测试命令

  这些命令可能会在没有通知的情况下被取消或改变. 使用的时候请注意 ;)

  • block_test <ip> : 测试指定ip是否被阻止
  • clear_log : 清空日志文件
  • close_log : 停止核心向日志文件写入信息
  • debug_client <client num1> [<client num2> …] : 记录指定客户端的行为到日志文件
  • debug_disk <disk> : 显示磁盘信息,如debug_bug /
  • debug_file <client nums> : debug file state
  • debug_fileinfo : 显示文件或文件夹信息,如debug_fileinfo /home
  • debug_rlimit : debug command, god konws…
  • debug_socks : for debugging only
  • dump_heap : dump heap for debug
  • dump_reliability : 列出用reliable_sources算法得到的可信任源及其ip
  • log : 将当前的日志信息打印到终端中
  • log_file <file> : 将核心信息写入指定文件
  • mem_stats : 列出详细的内存信息
  • networks : 列出已经连接到的网络
  • open_log : 激活日志记录
  • test_recover <num> : 显示指定文件中已经下载的段
  • use_poll <bool> : 用poll() 代替select(), mldonkey应该使用poll(),因为它更高效,而且没有1024文件描述长度限制
  • stdout <true|false> : 恢复日志到标准输出流

未分类命令

  • vc <num> : 查看客户端信息,num由downloaders和uploaders得到
  • calendar_add <hour> “<command>” : 添加命令到任务计划,此命令将被储存到download.ini,并且在每天的指定hour执行。如:calendar_add 8 “set max_upload_rate 10” 附download.ini的储存内容,可由vcal命令得到:calendar = [ ([0;1;…;6;], [0;1;…;23;], “command1” ); ([0;1;…;6;], [0;1;…;23;], “command2” ); … ]
    第一个参数是定义了一个星期内此命令在那些天被执行(Sunday=0, Monday=1, Tuesday=2, ..., Saturday=6).
    第一个参数是定义了一天内此命令在那些小时被执行(in 24-hour format 0 ... 24).
    第三个参数是要执行的命令
  • vwi : 列出当前网络信息
  • gdremove : 移除存储图形化统计信息的文件
  • message_log : 显示已经记录到日志的消息(数秒内显示 )
  • preview <file number> : 预览指定文件,文件编号由vd得到
  • reload_messages : 重新载入消息文件
  • rm_old_torrents : 移除所有旧的BT种子文件
  • rss : 列出所有订阅的rss种子,见urladd
  • vcal : 打印计划的任务,见calendar_add命令

修改默认值调优

 在默认值下,mldonkey的下载速度有点慢,当然我们也可以使用一些方式来提高速度
* 多提供资源供人家下载
* 长时间打开软件
* 起个比较好一点的用户名,比如:[CHN][VeryCD][http://emule-project.net][****] (方括号里的名字就是从各电驴网站人家希望你起的名字,因为这样才能联进人家服务器)
* 修改部分默认值,提高速度,很多默认值,都是在较低网络下的设置值,

现在让我们我们需要根据自已的情况修改几个值(默认值是在带度为0.5M下的值,你可以根据自已的带宽来调整,比如2M的带度就是原值X4)

[以下为全局上传下载速度的设置, 其中_2可以设置为龟速模式,以下值为2M带宽下的值,修改方式,可以用WEB模式下,在[Options]选项下,直接修改]

max_hard_download_rate: 200 最大下载速度 (看你的网络带宽),可以修改大一点
max_hard_upload_rate: 50 最大全局上传速度 (随便, 值得一提的是只要设置大于10就可以无限制下载速度),如果是光纤用户可以修改成跟下载速度一样大,提高积分        
max_opened_connections: 200  最大全局同时下载数

max_hard_download_rate_2: 50        龟速模式最大全局下载速度
max_hard_upload_rate_2: 10 龟速模式最大全局上传速度
max_opened_connections_2: 10 龟速模式最大全局同时下载数
/data/vhosts/wiki-data/pages/doc/m/mldonkey_start.txt · 最后更改: 2012/10/04 23:30 由 flfq