linux下通过脚本实现自动重启程序

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了linux下通过脚本实现自动重启程序相关的知识,希望对你有一定的参考价值。

参考技术A

  自动重启故障相信大家都遇到过,原因也有很多,跟系统,硬件或者外界因素都有关,但是在Linux中可没有那么简单。这里集中讨论linux实现自动重启程序的方法。下面一起看看!

  自动重启脚本

  假定需要实现重启的程序名为 test ,我们这里通过判断进程数目来判断程序是否正常。

  ps -ef | grep "$1" | grep -v "grep" | wc –l 是获取$1(本例中为test)的进程数,脚本根据进程数来决定下一步的操作。通过一个死循环,每隔1秒检查一次系统中的指定程序的进程数。

  代码如下:

  脚本check

  #!/bin/sh

  #-----------------------------------# 函数: CheckProcess# 功能: 检查一个进程是否存在# 参数: $1 --- 要检查的进程名称# 返回: 如果存在返回0, 否则返回1.#---------------------------------------CheckProcess() # 检查输入的参数是否有效 if [ "$1" = "" ]; then return 1 fi #$PROCESS_NUM获取指定进程名的数目,为1返回0,表示正常,不为1返回1,表示有错误,需要重新启动 PROCESS_NUM=`ps -ef | grep "$1" | grep -v "grep" | wc -l` if [ $PROCESS_NUM -eq 1 ]; then return 0 else return 1 fi

  # 检查test实例是否已经存在while [ 1 ] ; do CheckProcess "test" CheckQQ_RET=$? if [ $CheckQQ_RET -eq 1 ]; then# 杀死所有test进程,可换任意你需要执行的操作 killall -9 test exec ./test & fi sleep 1done

  脚本start:

  加入limit coredumpsize 102400,设置core file的大小,一旦程序Core Dump,有迹可寻。在该脚本中后台执行check脚本,可以省去很多麻烦,

  #!/bin/cshlimit coredumpsize 102400

  ./check &

  补充:电脑总是自动重启怎么办

  1、右击“我的电脑”,选择“属性”项。

  2、在打开的系统属性窗口中选择“高级系统设置”项进入。

  3、在打开的“系统属性”窗口中,切换至“高级”选择卡,然后点击“系统和故障恢复 设置”按钮。

  4、在打开的窗口中取消勾选“自动重启启动”项并按确认即可。

  5、当电脑在使用的过程中产生蓝屏时,我们就可以进入“系统日志”管理器中查看产生系统失败的根源啦。打开“运行”对话框,输入命令“eventvwr.msc”即可查看日志信息,从中定位系统产生失败的原因。

  6、当然,我们也可以通过禁用某些开机项来尝试修复系统。打开“运行”对话框,输入命令“msconfig”进入“系统配置实用程序”界面,勾选“常规”选项卡下的“诊断启动”选项。

  7、还有一种修复计算机蓝屏或重启故障的方法,就是在电脑启动时按“F8”进入系统故障菜单,从中选择“安全模式”进入或“最后一次正确的配置”项进入系统,将及有可能修复系统。

  8、当然,如果以上方法均不能解决问题,那么建议您还是重新安装一下系统,毕竟安装系统所耗费的时间相对修复所用时间要少许多。一劳永逸之事才是王道。

  相关阅读:电脑自动重启方法

  方法一:

  1、打开控制面板-管理工具-计划任务程序

  2、创建基本任务,名称栏目,输入“定时重启”,下一步;

  3、在窗口里,有每天、每周、每月、一次各种选择,这里小诚选择一次,这次执行完就失效,您可以根据自己的情况进行选择哈,点击下一步;

  4、设置重启的日期、时间点,下一步;

  5、选择启动程序,下一步;

  6、在打开页面里,点击浏览,找到C;\\Windows\\System32\\Shutdown.exe,点击打开;

  7、在添加参数栏目里输入“-r”(重启),进行下一步

  8、点击完成,即可实现自动重启了

  方法二:

以上是关于linux下通过脚本实现自动重启程序的主要内容,如果未能解决你的问题,请参考以下文章

Linux下shell脚本监控Tomcat的状态并实现自动启动

如何优雅的在 Linux 下开机自动重启脚本

如何写个linux shell脚本自动重启系统

linux服务器自动重启,不知道啥原因,求高手指点

Linux(Ubuntu)下检测网络连通性自动重启网卡的脚本

我linux centos 6.3 用mount挂载一目录,后重启下挂载就没了,如何开机自动挂载?