提供思路:(不要做伸手党~)
1、开机自启
两种方法:1、加入到rc.local系统配置文件
2、将脚本做成服务形式(拷贝到/etc/init.d/)
2、可以通过init.d下的脚本控制其启动
说明脚本要支持start|stop|restart等参数
使用case匹配进行输出,例子如下:
#!/bin/bash
mode=$1
case "$mode" in
'start')
....;;
'stop')
....;;
'restart')
....;;
3、每5分钟将系统进程信息发送至syslog
提示:logger命令是syslogd提供的shell接口。通过调用该命令可达到效果
每5分钟自动发送系统进程信息:
方法:1、脚本中加入sleep 300(秒为单位)
2、定时任务
以上 “零件”已准备妥当,思路应该已经明了~ 自己组装一下吧
不知道你怎么想的,首先syslog本身就是记录整个系统的日志,已经很庞大,你还要将进程的写进去,不觉得乱么?
脚本加入开机启动有标准的写法,写完后用chkconfig add script 就OK了,但我建议你还不如写个计划任务呢,更为简单,
通常crond的服务是开机启动的,你要求的内容完全也可以在这个里面实现,何必增加一个服务,增加负担呢。
只能说给你出题的人根本没考虑系统性能方面,你想,是一个进程一直占着资源不放好,还是靠触发来定时运行得好。做过调优肯定选择我这个方案,用crontd来触发。
同样 可以实现你的功能
写一个脚本名为 pstolog.sh
#!bin/bash
workdir=$(dirname $0)
/bin/ps -ax >> $workdir/syslog_$(date +%Y%m%d-%H%M)
这样会生成以时间为结尾的日志文件
然后再echo ' */5 * * * * root /脚本所在路径/pstolog.sh >/dev/null 2>&1' >> /etc/crontab
这样就OK了
又看到这个问题了, 兄弟可以请教w o啊!
也都是在线的!可以帮忙的啊