AUTHOR: Jeroen Coumans <jeroen at linuxfromscratch dot org> DATE: 2003-11-07 LICENSE: GNU Free Documentation License Version 1.2 SYNOPSIS: How to download the LFS tarballs via eDonkey DESCRIPTION: A legitimate and increasingly popular option for distributing packages online is via peer-to-peer (P2P) networks. This hint describes how to install and configure mlDonkey. PREREQUISITES: A broadband Internet connection and some patience. HINT: A bit of history: The first succesful P2P network was Napster. By sharing music the program attracted millions of users. It wasn't used for much legal content though, which is why it got shut down. Basically, Napster worked by connecting people's clients to each other via servers. The servers were comparable to catalogues and were used to store the information of what each client offered. More recent P2P networks use a decentralized approach to filesharing. The most popular variants nowadays are the Fasttrack network, used by Kazaa, and the eDonkey network. The eDonkey protocol (and the popularized implementation of eMule) has the following features: * Files can be downloaded from different sources at the same time. * Files are identified by unique identifiers (MD4) that can be used to find new sources for a file. * Files are checked using checksums, and chunks (9MB) that are corrupted are downloaded again. * Files chunks can be downloaded in any order. * Files are shared as soon as a checked chunk has been downloaded, to speed up the spreading of files. * Need some servers to be known, mldonkey can use servers.ini file that is in the distribution. (list copied from the mlDonkey wiki) On http://www.linuxfromscratch.org/lfs/packages.html you find several eDonkey links. These can be used to download the LFS packages tarball via an eDonkey client. Lucky for us, the protocol has several fully-functional open source implementations (xmule, amule, emule, mldonkey). You can also use the official implementation (edonkey and overnet), although it has little advantages over the others and is only available as binary (big no-no for LFS'ers). I'll only explain how to install and use mlDonkey though, since that is what I have actual experience with. If people are willing to contribute instructions for their favorite client, I'll gladly put it in here. :) About eDonkey: eDonkey works with queues: if you start a download, you'll get placed in the queue of everyone who shares that package. Downloading costs you points while uploading gains you points so you are rewarded for sharing. Whatever you download gets automatically shared. Some rules of thumb to keep in mind: 1. you probably want to regulate how much bandwidth your client can use, and 2. the longer your client runs, the faster your downloads will go. In the beginning, they'll be slow. I recommend letting it run as long as you can afford your computer to be online (mine is 24x7). 3. the more people who share a certain file, the faster your download will go. mlDonkey: mlDonkey requires ocaml for compilation and lablgtk for the ugly GTK-1.2-based GUI. You can use --enable-batch to wget and install them locally just for mlDonkey, or install them seperately if you're paranoid. Skip the installation of ocaml and lablgtk if you intend to use --enable-batch. Download ocaml from: http://caml.inria.fr/distrib/ocaml-3.06/ocaml-3.06.tar.gz Installing ocaml the way mlDonkey would: ./configure -prefix /usr -no-tk -with-pthread && cd config && mv Makefile Makefile.old && sed / "s/OTHERLIBRARIES=.*/OTHERLIBRARIES=unix dynlink num str bigarray threads/" / Makefile.old > Makefile && cd .. && make world opt opt.opt && make INSTALL_MANODIR=/tmp install There are several GUI implementations for mlDonkey. You can use them next to each other since they all use a client-server model to communicate with the mlDonkey daemon. It is not required to install any GUI though, since you can also communicate with the mlDonkey daemon via telnet or via a webbased GUI. To build the GTK-1.2-based GUI bundled with mlDonkey, you require lablgtk. Download lablgtk from: http://wwwfun.kurims.kyoto-u.ac.jp/soft/olabl/dist/lablgtk-1.2.6.tar.gz Install lablGTK: make configure && make && make opt && make install Installing mlDonkey: Get your source from http://savannah.nongnu.org/download/mldonkey/ . The current stable release can be downloaded from http://savannah.nongnu.org/download/mldonkey/release-2.5-4/official/mldonkey-2.5 -4.tar.gz. Compile it with the following commands: ./configure --prefix=/usr && make && make install If you only want to use mlDonkey for the eDonkey network, add --disable-multinet to configure options. If you want to disable the gui: --disable-gui. Check --help for other options. To install the G2Gui: Haven't tried compiling it yet, but installing the GTK2 or Motif version is a breeze. Download the appropriate file from http://developer.berlios.de/project/showfiles.php?group_id=610, unpack it and run g2gui.sh. It needs a Java VM in the path though. Running mlDonkey: It is recommended to use a seperate user for mlDonkey, for example "mldonkey". Make sure it is an unique user who only has access to his home directory. I use the following commands to start mldonkey with daemontools' setuidgid: cd /home/mldonkey/exec /usr/bin/env - PWD=/home/mldonkey /sbin/setuidgid mldonkey /usr/bin/mlnet -stdout A similar command which uses su would go like this: su - mldonkey; cd $HOME /usr/bin/env -i HOME=$HOME SHELL=/bin/bash / /bin/bash --noprofile --norc /usr/bin/mlnet -stdout The daemon now runs and outputs a lot of messages. You can run it in the background by leaving out the -stdout and putting an ampersand (&) at the end of the line. You can also run it supervised with daemontools. The first thing the daemon tries to do is connect to a server. Allthough the eDonkey protocol is decentralized and functions server-less, servers are used as catalogues to speed up searches. mlDonkey comes with a large serverlist and automatically maintains its server lists, so this part doesn't require any action. If you have trouble connecting, your firewall may be blocking the daemon. My BLFS firewall allows mlDonkey to work with the following line: iptables -A INPUT -p tcp --dport 4662 -m state --state NEW,ESTABLISHED / -j ACCEPT You may check the following resources if that doesn't work though (watch line wrapping): http://mldonkey.berlios.de/modules.php?name=Wiki&pagename=FireWall http://mldonkey.berlios.de/modules.php?name=Wiki&pagename=WhatFirewallPortsToOp en http://mldonkey.berlios.de/modules.php?name=Wiki&pagename=IPTables Last but not least: it's also possible to compile mlDonkey statically and install it in a chroot. This shouldn't be a lot of work for people who are experienced in that sort of thing. Configuring mldonkey: You can control mldonkey via several ways: * via your browser: http://127.0.0.1:4080/ * via the GTK gui: mldonkey_gui * via telnet: telnet 127.0.0.1 4000 Start downloading files by using the input field in your browser, the ed2k:// field at the bottom of the Downloads tab in the GUI or by "dllink ed2k://" via telnet. If you like to share files, put them in /home/mldonkey/incoming/ and they'll automatically be shared. To enable Mozilla/MozillaFirebird to automatically download ed2k:// links, copy /usr/src/mldonkey/distrib/ed2k_mozilla/src/ed2kprotocol.js to /usr/lib/mozilla/components/ed2kprotocol.js. Now all links on the LFS packages page work! To use mldonkey with KDE/Konqueror, install the program at http://www.gibreel.net/projects/kmldonkey/ Links: Official edonkey homepage: http://www.edonkey2000.com/ Official mldonkey homepage: http://www.nongnu.org/mldonkey/ mldonkey world (community page): http://mldonkey.berlios.de/ mldonkey FAQ: http://www.nongnu.org/mldonkey/faq.html ACKNOWLEDGEMENTS: * None yet CHANGELOG: [2003-11-06] * Initial hint. [2003-11-07] * Spell fixes. Added information about the different GUI's.
相关推荐
改进差分进化算法及其求解柔性作业车间调度问题(Python代码实现)
内容概要:本文系统探讨了改进差分进化算法在求解柔性作业车间调度问题中的应用,并结合Python代码实现,展示了该算法相较于传统方法在全局搜索能力和收敛速度方面的优势。研究不仅聚焦于算法本身的改进策略,如变异、交叉和选择操作的优化,还深入分析了其在复杂制造环境中应对多目标、多约束调度问题的有效性。文中通过标准测试实例验证了算法性能,并与其他智能优化算法进行了对比分析,体现了其在实际工程应用中的潜力。此外,文档还关联了多无人机路径规划、电力系统状态估计、微电网优化、图像与信号处理等多个前沿技术领域,展现了智能优化算法在跨学科工程仿真与决策支持中的广泛适用性。; 适合人群:具备一定编程基础和工程背景,从事智能制造、自动化、工业工程、电气工程、控制科学与工程、计算机科学及相关领域的科研人员、高校研究生及企业研发技术人员。; 使用场景及目标:①为科研工作者提供可复现的智能优化算法代码框架,支持柔性作业车间调度、多无人机协同路径规划、电力系统优化等复杂工程问题的建模仿真;②辅助完成学术论文复现、课程设计、毕业设计或科研项目开发;③推动智能算法在生产调度、能源管理、交通规划等实际场景中的落地应用。; 阅读建议:建议读者结合文中提供的算法原理与代码实现,动手调试并验证不同参数设置对优化结果的影响,同时可参考荔枝科研社提供的完整资源包进行扩展学习与实践,以加深对算法机制与工程应用的理解。
中国招商银行的网上银行专业版
中国招商银行的网上银行专业版前些天办理了一张招行的usb加密的U盘,花费了人民币88元,昨天晚上闲的无聊,简单分析了一下,发现了一些问题,具体内容请参考:http://www.liveaa.com/categories/120-Software-internal-analyze.首先, 关于usb读取方面,主要在开始登陆的时候使用,退出的时候也要被检测一下(次要), 在使用过程中,
复现基于改进秃鹰算法的微电网群经济优化调度研究(Matlab代码实现)
内容概要:本文聚焦于“基于改进秃鹰算法的微电网群经济优化调度”研究,提出一种改进的秃鹰优化算法(IBOA)以解决传统智能优化算法在求解过程中易陷入局部最优、收敛速度慢等问题。通过引入自适应权重、动态搜索机制及种群多样性保持策略,显著增强了算法的全局搜索能力和收敛精度。研究构建了包含光伏发电、风力发电、储能系统、可控负荷及电网交互的微电网群多主体协同调度模型,以系统综合运行成本最小化为目标函数,综合考虑功率平衡、设备出力能力、储能荷电状态、爬坡速率等多种实际约束条件。利用Matlab平台进行仿真验证,并与标准BOA、PSO、GA等经典智能算法进行对比,结果表明所提算法在降低系统运行成本、提高可再生能源消纳率及优化调度效率方面具有明显优势。; 适合人群:适用于具备电力系统基础、优化理论知识及Matlab编程能力的高校研究生、科研人员及从事微电网、综合能源系统优化调度相关工作的工程技术人员。; 使用场景及目标:①用于微电网群或多微网系统的经济调度建模与仿真;②开展新型智能优化算法的设计、改进与性能评估;③支撑含高比例可再生能源的配电系统优化运行决策; 阅读建议:建议结合提供的Matlab代码深入理解算法实现细节与调度模型构建过程,重点分析改进策略对优化性能的影响,并可通过替换场景参数或引入其他算法进行横向对比实验,进一步掌握智能优化在能源系统中的应用方法。【复现】基于改进秃鹰算法的微电网群经济优化调度研究(Matlab代码实现)
SOCKS4: A protocol for TCP proxy across firewalls
SOCKS: A protocol for TCP proxy across firewalls Ying-Da Lee Principal Member Technical Staff NEC Systems Laboratory, CSTC ylee@syl.dl.nec.comSOCKS was originally developed by D
改进-基于新扩展移相角下的双有源桥DAB变换器仿真(EPS调制、软开关、最小应力优化)(Simulink仿真实现)
内容概要:本文系统阐述了基于新扩展移相角的双有源桥(DAB)DC-DC变换器的先进仿真研究,聚焦于EPS调制策略、软开关技术实现及最小应力优化控制目标的协同设计。通过Matlab/Simulink平台构建双闭环控制系统模型,深入剖析变换器在高频隔离、双向功率传输场景下的动态响应特性与效率优化机制。该仿真方案复现了顶级EI期刊研究成果,具备高学术参考价值,并集成于一套完整的电力电子与新能源系统仿真资源体系中,涵盖微电网、PWM整流器、LLC谐振变换器、储能管理等多个关键技术方向,配套完整的仿真代码、设计文档与理论资料,支持深度学习与二次开发; 适合人群:面向电力电子、电气工程及其自动化、新能源科学与工程等领域的研究生、科研人员以及从事高性能DC-DC变换器研发的工程师,要求具备扎实的电路理论基础、电力电子拓扑分析能力及一定的Matlab/Simulink仿真实践经验; 使用场景及目标:①深入掌握DAB变换器的核心工作原理及其在EPS调制与软开关协同下的最优控制策略;②支撑高水平科研论文的复现、改进与创新性研究;③服务于硕士课题、博士研究或企业级新能源变换器产品的前期验证与算法开发; 阅读建议:建议结合文中提供的Simulink模型与引用的权威文献进行系统学习,重点理解控制架构设计、参数整定方法与优化算法实现路径,同时可横向对比其他电力电子变换器案例,拓展系统级工程思维与科研创新能力。
ALSA音频开发实战:如何用snd_pcm_avail避免缓冲区溢出(附完整代码)
本文深入探讨了在ALSA音频开发中,如何利用`snd_pcm_avail`函数有效管理环形缓冲区,从而避免音频数据溢出或下溢。通过实战代码示例,详细解析了该函数在播放场景下的核心作用,即实时查询可写入的帧数,并构建了自适应写入循环以实现稳健的流量控制,确保音频流的平滑与稳定。
How to compile ACE lirbrary
SpringBreak78 at yahoo dot com dot cn现在的Ace非常好编译,几乎不需要做什么修改。简单的编译方法可以如下:1。Uncompress the ACE distribution into a directory, where it will create a ACE_wrappers directory containing the distribution. T
Gartner《构建可扩展数据产品建设框架》心得
数据产品化:从概念到落地的实践指南 当前企业正从传统数据需求模式转向数据产品化新范式。本文系统阐述了数据产品的核心价值、定义分类和实施框架,指出成功关键是将数据包装为可复用、可扩展的产品。Gartner框架强调产品思维,提出4阶段12步实施路径,涵盖设计、工程、发布和监控全流程。文章特别提醒要避免7大常见误区,如简单重命名报表、忽视元数据治理等,建议采取MVP策略,90天内完成从价值验证到产品落地的闭环。实施中需平衡技术选型与业务需求,建立跨职能团队,并通过AARRR模型持续追踪产品价值。
BT种子文件格式
BT种子文件使用了一种叫bencoding的编码方法来保存数据。bencoding现有四种类型的数据:srings(字符串),integers(整数),lists(列表),dictionaries(字典)编码规则如下:strings(字符串)编码为::例如: 4:test 表示为字符串"test" 4:例子 表示为字符串“例子”字符串长度单位为字节没开始或结束标记integers(整数)编码为:i
Aras Innovator系统配置-01对象类(一)
对象类配置-对象类属性说明
海康VisionMaster零代码开发实战:从PLC工程师到视觉专家的捷径
本文为PLC工程师提供了利用海康VisionMaster视觉平台实现零代码视觉开发的实战指南。文章详细阐述了如何通过图形化流程设计替代传统编程,快速搭建视觉检测应用,并实现与PLC的无缝通讯,是工程师从设备控制迈向视觉系统集成的有效捷径。
alexa js codes
主题: [原创]alexa 工具条全部js源代码 浏览人数:1470 [这个贴子最后由cee999在 2005/07/28 09:49pm 第 1 次编辑]使用,请把‘〈’、‘〉’替换为‘’。〈!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"〉〈html〉〈head〉 〈OBJECT STYLE
GoldenDB 兼容模式冲突场景解析:MySQL 连接模式 vs Oracle 语法兼容
GoldenDB 兼容模式冲突场景解析:MySQL 连接模式 vs Oracle 语法兼容
SOCKS Protocol Version 5
Network Working Group M. LeechRequest for Comments: 1928 Bell-Northern Research LtdCategory: Standards Track
基于Python的房地产评估数据抓取与分析 —— 房价走势与市场报告
在房地产行业中,了解和分析房产价格的变化趋势、各个地区的房价差异以及市场评价报告,可以帮助投资者、购房者以及政策制定者做出更加明智的决策。本文介绍了如何使用Python爬虫技术抓取房地产平台上的房产评估报告、价格走势等数据,并对抓取的数据进行分析。通过这些技术,您可以自动化抓取房地产平台的数据,分析房价走势,获取市场报告,为房地产投资决策提供数据支持。假设我们要从链家网抓取某个房产的价格、房产描述以及历史成交价格,首先需要获取目标房产页面的URL,并发送HTTP请求。伪装为常见浏览器,避免被识别为爬虫。
如何正确的计算两个角度的角度差?
这一步是必要的,因为它确保了无论a相对于b是在逆时针方向还是顺时针方向,d2总是正确地反映出绕圆相反方向的角度差。这样,当函数进行最后的比较时,它能够准确地比较两个方向的旋转路径并选择最短的一个。
SoulSeek Protocol
SoulSeek Protocol DocumentationTable of ContentsVersion HistoryIntroductionOverviewConstantsMessagesServer MessagesPeer MessagesMessage SequencesVersion History2003-10-05: Added integer to the Login m
YOLOv8【第二十六章:游戏与娱乐产业 YOLO 应用篇·第14节】游戏性能压测:YOLO 在高帧率引擎下的优化指南!
🏆 本文收录于 《YOLOv8实战:从入门到深度优化》 专栏。该专栏系统复现并梳理全网各类 YOLOv8 改进与实战案例(当前已覆盖分类 / 检测 / 分割 / 追踪 / 关键点 / OBB 检测等方向),坚持持续更新 + 深度解析,质量分长期稳定在 97 分以上,可视为当前市面上 覆盖较全、更新较快、实战导向极强 的 YOLO 改进系列内容之一。
How to compile openssl library
如转载,请著名出处。SpringBreak78 at yahoo dot com dot cn可参照openssl/install.w32文件的指示。我是做如下编译步骤的,并且成功。1。 下载perl, 参考http://www.activestate.com。2。 下载nasm, 参考http://www.kernel.org/pub/software/devel/nasm/binaries/w
LinePhone3.2.7(android端最新版本) sip客户端
SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/
Probability and Statistics - 4th edition
Probability and Statistics - 4th edition
Username/Password Authentication for SOCKS V5
Network Working Group M. LeechRequest for Comments: 1929 Bell-Northern Research LtdCategory: Standards Track
win10 跳过U8环境检测的IE WebControls.rar
win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。
SOCKS 4A: A Simple Extension to SOCKS 4 Protocol
SOCKS 4A: A Simple Extension to SOCKS 4 Protocol Ying-Da Lee yingda@best.com or yingda@esd.sgi.comPlease read SOCKS4.protocol first for an description of the version 4protocol. This
老版QQ原生表情gif动态
这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。
Google Desktop plugin---Your favorites menu!
Today I release my one plugin program---google desktop plugin. Its a favorites menu plugin. It reads the menu items from your local current favorites dir.You can view it item by item. When you click
谈Ajax技术
今天读了有关Ajax的相关技术,感觉比较有意思。 Grarrett对这种技术大加赞赏,号称glamorous, 哈哈,其实就是一些旧有技术的封装。这或许就叫做迷宗拳? 说到底,也就是数据的背景提交以及获取上,在传统的客户端,增加了一个Ajax的引擎,负责JavaScript Call 和HTML+CSS data的数据呈现。它主要有如下的相关技术综合而成: 1
庆祝一下
庆祝一下,历时一个多月的时间,我开发的高性能分布式代理以及搜索,和路由追踪功能的软件,基本上完成了。剩下来的是把帮助文件写好,多语言版本的准备,以及后续的一些扫尾工作,估计还要1个礼拜的时间可以全部完成。初始设想是端午节所思考的软件,现在已经成型了。
Bittorrent 精彩代码分析
RawServer.py: def write(self, s): assert self.socket is not None self.buffer.append(s) if len(self.buffer) == 1: #为什么是1呢?因为buffer是一个列表(list), 比如 buffer=[this is a sample].
5625



被折叠的 条评论
为什么被折叠?



