LINUX进程监控保护

LINUX进程监控保护,第1张

几种办法,

1, 最简单的,写一个脚本,比如

#!/bin/sh

while true

do

/1234 xx bb

done

执行这个脚本,就不用担心 1234 退出后出问题了。

2, 用上面的方法,你可能会提出,如果脚本本身被杀了怎么办…… 可以用定时任务,比如 通过 crontab 可以每分钟去检查一下1234进程是否还在

比如下面的脚本可以检查 1234 是否存在,如果不存在就会自动启动 1234

#!/bin/sh

ps -A | awk '{print $4}' | grep -q '^1234$'

if [ $ -ne 0]; then

/PATH/TO/1234 xx bb

fi

假定这个脚本叫 ash

然后用crontab -e增加定时任务

/path/to/ash

即可。

用户想要在linux开机的时候自启动相关的程序。那我们要怎么设置呢下面由我为大家整理了linux下开机自启动命令的相关知识,希望对大家有所帮助!

linux下开机自启动命令

1开机启动时自动运行程序

Linux加载后, 它将初始化硬件和设备驱动, 然后运行第一个进程init。init根据配置文件继续引导过程,启动其它进程。通常情况下,修改放置在 /etc/rc或 /etc/rcd 或 /etc/rcd 目录下的脚本文件,可以使init自动启动其它程序。

例如:编辑 /etc/rcd/rclocal 文件,在文件最末加上一行"xinit"或"startx",可以在开机启动后直接进入X-Window。

扩展:其他情况下linux自启动程序命令

2登录时自动运行程序

用户登录时,bash首先自动执行系统管理员建立的全局登录script :/etc/profile。然后bash在用户起始目录下按顺序查找三个特殊文件中的一个:/bash_profile、/bash_login、 /profile,但只执行最先找到的一个。

因此,只需根据实际需要在上述文件中加入命令就可以实现用户登录时自动运行某些程序(类似于DOS下的Autoexecbat)。

3退出登录时自动运行程序

退出登录时,bash自动执行个人的退出登录脚本/bash_logout。例如,在/bash_logout中加入命令"tar -cvzf csourcetgz c",则在每次退出登录时自动执行 "tar" 命令备份 c 文件。

4定期自动运行程序

linux有一个称为crond的守护程序,主要功能是周期性地检查 /var/spool/cron目录下的一组命令文件的内容,并在设定的时间执行这些文件中的命令。用户可以通过crontab 命令来建立、修改、删除这些命令文件。

例如,建立文件crondFile,内容为"00 9 23 Jan HappyBirthday",运行"crontab cronFile"命令后,每当元月23日上午9:00系统自动执行"HappyBirthday"的程序(""表示不管当天是星期几)。 (/etc/crontab中配置命令即可)也可以

5定时自动运行程序一次

定时执行命令at 与crond 类似(但它只执行一次):命令在给定的时间执行,但不自动重复。at命令的一般格式为:at [ -f file ] time ,在指定的时间执行file文件中所给出的所有命令。也可直接从键盘输入命令:

6创建开机自启动脚本

1) 将你的启动脚本复制到 /etc/initd目录下

以下假设你的脚本文件名为 test。

2) 设置脚本文件的权限

$ sudo chmod 755 /etc/initd/test

3) 执行如下命令将脚本放到启动脚本中去:

$ cd /etc/initd

$ sudo update-rcd test defaults 95

注:其中数字95是脚本启动的顺序号,按照自己的需要相应修改即可。在你有多个启动脚本,而它们之间又有先后启动的依赖关系时你就知道这个数字的具体作用了。该命令的输出信息参考如下:

update-rcd: warning: /etc/initd/test missing LSB informationupdate-rcd: see

卸载启动脚本的方法:

$ cd /etc/initd

$ sudo update-rcd -f test remove

命令输出的信息参考如下:

Removing any system startup links for /etc/initd/test … /etc/rc0d/K95test /etc/rc1d/K95test /etc/rc2d/S95test /etc/rc3d/S95test /etc/rc4d/S95test /etc/rc5d/S95test /etc/rc6d/K95test

简单的方法,在/etc/inittab结尾加上你要启动的程序,

复杂的方法,自己做个service启动脚本(把别的服务启动脚本复制过来该改改就是了,注意改成自己服务名和放到正确的地方),然后用chkconfig添加并调整你想在哪些运行级别自动启动服务

以上就是关于LINUX进程监控保护全部的内容,包括:LINUX进程监控保护、linux开机自启动命令、如何在Red Hat Linux中开机启动时自动运行程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10068664.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-04
下一篇2023-05-04

发表评论

登录后才能评论

评论列表(0条)

    保存