A. linux下如何监听进程
一、supervise
Supervise是daemontools的一个工具,可以用来监控管理unix下的应用程序运行情况,在应用程序出现异常时,supervise可以重新启动指定程序。
使用:
mkdir test
cd test
vim run 写入希望执行的操作
supervise test (注意这里是的参数是run文件上层的文件夹,改变run的为可执行 chmod +x run)
二、monit
monit是一个小型的开放源码工具来管理和监控Unix系统。Monit可以自动维护进程,及时避免进程异常退出等产生的问题。
系统: monit可以监控问题的发生,包括进程状态、系统cpu负载、内存占用情况等,例如当apache服务的cpu负载以及内存闸弄情况过高时候,它会重启apache服务。
进程: monit可以监控守护进程,包括系统进程。例如当某个进行down掉,它会自动恢复重启该进程。
文件系统:Monit可以监控本地文件、目录、文件系统的变化,包括时间戳、校验值、大小的变化。例如,可以监控文件sha1以及md5的值,来监控文件是否发生变化。
网络:monit可以监控网络连接,支持TCP、UDP、Unix domain sockets以及HTTP、SMTP等。
定时脚本:monit可以用来定时测试程序和脚本,获取程序输出结果,进而判断是否成功或其他情况。
安装:
sudo apt-get install monit
编辑配置:
sudo vim /etc/monit/monitrc
启动、停止、重启:
sudo /etc/init.d/monit start
sudo /etc/init.d/monit stop
sudo /etc/init.d/monit restart
设置页面监控状态:
set httpd port 2812 and
allow 0.0.0.0/0.0.0.0
allow localhost
增加监控:
需要注意的是,这里需要添加start和stop,缺一个都是不行的
1.根据程序名称来监控
check process test with MATCHING test.py
start program = "/home/yxd/test.py"
stop program = "xxxxx"
2.根据pid监控
check process apache with pidfile /var/run/httpd.pid
start program = "/etc/init.d/rcWebServer.sh start https"
stop program = "/etc/init.d/rcWebServer.sh stop https"
if changed pid then aler
参考:用monit监控系统关键进程
supervisord
Supervisor是一个C/S系统,它可以在类unix操作系统让用户来监视和控制后台服务进程的数量。它是由python编写的,常用于进程异常退出的重启保护。
安装:
pip install supervisor
查看配置文件:
echo_supervisord_conf
从该命令的结果中,可以看到各个模块的配置信息。
创建配置文件:
echo_supervisord_conf > /etc/supervisord.conf
配置应用:
[program:test]
command=python /root/test_supervisor.py
process_name=%(program_name)s
stdout_logfile=/root/test.log
stderr_logfile=/root/test.log
保存,启动:
/usr/bin/supervisord -c /etc/supervisord.conf
B. 如何在linux下关闭一个正在监听的端口
1.使用netstat -anput|grep 端口号
2、ps -ef|grep 根据过滤的程序名
找到该进程编号使用kill命令结束进程
3、kill -9 5918
C. linux下如何用命令来配置oracle11g的监听
这个不是命令配置的,是改文件
如果是服务端:
$ORACLE_HOME/network/ADMIN目录,修改LISTENER.ORA
到$ORACLE_HOME/bin下,通过lnsrctl start启动监听 lnsrctl stop | lnsrctl status 分别是停止监听和查看监听状态
如果是客户端:
$ORACLE_HOME/network/ADMIN目录,修改tnsnames.ora
==========================================================
配置LISTENER.ORA的demo:
LISTENER =
(ADDRESS_LIST=
(ADDRESS=(PROTOCOL=tcp)(HOST=localhost)(PORT=1521))
(ADDRESS=(PROTOCOL=ipc)(KEY=PNPKEY)))
SID_LIST_LISTENER=
(SID_LIST=
(SID_DESC=
#BEQUEATH CONFIG
(GLOBAL_DBNAME=salesdb.mycompany)
(SID_NAME=sid1)
(ORACLE_HOME=/private/app/oracle/proct/8.0.3)
#PRESPAWN CONFIG
(PRESPAWN_MAX=20)
(PRESPAWN_LIST=
(PRESPAWN_DESC=(PROTOCOL=tcp)(POOL_SIZE=2)(TIMEOUT=1))
)
)
)
配置tnsnames.ora的demo:
ora_xxx =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = xx.xx.xx.xx)(PORT = 1521))
)
(CONNECT_DATA =
(SERVICE_NAME = ora11g) <-----这个地方填SID_NAME也行
)
)
D. 怎样停止kalilinux网卡的监听模式
airmon-ng start wlan0 打开监听
arimon-ng stop wlan0 关闭监听
E. Linux中怎么删除MQ侦听器
MQ 6.0
for linux安装与卸载
一、安装步骤:
Mq 的安装流程
安装前准备:将32位的mq安装程序和补丁文件上传到服务器
软件: C8472ML.WebSphere MQ for Linux (x86-32)
V6.0.tar.gz ----- mq的安装程序
6.0.2-WS-MQ-LinuxIA32-FP0003.ta ---mq的补丁文件
安装过程:
1、安装mq程序
解压 C8472ML.WebSphere MQ for Linux
(x86-32) V6.0.tar.gz 命令如下:
tar –zxvf
C8472ML.WebSphere MQ for Linux (x86-32) V6.0.tar.gz
然后执行下面命令
./mqlicense.sh -text_only 阅读全文后,
选择1接受授权,接下来按照顺序执行
rpm
-ivh MQSeriesRuntime-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesSDK-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesServer-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesClient-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesSamples-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesJava-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesMan-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesMsg_es-6.0.0-0.i386.rpm
rpm
-ivh MQSeriesMsg_Zh_CN-6.0.0-0.i386.rpm
2、安装完成后还要安装补丁程序:
解压
6.0.2-WS-MQ-LinuxIA32-FP0003.tar,命令如下:
tar -xvf
6.0.2-WS-MQ-LinuxIA32-FP0003.tar 完成后依序执行
rpm
-ivh MQSeriesRuntime-U811634-6.0.2-3.i386.rpm
rpm
-ivh MQSeriesSDK-U811634-6.0.2-3.i386.rpm
rpm
-ivh MQSeriesServer-U811634-6.0.2-3.i386.rpm
rpm
-ivh MQSeriesClient-U811634-6.0.2-3.i386.rpm
rpm
-ivh MQSeriesSamples-U811634-6.0.2-3.i386.rpm
rpm
-ivh MQSeriesJava-U811634-6.0.2-3.i386.rpm
3、修改
/etc/group 文件:
vi group 将mqm:!:1000:mqm改为mqm:!:1000:mqm,root
二、安装完毕以后,验证安装是否成功:
按顺序执行以下步骤:
1. 用mqm帐号登录系统
2. 创建测试用队列管理器和队列
crtmqm -q
venus.queue.manager --创建缺省队列
strmqm
--后面不跟队列管理器的名称则启动缺省队列管理器
runmqsc
--后面不跟队列管理器的名称则进入缺省队列管理器的控制台
define qlocal (orange.queue)
end
3.
用测试程序向队列orange.queue发送消息
切换到/opt/mqm/samp/bin目录下
./amqsput
ORANGE.QUEUE --后面不跟队列管理器的名称则表示针对缺省队列管理器中的队列操作
屏幕输出“Sample AMQSPUT0
start target queue is ORANGE.QUEUE”,手工输入测试消息:this is a test,
//输入完毕,连续按两次回车键, 消息输入完毕。屏幕输出“Sample AMQSPUT0 end”表示成功发送消息。
4. 从队列中读取消息
切换到/opt/mqm/samp/bin目录下
./amqsget
ORANGE.QUEUE --后面不跟队列管理器的名称则表示针对缺省队列管理器中的队列操作
屏幕输出“Sample AMQSGET0
start message ”,停顿数秒屏幕继续输出“no more messages
Sample AMQSGET0
end”,读取消息成功。
三、卸载
1. 用root帐号登录系统
2.
停止所有队列管理器
查看正在运行的队列管理器
dspmq
停止所有跟队列管理器相关的监听程序,注意:QueueManagerName是队列队列管理器名称,具体名称用命令dspmq查询
endmqlsr
-m QueueManagerName
停止所有正在运行的队列管理器
endmqm
QueueManagerName
确认所有跟MQ有关的进程都已经停止
ps -ef | grep mq
3.
删除安装包
查看安装了那些相关的包
rpm -q -a | grep
MQSeries
一次性删除所有安装的包,以下命令只是一个示例,命令后面的包名称是命令“rpm -q -a | grep MQSeries”
--查询所得的所有包名称,包名之间用空格分隔,
rpm -ev MQSeriesRuntime-U811634-6.0.2-3
MQSeriesSDK-6.0.0-0 MQSeriesJava-U811634-6.0.2-3 MQSeriesMan-6.0.0-0
MQSeriesServer-U811634-6.0.2-3 MQSeriesClient-6.0.0-0
MQSeriesClient-U811634-6.0.2-3 MQSeriesMsg_Zh_CN-6.0.0-0 MQSeriesSamples-6.0.0-0
MQSeriesRuntime-6.0.0-0 MQSeriesSamples-U811634-6.0.2-3 MQSeriesJava-6.0.0-0
MQSeriesSDK-U811634-6.0.2-3 MQSeriesServer-6.0.0-0
MQSeriesMsg_es-6.0.0-0
F. linux有没有监听端口关闭的命令
最常用的方法: 1,netstat -an 2,lsof -i 以上两个命令通过查询网络堆栈列举正在监听网络的端口。 eg:检查某一端口的监听信息 netstat -anp | grep 端口号 lsof -i | grep 端口号
G. linux操作系统下oracle数据库如何配置监听
1. 修改监听器配置文件
Linux下Oracle监听器配置文件在:$ ORACLE_HOME/network/admin/listerer.ora, 如:
/bank/oracle/oracle10g/proct/10.2.0/network/admin/listener.ora
修改并配置要监听SID的相关信息,如:
#listener.ora Network Configuration File: /bank/oracle/oracle10g/proct/10.2.0/network/admin/listener.ora
# Generated by Oracle configuration tools.
SID_LIST_LISTENER =
(SID_LIST =
(SID_DESC =
(SID_NAME = PLSExtProc)
(ORACLE_HOME = /bank/oracle/oracle10g/proct/10.2.0)
(PROGRAM = extproc)
)
(SID_DESC =
(GLOBAL DBNAME = bkserver)
(SID_NAME = bkserver)
)
)
LISTENER =
(DESCRIPTION_LIST =
(DESCRIPTION =
(ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.7.13.242)(PORT = 1521))
)
)
2. 启动监听器
(1). 切换至oracle安装用户(一般为oracle)
su - oracle
(2). 启动监听器
lsnrctl start
另:停止监听器
lsnrctl stop
3. 测试监听器是否运行正常
在客户端修改tnsnames.ora配置文件就访问Oracle数据库,如:
BKSERVER =
(DESCRIPTION =
(ADDRESS_LIST =
(ADDRESS = (PROTOCOL = TCP)(HOST = 10.7.13.242)(PORT = 1521))
)
(CONNECT_DATA =
(SERVER = DEDICATED)
(SERVICE_NAME = BKSERVER)
)
)
通过命令tnsping测试是否能访问到监听器,如:
M:\>tnsping bkserver
TNS Ping Utility for 32-bit Windows: Version 10.2.0.1.0 - Proction on 12-8月 -
2010 17:11:04
Copyright (c) 1997, 2005, Oracle. All rights reserved.
已使用的参数文件:
D:\oracle\proct\10.2.0\client_1\network\admin\sqlnet.ora
已使用 TNSNAMES 适配器来解析别名
Attempting to contact (DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)
(HOST = 10.7.13.242)(PORT = 1521))) (CONNECT_DATA = (SERVER = DEDICATED) (SERVIC
E_NAME = BKSERVER)))
OK (20 毫秒)
注意: 监听器是否能被tnsping通跟数据库的开启/关闭无关,所以就算可以tnsping通监听器但未必能连接到数据库,这时请检查listener.ora文件配置信息是否正确,还有数据库是否已经被开启。