1、进程管理
1.1 进程基本指令
1.1.1 指令 – ps
进程状态
> ps –e
全部进程
> ps aux
详细的进程信息
> ps -e | grep “模式”
匹配某个进程状态
1.1.2 指令 – kill
杀掉(向进程发送信号)
> kill 进程号PID
// 终止某个进程
注意:有些进程将PID存储在固定的文件中,需要读取该文件里面的pid,然后kill
> kill `cat/somedir/file`
// kill file文件里面的进程
cat
查看
反引号包起来表示执行命令
1.1.3 指令 – top
进程管理器
top
动态的监视进程状态的工具.
定时刷新机制!
主要是用来检测计算机负载情况
此时通过键入M, P依据使用内存和CPU排序
k, 终止进程
q, 退出top
1.2 守护进程
所有的守护进程脚本, 位于: /etc/init.d/
需要增加新的守护进程, 需要将守护进程脚本, 放在该目录中
守护进程(daemon)
, 一直处于运行进程, 通常去监视某个端口进入的请求
linux提供了守护进程的管理工具.用于管理守护进程的状态, 开启的自动运行状态.
1.2.1 守护进程指令
chkconfig
查看, 管理 守护进程的开机开启状态
状态显示的 0 -3 表示运行级别
1.2.1.1 运行级别
例如:windows 下就启动就是
安全模式
和常规模式
而这里每一个守护进程有7
种模式,主要关系3
的级别即可
运行级别
, 在系统初始化时, 选择不同的进程初始化方案进行启动, 执行的初始化操作. 这些方案, 称之为运行级别. 对于linux(linux2.6), 内置了7中级别. 在开机时, 7种组方案可选.
当前系统使用的运行级别, 通过配置文件/etc/inittab
图上是 3的级别(表示全部守护进程如此)
各级别含义如下
0 - halt (Do NOT set initdefault to this), 关机
1 - Single user mode, 单用户模式.
2 - Multiuser, without NFS (The same as 3, if you do not have networking), 不支持网络
3 - Full multiuser mode, 多用户模式(除了桌面其他功能都有)
4 - unused, 不用, 保留级别
5 - X11, 桌面环境.
6 - reboot (Do NOT set initdefault to this), 重启
1.2.2 守护进程开关
> chkconfig --level 级别 守护进程名 off|on
> service 进程名 start|stop|restart
// 仅仅针对守护进程起作用
关闭防火墙守护进程
> /etc/init.d/iptables stop|start|restart
1.2.2.1 开机启动脚本
/etc/rc.local
如果某些进程, 没有提供守护进程的管理方式, 同时需要其开机启动.
则, 将启动的命令, 加入/etc/rc.local
即可!
2、定时任务
定时任务(cron):依据时间计划执行进程的管理方式, 就是定时任务
1、设置时间计划.
2、执行哪个操作
2.1 定时基本指令
> crontab –e
// 触发一个vi编辑器
> vim /etc/crontab
// 时间计划的格式,编写定时任务指令
实例 - 定时任务
# 每天夜里3:30, 备份数据库
30 3 * * * mysqldump …
# 每个星期9:00开始, 发送上周总结
0 9 * * 1 sendmail
# 每个工作日的下午6点, 发送日报
0 18 * * 1-5 sendMail
# 每隔2个小时, 提醒休息
* */2 * * 1-5 alert
# 每天初始化缓存(用于记录当天的访问次数)
0 0 */1 * * php(持久化上一天数据, 初始化今天数据)
0 0 * * 1 php(持久化上一周数据, 初始化本周数据)
0 0 1 * * php(持久化上一月数据, 初始化本月数据)
编写完保存退出就行,为什么就可以执行定时任务?
因为有一个crond
进程
crond
自动开启的定时任务处理进程,每隔1分钟, 查看当前的定时任务, 如果时间满足, 则去执行
/var/spool/cron/
// 定时任务记录位置
总结:
进程执行的方案
1, shell直接调用
2, 开机启动
3, 定时任务触发