Chiphell - 分享与交流用户体验

 找回密码
 加入我们
搜索
      
查看: 10643|回复: 36

[网络] NAS、路由器用迅雷远程下载Xware1.0进程掉线、监视、自动重启

[复制链接]
发表于 2015-11-20 22:29 | 显示全部楼层 |阅读模式
本帖最后由 kou23 于 2015-11-25 13:18 编辑

迅雷远程下载Xware1.0运行时共有三个进程常驻后台:ETMDaemon、EmbedThunderManager、vod_httpserver,如下图:
如下图:
132058jugv9e4y7r999yfz.png
要保证迅雷远程下载功能正常,三个进程都必须在,为防止进程跑死可通过定时检查进程是否存在以保证远程下载功能正常。
经测试:只要ETMDaemon进程存在,另外两个进程EmbedThunderManager、vod_httpserver就会自动重启,所以只要定时检查ETMDaemon进程是否存在,若不存在,重启迅雷/mnt/sda3/xunlei/portal 。
实现方法如下:
注意:笔者是在自己硬件上面测试的,测试时迅雷运行时只有三个进程,有坛友反映运行有10个进程,请坛友根据自己的运行情况修改下面脚本里面的“3”。或者直接用检测ETMDaemon 教程这个方法;
1、任意位置新建一个文件check_xunlei.sh,并配置权限,如:(有可能bin下面没有权限创建,可以创建到xunlei下面)
  1. cd /bin
  2. touch check_xunlei.sh
  3. chmod 777 check_xunlei.sh
复制代码
2、利用vi 编辑器,或者直接用WinSCP编辑check_xunlei.sh,代码如下:
  1. #!/bin/sh
  2. printf "--------------------------Thunder Checking Start !-----------------------------\n"
  3. num=`ps | grep ETMDaemon | grep -v grep | grep -v check | wc -l`  # 计算进程数
  4. if [ $num -lt 1 ]                                                 # 判断ETMDaemon进程是否存在
  5. then /mnt/sda3/xunlei/portal                                      # 重启进程的命令,请相应修改
  6. fi
  7. printf "--------------------------Thunder Checking Over  !-----------------------------\n"
复制代码
3、添加计划任务每10分钟执行一次
  1. */10 * * * * sh /bin/check_xunlei.sh
复制代码
--------------------------------------------------------分割线----------------------------------------------------------------------
更保险的做法:3个进程只要有一个掉线就重启迅雷Xware。
步骤相同,check_xunlei.sh多增加几行代码;
注意迅雷程序需要放在“xunlei”文件夹里,因为这里是靠检索“xunlei”关键字来计算进程数的。

  1. <font color="#000000">#!/bin/sh
  2. printf "--------------------------Thunder Checking Start !-----------------------------\n"
  3. num=`ps | grep xunlei | grep -v grep | grep -v check | wc -l`  # 计算进程数
  4. if [ $num -lt 3 ]                                              # 判断进程是否存在
  5. then /mnt/sda3/xunlei/portal                                     # 重启进程的命令,请相应修改
  6. fi
  7. printf "--------------------------Thunder Checking Over  !-----------------------------\n"</font>
复制代码
下载地址1,点击下载地址2,点击:
2015-11-21 更新一下:增加进程监视日志,有兴趣的可以试一下:
  1. #!/bin/sh
  2. file_name="/mnt/sda3/xunlei/xl.log"     #这是日志路径,请自行修改;
  3. echo -e '\n'"脚本运行时间:"`date` >> $file_name
  4. echo -e "---------------------------------Check Start----------------------------------" >> $file_name
  5. echo -e "当前进程状态:" >> $file_name
  6. ps | grep xunlei | egrep -v 'grep|check' >> $file_name
  7. num=`ps | grep xunlei | egrep -v 'grep|check' | wc -l`  # 计算进程数
  8. echo -e "迅雷进程数为:"$num >> $file_name
  9. if [ $num -lt 3 ]                                              # 判断进程是否存在
  10. then
  11.       echo -e "迅雷运行状态:Not OK" >> $file_name
  12.       /mnt/sda3/xunlei/portal                                     # 重启进程
  13.       sleep 10
  14.       num1=`ps | grep xunlei | egrep -v 'grep|check' | wc -l`  # 计算进程数
  15.       if [ $num1 -eq 3 ]
  16.       then
  17.            echo -e "迅雷进程重启:OK"  >> $file_name
  18.            ps | grep xunlei | egrep -v 'grep|check' >> $file_name
  19.       else
  20.            echo -e "迅雷进程重启:Not OK"  >> $file_name
  21.            echo -e "等待下一周期重启"  >> $file_name
  22.       fi           
  23. else
  24.       echo -e "迅雷运行状态:OK" >> $file_name
  25. fi
  26. echo -e "---------------------------------Check Over------------------------------------" >> $file_name
