[巴法络] 团购LS-CH1.0TL改机实录 |
都是网上已经有的内容,只是结合自己的改机过程和遇到的问题汇总一下,也方便我以后重装。
1 配置NAS 由于我的netgear路由不支持固定分配ip(配置里有这个选项,但是似乎不起作用),为了方便以后的管理,NAS使用静态分配的IP。 首先是进入录有的DHCP分配界面,把要分配给NAS的IP从DHCP IP池中去除。我打算给NAS分配192.168.1.2,因此DHCP内存池就从192.168.1.3开始。 之后进入NAS的网络配置页面,禁止DHCP自动分配,手动填入IP 192.168.1.2,MASK 255.255.255.0,网关192.168.1.1,DNS 192.168.1.1。(以上数据请根据实际情况修改) 之后关闭NAS自带的bittorrent服务,后面会安装rtorrent,个人感觉更好用。 2 破解telnet。 下载acp_commander.jar,然后在cmd下运行: • java -jar acp_commander.jar -t 192.168.1.2 -o 注意取消防火墙,成功后应该可以用root用户telnet登录NAS: • telnet 192.168.1.2 • root • passwd 这步是设置密码,加强安全性,而且也是为了方便之后的openssh登录。密码要输入两遍。 3 安装ipkg。 • cd /mnt/disk1/ • wget http://ipkg.nslu2-linux.org/feed ... strap_1.2-5_arm.xsh • sh ./lspro-bootstrap_1.2-5_arm.xsh 有教程说这里需要退出登录,我实验的结果是不需要。 • ipkg update 更新源 4 安装openssh NAS自带有openssh,但是没有生成需要的密钥,而且版本不是很新,通过ipkg升级到最新的 • ipkg install openssh 这个时间比较长。 更新后运行sshd,应该就可以在pc通过ssh来连接NAS了。如果要在外网通过openssh登录NAS,需要在路由上配置端口映射:端口22,网址192.168.1.2。 5 安装lighttpd 这个是为了用nTorrent远程管理rtorrent才装的,如果不需要的话,可以略过。 • ipkg install lighttpd • ipkg install openldap-libs • 修改/opt/etc/lighttpd/lighttpd.conf 在server.modules最后加入"mod_scgi": server.modules = ( # "mod_rewrite", ... # "mod_rrdtool", "mod_accesslog", "mod_scgi") 在文件最后添加: scgi.server = ( "/RPC2" => ( "127.0.0.1" => ( "host" => "127.0.0.1", "port" => 5000, "check-local" => "disable" ) ) ) 6 安装rtorrent 因为自带的bittorrent和Transmission都不支持DHT,而且我之前实验Transmission的时候出了点问题,因此这里选用rtorrent。 • ipkg install rtorrent • ipkg install screen • cp /opt/etc/rtorrent.conf ~/.rtorrent.rc • mkdir -p /mnt/disk1/share/download • mkdir -p /mnt/disk1/share/torrent • 修改~/.rtorrent.rc 因为NAS硬件一般,这里限制一下每个torrent的连接数,可以自行改大: min_peers = 20 max_peers = 40 max_open_files = 10 max_open_sockets = 100 设置保存的路径: directory = /mnt/disk1/share/download session = /mnt/disk1/share/torrent encoding_list = utf-8 umask = 0000 设置端口和DHT: port_range = 6881-6899 use_udp_trackers = yes dht = on dht_port = 6880 peer_exchange = yes 设置remote socket(不需要使用nTorrent管理的可以不用加): scgi_local = /opt/var/run/rpc.socket • screen • rtorrent • ctrl-a d 最后的screen是指在单独的一个窗口运行rtorrent,这样一会儿退出telnet也不会关闭rtorrent。对这个命令有兴趣的去翻linux书吧。 rtorrent使用到的端口:6880-6899,需要在路由上配置相应的端口映射。管理端口:8081,如果要在外网管理rtorrent,需要在路由上配置这个端口映射。 7 安装aMule • 编辑/opt/etc/ipkg/cross-feed.conf 添加一行: src/gz cross08 http://ipkg.nslu2-linux.org/feed ... 1armel/cross/stable • ipkg update • ipkg isntall amule 注意,安装rtorrent一定要在更新源并安装amule之前。由于两个源的依赖不一致,如果添加了新源再安装rtorrent或者openssh,会导致rtorrent和openssh不可用!! • mkdir -p /mnt/disk1/share/amule_temp • mkdir -p /mnt/disk1/share • echo -n <amule password> | md5sum 这个是生成aMule远程控制登录时的密码,自己选合适的,记下输出。密码123456对应e10adc3949ba59abbe56e057f20f883e。 • amuled 这时程序会生成配置文件并直接退出,要想正常运行,还需要修改配置文件。 • 编辑~/.aMule/amule.conf 修改昵称: Nick=[CHN][VeryCD]http://www.aMule.org 和rtorrent一样,对连接做限制: MaxUpload=5 MaxDownload=3 MaxConnections=100 配置目录: TempDir=/mnt/disk1/share/amule_temp IncomingDir=/mnt/disk1/share 配置远程访问密码(假设密码是123456,见上面md5sum的执行结果): ECPassword=e10adc3949ba59abbe56e057f20f883e • amuled -f aMule使用到的端口:4662(tcp),4672(udp),4665(ext udp)。管理端口:4712。 8 安装pc软件 下载nTorrent(http://code.google.com/p/ntorrent/)和aMule 2.2.5(http://www.amule.org/)。注意aMule的版本一定要正确,之前因为下载的是2.2.4的客户端,导致连上后无法登录服务器。 nTorrent安装很简单,随便解到某个目录就行。运行后先设置连接参数: protocol : http/ssh host : 192.168.1.2 port : 8081 (可以在/opt/etc/lighttpd/lighttpd.conf中修改成其他的,默认是这个) mountpoint : /RPC2 最底下用户名和密码不填 save connect 就可以用nTorrent控制rtorrent了。 aMule需要安装,注意安装时勾中最下面的aMule-gui,不然就成本机运行了。安完后执行aMule-gui,填入NAS的IP 192.168.1.2,还有之前设置的密码123456,connect就可以了。 9 恢复NAS 因为有时系统改坏了导致无法恢复,就需要重新烧一遍fireware。这个是将NAS彻底恢复到出厂时的状态,包括硬盘的内容,因此这样做前请先备份。 • 下载目前最新的1.07的firmware(http://asiadownload.buffalo.jp/buf-cs2/upload/lschl-107.zip) • 解压到某个目录 • 修改目录下的LSUpdate.ini 不检查版本: VersionCheck=0 打开Debug模式: [SpecialFlags] Debug=1 • 执行LSUpdate.exe • 右键单击窗口左上角的图标,选择DEBUG... • 勾中所有选项后确认 • update 更新firmware的过程比较慢,而且还会因为重启问题找不到NAS,根据提示多执行几次update就行。 实际运行时,rtorrent内存占用在10%左右,aMule内存占用很高,启动时就要消耗到将近40%,运行过程中会升高到70%,几乎用光了所有内存。看来128M还是不够用阿。CPU占用率还好,只要不是进行大规模的IO操作(比如aMule新建任务时预分配空间),很少有进程会使用超过10%的CPU。 需要注意的一点是,在没有注掉/opt/etc/ipkg/cross-feed.conf里新加的cross08那行时,千万不能执行ipkg upgrade或者重新安装openssl,否则会导致openssh对openssl的依赖不正确。如果要升级除amule以外的模块,先注释掉cross08那行(行首加入#),然后执行: • ipkg update • ipkg upgrade / ipkg install <package name> 升级完成后取消cross08那行的注释,并且再次执行: • ipkg update 否则会导致重启后执行amuled出现Segamentation fail。 如果要升级amule,则保留cross08这行且这行没有被注释,执行: • ipkg update • ipkg install amule |
目前正在研究如何用scratchbox编译arm程序,以便在NAS上进行开发,稍后放出教程。
|
嗯,很不错的教程。
不过有一个,openssh装了之后,其实会在/opt/etc/init.d/下面建一个启动script, S开头的。 所以楼主其实不用改/etc/init.d/rcS文件,而且我怀疑你改这个文件是否有用? 因为openssh按照你的写法应该装到/opt/目录下面,而系统执行rcS的时候还没有mount disk(也就是没法访问/opt下面的文件)。 另外transmission 1.7开始会支持DHT,我正在等编译好的文件。。。。http://www.transmissionbt.com/index.php |
我回去试一下吧,一个可能是加入那个脚本后调用的其实是系统自带的openssh而不是后装的。
我晚上配一下看看能不能编译最新的transimission |
我按照以上方法安装了OPENSSL,运行SSHD时出现一下问题:
/opt/sbin/sshd: error while loading shared libraries: libcrypto.so.0.9.7: cannot open shared object file: No such file or directory 在安装OPENSSL,用SSL客户端连接是正常的,重启之后就现这个问题,如何解决? |
本帖最后由 googol 于 2009-6-6 00:18 编辑
ls是加了cross08那个源后才更新的openssl吧?这样就会导致这个问题。我开始也遇到了。 解决办法,去掉cross08的源,强行删除openssl:ipkg remove openssl -f。然后再ipkg update,ipkg install openssl。 更详细的请见文章末尾。 |
本帖最后由 googol 于 2009-6-6 12:20 编辑
装了一下最新的Transmission 1.7,似乎内存占用率多于rtorrent,速度还行,remote管理软件比nTorrent好很多。 实际测试了一下,下同一个torrent,Transmission峰值内存大概要30M还要多,平时也在20M出头,rTorrent峰值只有不到20M,一般能稳定在10M左右。 鉴于NAS只有128M内存,寸土寸金,我还是选rTorrent吧。 |
OPENSSL问题已经解决,谢谢楼主。
另外,AMULE-gui连接NAS中的AMULE,ED2K状态始终是未连接。amule的端口已经在路由器中映射。 但是直接运行AMULE,都是正常的。请问该如何解决。 是不是在ED2K连接框中粘贴ED2K链接,但是粘贴后,总是出现一下问题 2009-06-06 12:57:07: 非法eD2k链接!错误信息:Not a valid file link 2009-06-06 12:57:07: 未知链接协议:5D.Flushed.Away.HDTVre.x264.3Audio.eng.srt|77380|da9e881f21b5f93fec47b2104665b8b1|h=Y6XXFE 2009-06-06 12:57:07: 未知链接协议:MDZT6SEUNT4QXYMCQIKAHAENUE|/ 2009-06-06 12:57:07: 非法eD2k链接!错误信息:Not a valid file link 2009-06-06 12:57:07: 未知链接协议:5D.Flushed.Away.HDTVre.x264.3Audio.eng.srt|77380|da9e881f21b5f93fec47b2104665b8b1|h=Y6XXFE 2009-06-06 12:57:07: 未知链接协议:MDZT6SEUNT4QXYMCQIKAHAENUE|/ |
本帖最后由 googol 于 2009-6-7 09:16 编辑
先要确认amule-gui的版本和nas上的amule版本是否一致,如果不一致,可能会出现不能登录服务器的现象(比如amule-gui 2.2.4,amuled 2.2.5就无法正常登录)。 你添加的链接不正确。正常的eD2k地址应该是[url=ed2k://....]ed2k://....[/url],你再确认一下下载地址。 |
本帖最后由 MrSmith 于 2009-6-6 16:52 编辑
感谢楼主给出的解决方案,问题已经解决。 但是有一个问题Ed2K连接是在连接中选择属性复制二来的应该不会错。这是我的一个eD2k地址:(不会是地址中有中文吧) [虎胆龙威].Die.Hard.I.1988.BDrip.1080p.x264.DTSHD.Audio-CHD.d1.avi (4.35 GB) 你看对不对。 |
你这个可能是链接能贴进去么?我遇到很奇怪的问题贴到amule remote control里面,只要超过一行就容易出问题。 我找了半天也没有找到什么人讨论这个问题。
最后还是关联amuleGUI和浏览器解决。 方法如下(参考http://www.amule.org/wiki/index.php/Ed2k_links_handling): 1、确保你装amuleGUI的时候勾了amuleCMD 2、首先创建命令批处理文件用来接受浏览器传过来的请求: 建立一个文件名为:ed2k_remote.bat 的文件,包含如下内容 @echo off set link=%1 for /f "useback tokens=*" %%a in ('%link%') do set link=%%~a "c:\Program Files\aMule\amulecmd.exe" /h server /P password /c "add %link%" 到上面一行为止,不要忘了吧/h参数后面的server替换为你的NAS的地址,/P后面password替换为你的登录密码。然后把这个文件放到 C:\Program Files\aMule. 再建立一个ed2k_remote.reg文件,包含如下内容: REGEDIT4 [HKEY_CLASSES_ROOT\ed2k] @="URL: ed2k Protocol" "URL Protocol"="" [HKEY_CLASSES_ROOT\ed2k\DefaultIcon] @="C:\\Program Files\\aMule\\amulegui.exe" [HKEY_CLASSES_ROOT\ed2k\shell] @="open" [HKEY_CLASSES_ROOT\ed2k\shell\open] [HKEY_CLASSES_ROOT\ed2k\shell\open\command] @="\"C:\\Program Files\\aMule\\ed2k_remote.bat\" \"%1\"" 内容到上面一行位置。保存后双击执行。 我试了在Firefox里面是可用的,IE没试过,按照教程应该也可用。 |
本帖最后由 MrSmith 于 2009-6-6 23:11 编辑
主要原因是amule-gui的版本和nas上的amule版本不一致,感谢googol提醒,现在amule可以正常登陆了。谢谢! 你这个可能是链接能贴进去么?我遇到很奇怪的问题贴到amule remote control里面,只要超过一行就容易出问题。 我找了半天也没有找到什么人讨论这个问题。 可能是超过一行就容易出问题。现在关联amuleGUI和浏览器已经可以解决添加ED2K地址了。 论坛就是好,相互帮助,共同提高。 |
root@LS-CHL489:~# amuled -f
amuled: OnInit - starting timer Initialising aMuled 2.2.5 using v2.8.10 Checking if there is an instance already running... No other instances are running. -------------------------------------------------- Warning! You are running aMule as root. Doing so is not recommended for security reasons, and you are advised to run aMule as an normal user instead. -------------------------------------------------- ListenSocket: Ok. amuled: forking to background - see you 运行部起来 ,请教楼主,这是啥原因,如何解决啊! |