linux进程监控和自动重启的简单实现

目的:linux 下服务器程序会由于各类缘由dump掉,就会影响用户使用,这里提供一个简单的进程监控和重启功能。linux

实现原理:由定时任务crontab调用脚本,脚本用ps检查进程是否存在,若是不存在则重启并写入日志。ubuntu

crontab修改

# crontab -e

*/5 * * * * /mnt/bindmonitor.sh

/mnt/bindmonitor.sh 的实现

#! /bin/sh

host_dir=`echo ~` # 当前用户根目录

proc_name="/home/wkubuntu/named/sbin/named" # 进程名

file_name="/mnt/bindmonitor.log" # 日志文件

pid=0

proc_num() # 计算进程数

{

num=`ps -ef | grep $proc_name | grep -v grep | wc -l`

return $num

}

proc_id() # 进程号

{

pid=`ps -ef | grep $proc_name | grep -v grep | awk '{print $2}'`

}

proc_num

number=$?

if [ $number -eq 0 ] # 判断进程是否存在

then

/home/wkubuntu/named/sbin/named -c /home/wkubuntu/named/etc/named.conf -n 1 &

# 重启进程的命令,请相应修改

proc_id # 获取新进程号

echo ${pid}, `date` >> $file_name # 将新进程号和重启时间记录

fi

删除进程测试

a. #killall -15 named服务器

b. 5分钟后,cat /mnt/bindmonitor.log看看有无最新的记录,进程号与# ps -ef |grep named 进程号对应。测试

linux里进程监控和自动重启,Linux - linux进程监控和自动重启的简单实现相关推荐

  1. 在linux里复制文件命令_如何在Linux上使用“安装”命令复制文件

    在linux里复制文件命令 Fatmawati Achmad Zaenuri/Shutterstock.com Fatmawati Achmad Zaenuri / Shutterstock.com ...

  2. linux里怎么看终端类型,如何区分Linux下的几种终端类型:tty、pty和pts

    如何区分Linux下的几种终端类型:tty.pty和pts 基本概念: 1. tty(终端设备的统称): tty一词源于teletypes,或者teletypewriters,原来指的是电传打字机,是 ...

  3. linux里hba状态_(转)Linux主机HBA常用操作指南

    本文阐述了Linux系统下HBA卡的常用基本操作,包括如何通过命令或日志查找HBA,如何查找WWN以及设置永久绑定,以及HBA卡安装完成之后如何识别存储设备. 主机外接存储的准备工作: HBA卡与操作 ...

  4. linux里的文件怎么复制到移动硬盘,linux数据拷贝复制到移动硬盘的问题

    问题:我服务器中有些数据需要find出来拷贝到移动硬盘中,并保持原目录结构, find ./ -name '*' -exec cp -v --parents {} /mnt \; 我是这样写的,./下 ...

  5. linux里c库和gnu c库,Linux下的C的库文件和头文件有什么区别-

    Linux下的C的库文件和头文件有什么区别- (2012-04-10 01:16:57) 标签: linux 杂谈 Linux下的C的库文件和头文件有什么区别?刚刚接触 这里有点没搞清楚 如果按我的理 ...

  6. linux里的挂载错误无法开机怎么办,Linux基础知识 - 开机挂载错误

    开机挂载错误 我们可以在/etc/fstab设置开启挂载,不过如果在/etc/fstab定义了挂载信息可是实际并不存在此分区,开机进行分区挂载时就会产生错误,导致我们不能进入操作系统,如下图 根源在于 ...

  7. linux里数据库退格,Oracle Database for Linux 不能使用退格键

    方法一:要使用退格键的时候,同时按住ctrl+backspace 方法二:在任意一个启动脚本中添加如下内容 [Oracle@night ~]$ tail -1 .bash_profile stty  ...

  8. 你知道Linux里D进程会搞事吗?

    前言 这篇文章是一位大神在实际项目中遇到问题并分析总结出来的,作为新手,能接触到这类文章应该是受益匪浅,这位同学现在在魅族工作,以后也会一直在魅族工作,是Linux 方面的专家,「魅族还有另一个Lin ...

  9. linux右上角不显示网络连接_Linux系列 之 进程监控

    预计阅读时间:15分钟 Linux下对进程的监控有多种方法,如busbox自带的top工具.atop工具等,还有其他监控程序.软件.本文主要总结和讲解一些用于进程相关的Linux命令. 01 - 查看 ...

最新文章

  1. 面试官问我 StringBuilder 线程不安全的点在哪儿.....
  2. gridcontrol值为0时设置为空_XASSET 4.0入门指南
  3. resultset需要关闭吗_液氮不锈钢补给瓶外筒上有一小块结霜能用吗
  4. proc_open 命令包含“有小问题
  5. android中可以使用bitmap的平铺,镜像平铺等减小图片带来的apk过大的问题
  6. ACL 2018论文解读 | 基于排序思想的弱监督关系抽取选种与降噪算法
  7. JavaWeb学习笔记7--JSP脚本元素、指令元素、动作元素
  8. 热门论坛排行top100--2010年07月11日[转]
  9. 红外遥控Arduino智能小车
  10. PHICOMM路由器无线扩展的设置方法(吐槽一下)
  11. 接入翼支付的php,翼支付-天翼账号开放平台
  12. qq不能发说说显示服务器错误,qq为什么发送不成word服务器拒绝发送离线请求. - 卡饭网...
  13. 手机电池续航一天不如一天?
  14. outlook中抄送操作和163撤回邮件
  15. JS判断输入的字符串是否是数字(正则表达式)
  16. 预警|使用方维、微吼等系统直播平台警惕××××××
  17. 刘慈欣,王晋康,何夕著《星际远征》
  18. 《程序员》专访:对话张宏江
  19. LORa 无线压力传感器在智慧城市中的应用
  20. c51步进电机汇编语言,用C51语言实现步进电机的运行速度控制

热门文章

  1. Spring Boot:自定义starter
  2. 重磅:Elasticsearch上市!市值近50亿美元
  3. java neo4j rest api_Neo4j REST API使用教程
  4. 云南省初中计算机说课稿,云南省实验教材《信息技术》说课稿范文.docx
  5. thrust 学习笔记
  6. 点云配准网络 PCRNet: Point Cloud Registration Network using PointNet Encoding 2019
  7. No module named ‘mmcv._ext‘
  8. QT多媒体 播放视频并显示字幕
  9. torch tensor用法
  10. 学习opengl入门