复制代码
生成的日志文件如下:
脚本运行时间:Fri Nov 20 14:10:01 CST 2015
---------------------------------Check Start----------------------------------
当前进程状态:
11002 root      9388 S    /mnt/sda3/xunlei/lib/EmbedThunderManager ***********
11006 root      2868 S    /mnt/sda3/xunlei/lib/vod_httpserver
迅雷进程数为:2
迅雷运行状态:Not OK
迅雷进程重启:OK
11821 root       828 S    /mnt/sda3/xunlei/lib/ETMDaemon /mnt/sda3/xunlei/lib/
11823 root      9384 S    /mnt/sda3/xunlei/lib/EmbedThunderManager ***********
11827 root      2868 S    /mnt/sda3/xunlei/lib/vod_httpserver
---------------------------------Check Over------------------------------------

脚本运行时间:Fri Nov 20 14:15:01 CST 2015
---------------------------------Check Start----------------------------------
当前进程状态:
11821 root       828 S    /mnt/sda3/xunlei/lib/ETMDaemon /mnt/sda3/xunlei/lib/
11827 root      2868 S    /mnt/sda3/xunlei/lib/vod_httpserver
12307 root      9388 S    /mnt/sda3/xunlei/lib/EmbedThunderManager ***********
迅雷进程数为:3
迅雷运行状态:OK
---------------------------------Check Over------------------------------------











发表于 2015-11-22 11:19 | 显示全部楼层
树莓派开了几个月,没遇到掉线情况,不过还是收藏了,以备不时之需
发表于 2015-11-22 11:56 | 显示全部楼层
迅雷远程要会员,还是不玩了!
 楼主| 发表于 2015-11-22 12:20 | 显示全部楼层
熊猫 发表于 2015-11-22 11:56
迅雷远程要会员,还是不玩了!

淘宝卖一年才60还是很划算的
发表于 2015-11-27 16:29 | 显示全部楼层
看看这个东西怎么样
发表于 2015-12-9 11:13 | 显示全部楼层
谢谢,正好需要这个
发表于 2015-12-9 18:56 | 显示全部楼层

看看这个东西怎么样
发表于 2015-12-14 13:01 | 显示全部楼层
好东东
发表于 2015-12-14 13:27 | 显示全部楼层
有时候不太稳定,是迅雷搞鬼吗?
发表于 2015-12-18 09:09 | 显示全部楼层
3、添加计划任务,每10分钟执行一次;
*/10 * * * * sh /bin/check_xunlei.sh


想问下这一步是要怎么操作。没弄懂望大神指教。
发表于 2015-12-18 10:17 | 显示全部楼层
不错不错,谢谢分享了。
发表于 2016-1-10 13:37 | 显示全部楼层
看看,收藏
发表于 2016-1-29 21:47 | 显示全部楼层
不是有更方便的方法了么。。
 楼主| 发表于 2016-2-1 14:36 | 显示全部楼层
zcx3 发表于 2016-1-29 21:47
不是有更方便的方法了么。。

什么方法,求指教
发表于 2016-2-1 16:09 | 显示全部楼层
貌似 我路由器上的迅雷从不掉线
发表于 2016-3-18 20:40 | 显示全部楼层
刚入的群晖  DS太慢了
发表于 2016-3-18 21:17 | 显示全部楼层
看看,---
发表于 2016-3-19 22:30 | 显示全部楼层
使用写日志脚本,但好像不成功,没有看到日志。
设置计划任务后,是否需要重启NAS才能生效
发表于 2016-4-1 21:54 | 显示全部楼层
回复了学习学习
发表于 2016-4-14 08:52 | 显示全部楼层
学习一下
发表于 2016-4-14 15:53 | 显示全部楼层
收藏beiyong le
发表于 2016-4-16 00:09 | 显示全部楼层
貌似还是老版的Xwaare稳定点。新出的什么3不靠谱。
发表于 2016-8-19 22:15 | 显示全部楼层
迅雷远程要会员,还是不玩了!
发表于 2016-8-19 23:59 | 显示全部楼层
看看。。
发表于 2016-8-27 00:10 | 显示全部楼层
谢谢楼主
发表于 2016-8-27 07:51 | 显示全部楼层
谢谢楼主,我收藏起来了
去检查一下,好像不只3个进程
 楼主| 发表于 2016-8-30 15:17 | 显示全部楼层
unpack 发表于 2016-8-27 07:51
谢谢楼主,我收藏起来了
去检查一下,好像不只3个进程

不同的机子进程个数不一样,脚本里改一下就行了
发表于 2016-9-25 15:06 | 显示全部楼层
经典的文章哦
发表于 2016-11-8 14:16 | 显示全部楼层
感谢分享,看看具体内容
发表于 2016-11-8 15:03 | 显示全部楼层
谢谢楼主分享,学习linux检测进程
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

小黑屋|手机版|Archiver|Chiphell ( 沪ICP备12027953号-5 )沪公网备310112100042806

GMT+8, 2020-5-26 12:22 , Processed in 0.016834 second(s), 15 queries , Gzip On, Redis On.

Powered by Discuz! X3.1

© 2007-2019 Chiphell.com All rights reserved.

快速回复 返回顶部 返回列表