就用户自己可以修改的部分来讲,这个脚本做了两件事:/etc/init.d/mldonkey-server
1 导入一个mldonkey-server的配置文件,这个文件位于
该配置文件只有几行,a 定义了mlnet的工作目录,默认的是/etc/default/mldonkey/mldonkey-server
b 以什么身份运行,默认的是MLDONKEY:MLDONKEY/var/lib/mldonkey
c mlnet服务文件的掩码,默认的是022,即文件权限为755
d 是否开机运行mlnet服务,默认的是TRUE
2 定义了mlnet运行的日志文件、pid等文件的位置。
安装mldonkey-server后,很多人遇到的问题是mlnet是以MLDONKEY这个用户身份运行,下载的文件权限不对,并且默认的工作目录在/分区,导致下载的文件也都在/分区。
因此流行的做法是自己写mlnet的启动脚本,然后加入用户的开机启动中,也有人去修改mlnet的download.ini配置文件。但是这些做法本质上并不是最佳
做法,因为我相信系统自带的/etc/init.d/mldonkey-server已经是最好的启动脚本了。
所以,如果想利用系统自带的服务文件以用户身份运行mlnet,并且让mlnet工作目录位于用户主目录,只要做两件事。
第1步: 修改前面提到的/etc/default/mldonkey/mldonkey-server,将运行身份修改为用户自己,并修改mlnet的工作目录。
示例: mldonkey-server配置文件,其中xyz是我的用户名。
第2步: 修改/etc/init.d/mldonkey-server中日志文件、pid等文件的路径,修改的必要性在于:如果以用户身份运行mlnet,将没有权限往默认的工作目录写入日志文件或其他。部分内容示例:# MLDonkey configuration file
# This file is loaded by /etc/init.d/mldonkey-server.
# This file is managed using ucf(1).
# This file is altered by user to run mlnet at startup in his own name
MLDONKEY_DIR=/home/xyz/.mldonkey
MLDONKEY_USER=xyz
MLDONKEY_GROUP=xyz
MLDONKEY_UMASK=0022
LAUNCH_AT_STARTUP=true
这样就完成了mlnet的全部设置,系统启动时将使用默认的/etc/init.d/mldonkey-server自动运行mlnet,运行身份是用户自己,工作目录在用户主目录下。# 在第1步中修改好的、被导入的配置文件路径,可以放在其他路径下。
CONFIG=/home/xyz/.mldonkey/mldonkey-server
PIDDIR=/home/xyz/.mldonkey
PIDFILE=$PIDDIR/$NAME.pid
LOGFILE=/home/xyz/.mldonkey/mldonkey-server.log
SERVERLOG=/home/xyz/.mldonkey/mlnet.log