用脚本提升开源生活品质系列:启动mldonkey

来源: 作者:li-jiahuan
    mldonkey支持bt, emule等下载,支持连接多个Server并发下载,其下载速度是快得没说说的。mldonkey最大特点就是服务器端(下载器)与客户端(管理器)独立,我们可以通过web管理,也可以通过mldonkey-gui等客户端程序来管理。由于服务器端可以在后台运行, 我们当然是希望开机以后就启动服务端在后台下载, 以下是一简单的启动脚本:

(下载 http://huan.googlecode.com/svn/bash/start_mlnet.sh)

 


#!/bin/bash


## huanlf AT gmail.com li-jiahuan

## 这个脚本用来启动mlnet

 


## 这个文件应该放到用户的crontab中启动

## @reboot /path/to/start_mlnet.sh

 


export PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


## 确保中文文件名可以正常显示, 需要修改成相应的locale

export LC_ALL=zh_CN.UTF-8

export LANG=zh_CN.UTF-8


mlnet_pid=~/.mldonkey/mlnet.pid

 


## 检查是否有等待下载的文件

have_files_to_download()

{

grep -wq 'file_filenames' ~/.mldonkey/files.ini

}

 


## 等待连接上Internet

wait_for_connect()

{

while ! ping g.cn -c1 -w2 &> /dev/null; do

sleep 3

done

}

 


## 启动服务

start_mlnet()

{

## 如果有pid file, mlnet可能已经在运行

if [ -e "$mlnet_pid" ]; then

pid=$(cat "$mlnet_pid")

## 如果mlnet不在运行中,则开始运行

if ! kill -0 "$pid" &> /dev/null ; then

rm "$mlnet_pid"

( nice -19 mlnet > /tmp/mlnet 2>&1 & )

#echo $! >> "$mlnet_pid"

fi

## 如果没有pid file,开始运行mlnet

else

( nice -19 mlnet > /tmp/mlnet 2>&1 & )

#echo $! >> "$mlnet_pid"

fi

}

 


## -------------------- main -------------------------

if ! have_files_to_download; then

exit 0

fi

 


wait_for_connect && start_mlnet


时间:2009-05-17 16:20 来源: 作者:li-jiahuan 原文链接

好文,顶一下
(6)
100%
文章真差,踩一下
(0)
0%
------分隔线----------------------------


把开源带在你的身边-精美linux小纪念品
无觅相关文章插件,快速提升流量