
Supervisor是基于Python开发的进程管理程序,能将一个命令行进程转为后台daemon,可以替换nohup、&、screen等启动方案。还可以实现监控进程状态,当进程异常退出时能自动重启。它通过fork/exec的方式把这些被管理的进程当作supervisor的子进程来启动,这样只须在supervisor的配置文件中,填写目标进程的执行命令配置即可。也实现当子进程挂掉的时候,父进程可以准确获取子进程挂掉的信息的,可以选择是否自己启动和报警。
supervisor还可以为 supervisord 或者每个子进程,设置一个非root的user,这个user就可以管理对应的进程。
1easy_install 安装(使用默认python时,没有pip,可以用这个方法):
2pip 安装:
3Debian / Ubuntu可以直接通过apt安装:
4Centos / Redhat安装需要安装epel源:
默认情况下会自动生成如下文件和目录:
默认配置文件: /etc/supervisordconf
进程管理配置目录: /etc/supervisordd/
没有生成上述信息的情况下,可自行创建。
可通过如下命令获取默认配置信息:
生成配置文件supervisordconf:
以下是部分配置文件的信息:
默认为 /etc/supervisordd 目录,可通过上述 include 中 files 参数定义,如:
可通过以下命令启动服务:
当supervisord启动的时候根据配置信息生成 sock 、 pid 、 log 文件,并加载自定义配置信息,执行 command 指定的命令,若 include 模块开启,会自动检索 files 设定的目录的 ini 文件,根据用户自定义配置文件执行相关命令。
常用命令:
也可通过 supervisorctl 进入 supervisord 的命令行客户端工具:
进入 supervisorctl :
使用 help 可以罗列出所有命令:
如关闭、开启指定的子进程:
此外还有:
开启web界面,需要在 supervisor 的配置文件里添加 inet_>
是看那里有没有一些异常的进程,
比如这个了explorerexe,这是系统进程!一些病毒或木马就可能起个名为expl0rerexe,这时任务管理器里就多了个这个进程,它让你误认为它是系统进程,其实它两是判别的!这是病毒或木马的一种隐藏方式,这也就是异常的地方!
再比如,explorerexe必须在administrator(也不一定是这个,就是你当时登陆的用户名)用户名下,如果你发现explorerexe在system或local
service的用户名下就异常了!
好了,就说这么两点吧,其它的都大同小异了!
csrssexe:这是子系统服务器进程,负责控制windows创建或删除线程以及16位的虚拟dos环境。
system
idle
process:这个进程是作为单线程运行在每个处理器上,并在系统不处理其它线程的时候分派处理器的时间。
smssexe:这是一个会话管理子系统,负责启动用户会话。
servicesexe:系统服务的管理工具。
lsassexe:本地的安全授权服务。
explorerexe:资源管理器。
spoolsvexe:管理缓冲区中的打印和传真作业。
svchostexe:这个进程要着重说明一下,有不少朋友都有这种错觉:若是“任务管理器”中看到多个svchostexe在运行,就觉得是有病毒了。其实并不一定,系统启动的时候,svchostexe将检查注册表中的位置来创建需要加载的服务列表,如果多个svchostexe同时运行,则表明当前有多组服务处于活动状态;多个dll文件正在调用它
但以上的表示不包括你的应该软件的进程,如qqexe(qq),thunder5exe(迅雷5),maxexe(傲游)等!
说实话,这不是一句半句话就能说清的,而是需要的是经验,简单告诉你,刚做好系统时(不要ghost的),查看一下进程,记下来,重启机子,再看,然后安装各种驱动,重复以上动作。
正常运行机子时,还要在听到读盘声、系统反应迟钝等情况下查看进程并与以前相对照。没事时,结束几个进程,观察机器的反应。
此外,还要多观察几台机子,纵向比较。
时间长了,你也就有经验了。
想要获得windows下面进程的详细信息,仅靠一个任务管理器是不行的。Doc提供了一些命令可以做到这个问题。在开始运行里面输入: 就可以查看到进程的路径,这个时候,应用程序可以做一些 *** 作,比如算程序的MD5值等。然后可以根据tasklist命令查看他的详细信息。 假如想Kill进程,那么就采用ntsd -c q -p PID命令 ,此命令号称是无敌的,只有System、SMSSEXE和CSRSSEXE不能杀。前两个是纯内核态的,最后那个是Win32子系统,ntsd本身需要它。 ntsd从2000开始就是系统自带的用户态调试工具。被调试器附着(attach)的进程会随调试器一起退出,所以可以用来在命令行下终止进程。使用ntsd自动就获得了debug权限,从而能杀掉大部分的进程。用法:开个cmdexe窗口,输入: ntsd -c q -p PID 把最后那个PID,改成你要终止的进程的ID。如果你不知道进程的ID,任务管理器-》进程选项卡-》查看-》选择列-》勾上"PID(进程标识符)",然后就能看见了。
自己理解
以上就是关于【工具】supervisor进程管理全部的内容,包括:【工具】supervisor进程管理、如何知道进程表中的异常进程,主要指病毒、windows服务程序全局异常怎么捕获等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)